Genereral notes about the format
- Encoding: The CSV-file is assumed to be encoded as ISO-8859-1.
- Columns
- The order of the columns is not important.
- The header-line (with the column names) is essential. Each column MUST have our documented names (i.e. ORDER_ID or PRODUCT).Â
- We now give an error if there are any unknown column names in the file. The file should therefore not have any other column names than those documented here.Â
- Field separator is semi colon (;).
- The columns can be quoted, if so, use ("").
PRODUCT;CUSTOMER_NAME;ADDRESS;ZIP;CITY Roser;Ola Normann;Storgata 13B;1234;OSLO -or- "Roser";"Ola Normann";"Storgata 13B";"1234";"OSLO"
Format for delivery-file
Then uploading the file, choose the customer system all deliveries are for.
Name | Mandatory | Standard (if empty) | Description | Max length | Type | Example |
---|---|---|---|---|---|---|
ORDER_ID | External order ID | 30 | String | A345 | ||
ORDER_LINE_ID | External order line ID | 30 | String | 891837 | ||
TIMEWINDOW_START | Start time of route | Criteria for when the customer can receive the package (start time) | String/text "HH:MM" or "HHMM" | 1700 | ||
TIMEWINDOW_STOP | End time of route | Criteria for when the customer can receive the package (end time) | String/text "HH:MM" or "HHMM" | 1900 | ||
PRODUCT | Product name/number (must be recognised by driver) | 100 | String/text | Matkasse liten | ||
PRODUCT_COUNT | 1 | Product quantity | Integer | 1 | ||
CUSTOMER_NAME | Customer name | 100 | String/text | Ola Hansen | ||
CUSTOMER_CO | Optional Care Of (if the carrier should look for other names when delivering) | 50 | String/text | Fam. Olsen | ||
CUSTOMER_DIRECTIVE | Notes about how the delivery should take place. Can be a note from the customer about where to deliver the package or what to do if they are not home. To preserv linebreaks, use "\n" so the driver sees the message the same way it was written. Sanitize Example: Note: For this field to be helpful, the drivers must understand the customer's language. | 2000 | String/text | "Hvis ikke vi er hjemme, så ring på hos <nabo-navn> på samme adresse, og hun vil slippe dere inn. \nSett kassen i boden i 4.etg. Takk." | ||
CUSTOMER_PHONE_1 | Customer's primary phone (with or without country code), so the driver easily can contact the customer. | 12 | String/text | 004792929393 | ||
CUSTOMER_PHONE_2 | Customer's secondary phone (with or without country code), so the driver easily can contact the customer. | 12 | String/text | 92929393 | ||
CUSTOMER_EMAIL | Email address for the customer, so direct contact is possible | String/text | ane@epost.no | |||
ADDRESS | Street address | 100 | String/text | Møllergata 3 A | ||
ZIP | Zip (can be integer or string) | String/text or Integer | 0366 | |||
CITY | City | 30 | String/text | OSLO | ||
LATITUDE | Optional - if you want to use your own coordinates, else we will perform geocoding. | Double | 59.915165 or 59,915165 | |||
LONGITUDE | Optional - if you want to use your own coordinates, else we will perform geocoding. | Double | 10.743319 or 10,743319 | |||
ROUTE_NAME | Optional - If you want full control of how the routes are made, you can skip the optimization and use your own routes. You can still optimize the order within the routes afterwards. Manual or Automatic NOTE: The planner will always get the option between creating these routes or to ignore them and start a fresh optimisation. (and can also easy start over with the imported customer-data). | String/text | Røa or 201 | |||
WEIGHT | COMING SOON Weight of the package (gram). | Integer | 250 | |||
HEIGHT | NOT IMPLEMENTED Volume. Height/width/depth. All dimensions must be given to use (cm). | Integer | 30 | |||
WIDTH | NOT IMPLEMENTED Volume. Height/width/depth. All dimensions must be given to use (cm). | Integer | 40 | |||
DEPTH | NOT IMPLEMENTED Volume. Height/width/depth. All dimensions must be given to use (cm). Â | Integer | 20 |
Template-file and examples