Example 1 – external file with invoiced lines
| project | description | customerno | from date | valid until | invoicing frequency | row on invoice | desc | sum |
| 1001 | Service agreement hoist A | 20010 | 2026-01-01 | 2026-12-31 | 12 | 1 | Annual fee | 12000 |
| 1001 | Service agreement hoist A | 20010 | 2026-01-01 | 2026-12-31 | 12 | 2 | On-call supplement | 2500 |
This becomes:
- an agreement
- two rows in Invoiced
Example 2 – mixed native import* with row type
| serialnumber | agreementname | customerid | startdate | enddate | rowtype | linenumber | artno | desc | amount | grossprice |
| 5001 | Full service agreement | 3001 | 2026-01-01 | 2026-12-31 | invoiced | 1 | AGREEMENT | Annual invoicing | 1 | 9000 |
| 5001 | Full service agreement | 3001 | 2026-01-01 | 2026-12-31 | included | 2 | FILTER | Filter replacement included | 2 | 0 |
This becomes:
- an agreement
- one row in Invoiced
- one row in Included
Example 3 – file without agreement number
| agreementname | customerid | startdate | enddate | rowtype | desc | grossprice |
| Pump agreement A | 3001 | 2026-01-01 | 2026-12-31 | invoiced | Service fee | 4500 |
| Pump agreement A | 3001 | 2026-01-01 | 2026-12-31 | included | 1 supervision included | 0 |
This becomes:
- a new agreement
- serial number is created automatically
- the lines are grouped together into the same agreement
FAQ
Can I import both included and invoiced lines in the same file?
Yes. Use the row type column, such as rowtype, target, or row type, and specify included or invoiced.
What happens if the row type is missing?
The line is imported as Invoiced.
What happens if the contract number is missing?
The import still tries to group the lines into the correct agreement within the file and then creates a new serial number.
What happens if I run the same file again?
- If the agreement number exists, or if OrderNo + customer number can be matched, existing agreements are updated.
- If the file lacks stable identification, the same agreement can be created again as a new one.
Can I use my own column headings?
Yes, but only headers that match known fields are interpreted as standard fields. Other columns are interpreted as custom fields.
What happens if I leave optional fields blank?
Empty optional fields do not normally prevent the import.