Importing Clients
FlowForth supports bulk importing clients from a CSV file. This is useful when migrating from another system or onboarding many clients at once.
Client import is available to Master users only. If you don't see the import option, contact your FlowForth administrator.
CSV File Format
Your CSV file must use a comma as the delimiter and include the following columns in this exact order:
| Column | Required | Description |
|---|---|---|
| ExternalClientId | Yes | A unique identifier for the client in your system |
| ClientName | Yes | The client's company or full name |
| ClientAddress | Yes | Street address |
| City | Yes | City name |
| PostalCode | Yes | Postal or ZIP code |
| Country | Yes | Country name (e.g., Belgium, Netherlands) |
| VAT | No | VAT number (validated per country format) |
| PeppolId | No | PEPPOL network address |
| EmailAddress | No | Contact email address |
| TelephoneNumber | No | Contact phone number |
Example CSV
ExternalClientId,ClientName,ClientAddress,City,PostalCode,Country,VAT,PeppolId,EmailAddress,TelephoneNumber
EXT-001,Acme Services BV,Keizersgracht 123,Amsterdam,1015 CJ,Netherlands,NL123456789B01,,info@acme.nl,+31201234567
EXT-002,Half vier BV,Vlasmarkt 6,Gent,9000,Belgium,BE 0885.990.575,0208:0885990575,gerald@example.be,+3292242457
The first row of your CSV file is treated as a header row and is automatically skipped during import.
How to Import
- Navigate to the Import Clients page.
- Select the organization to import clients into from the dropdown.
- Click Choose File and select your CSV file.
- Click Import Clients to start the process.
Import clients page with file selected
The import may take a few moments depending on the number of rows.
Import Results
After the import completes, you'll see a summary with:
- Total Rows — Number of data rows processed.
- Created — Number of new clients added.
- Updated — Number of existing clients that were updated.
- Errors — Number of rows that failed.
Import results summary
Create vs. Update Behavior
The import uses the ExternalClientId field to determine whether to create a new client or update an existing one:
- If no client with that ExternalClientId exists in the organization, a new client is created.
- If a client with that ExternalClientId already exists, the existing client is updated with the values from the CSV row.
This means you can safely re-import an updated CSV file without creating duplicates.
Handling Errors
If any rows fail to import, the error list will display below the results summary. Common errors include:
- Missing required fields — ExternalClientId and ClientName are required for every row.
- Wrong number of columns — Each row must have exactly 10 fields (use empty values for optional fields).
- Invalid VAT format — VAT numbers that don't match the expected country format are logged as warnings but the row is still processed.
Rows with missing required fields (ExternalClientId or ClientName) will be skipped entirely. Make sure every row has at least these two fields filled in.
CSV Tips
- Commas in values — Wrap fields containing commas in double quotes:
"123 Main St, Suite 4" - Quotes in values — Use double quotes to escape:
"Company ""Nickname"" BV" - Empty optional fields — Leave them blank but keep the commas:
EXT-001,Name,Address,City,1234,Country,,,, - Encoding — Save your file in UTF-8 encoding to ensure special characters are preserved.
See also
- Importing Locations — Bulk import locations from a CSV file after importing clients
- Importing Activities — Bulk import activities to schedule work at imported locations
- Data Import FAQ — Common questions and troubleshooting tips for CSV imports
Was this page helpful?