File configuration
Explains the expected format of file when uploading pickup point information
To provide Shipup with your pickup point information, you need to send a CSV file containing all your stores and their details. You can upload this file either directly from the Shipup back office or via the API. Regardless of the upload method, the same CSV structure, required fields, formatting requirements, and validation rules apply.
Prepare your pickup point file
Your CSV file must contain one row per pickup point. Some fields are mandatory, while others are optional and can be used to provide additional information such as GPS coordinates and opening hours.
We recommend starting from the CSV template available in the In-store collection section of your Shipup settings to ensure that you use the expected columns and format.
Important: Do not rename or remove columns from the template. Your file must be a UTF-8 encoded CSV using commas (
,) as separators.
Mandatory fields
The following fields must be provided for every pickup point:
| Field | Description | Validation |
|---|---|---|
merchant_id | Your unique identifier for the pickup point. This is also the identifier you send as pickup_point_merchant_id on the corresponding tracker. | Required. Must be unique within your pickup point file. |
name | Name of the store or pickup point displayed to the customer. | Required. |
address1 | Main street address of the pickup point. | Required. |
postal_code | Postal or ZIP code of the pickup point. | Required. |
city | City where the pickup point is located. | Required. |
country_code | Country where the pickup point is located. | Required. Must be a valid ISO 3166-1 country code, such as FR, IT or DE. |
phone | Phone number of the pickup point. | Required. Can contain numbers and +. Other special characters are not accepted. |
Optional fields
You can provide additional information to enrich the pickup point details displayed to your customers.
| Field | Description | Validation |
|---|---|---|
merchant_id_2 | Additional identifier for the pickup point, if applicable. | Optional. |
address2 | Additional address information. | Optional. |
state_code | State or region code, when applicable. | Optional. |
gps_lat | Latitude of the pickup point. | Optional. Must be a valid numeric coordinate. |
gps_long | Longitude of the pickup point. | Optional. Must be a valid numeric coordinate. |
[day]_am_opening | Morning opening time. | Optional. Must use the 24-hour HH:MM format. |
[day]_am_closing | Morning closing time. | Optional. Must use the 24-hour HH:MM format. |
[day]_pm_opening | Afternoon opening time. | Optional. Must use the 24-hour HH:MM format. |
[day]_pm_closing | Afternoon closing time. | Optional. Must use the 24-hour HH:MM format. |
The four opening-hour fields are available for each day from monday to sunday.
For example:
monday_am_opening, monday_am_closing, monday_pm_opening, monday_pm_closing
File validation
When your file is uploaded, Shipup validates its structure and content before the pickup point information can be used.
The following checks are performed:
- The uploaded file is a valid CSV file.
- The file is encoded in UTF-8.
- Commas (
,) are used as separators. - The expected columns are present.
- Every mandatory field contains a value.
- Each
merchant_idis unique. country_codecontains a valid ISO 3166-1 country code.phonecontains only numbers and, where applicable,+.- Opening hours follow the
HH:MM24-hour format. - Opening and closing hours form a valid daily schedule.
If one of these validations fails, the file cannot be successfully processed, and you will need to correct it before uploading it again.
Opening hours validation
Opening hours are optional. For each day, Shipup accepts the following configurations:
Store closed
Leave all four fields empty:
am_opening: empty
am_closing: empty
pm_opening: empty
pm_closing: emptyStore open continuously
Provide the opening time in am_opening and the closing time in pm_closing, leaving the two other fields empty.
For example, for a store open from 10:00 to 21:00:
am_opening: 10:00
am_closing: empty
pm_opening: empty
pm_closing: 21:00Store open with a break
Provide all four fields. For example, for a store open from 09:00–12:00 and 14:00–18:00:
am_opening: 09:00
am_closing: 12:00
pm_opening: 14:00
pm_closing: 18:00When all four values are provided, the times must follow this order:
am_opening < am_closing < pm_opening < pm_closing
GPS coordinates validation
gps_lat and gps_long are optional. When provided, they must contain valid numeric GPS coordinates. Alphabetic characters and special characters other than the decimal point are not accepted.
GPS coordinates undergo an additional asynchronous validation after the file is uploaded. As a result, an issue with the coordinates may only be detected after the initial upload.
If the coordinates cannot be validated, the pickup point information can still be available, but the map may not be displayed.
Example CSV file
The following example contains two pickup points:
PP1— Pickup Point A in ParisPP2— Pickup Point B in Paris
Both stores are open 09:00–12:00 and 14:00–18:00 from Monday to Friday, 10:00–21:00 continuously on Saturday, and closed on Sunday.
merchant_id,merchant_id_2,name,address1,address2,city,postal_code,state_code,country_code,gps_lat,gps_long,phone,monday_am_opening,monday_am_closing,monday_pm_opening,monday_pm_closing,tuesday_am_opening,tuesday_am_closing,tuesday_pm_opening,tuesday_pm_closing,wednesday_am_opening,wednesday_am_closing,wednesday_pm_opening,wednesday_pm_closing,thursday_am_opening,thursday_am_closing,thursday_pm_opening,thursday_pm_closing,friday_am_opening,friday_am_closing,friday_pm_opening,friday_pm_closing,saturday_am_opening,saturday_am_closing,saturday_pm_opening,saturday_pm_closing,sunday_am_opening,sunday_am_closing,sunday_pm_opening,sunday_pm_closing
PP1,PP1.1,Pickup Point A,51 rue de Chabrol,,Paris,75010,,FR,47.224281311035156,-1.6251312494277954,+33123456789,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,10:00,,,21:00,,,,
PP2,,Pickup Point B,36 rue du Sentier,,Paris,75002,,FR,47.224281311035156,-1.6251312494277954,+33123456789,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,09:00,12:00,14:00,18:00,10:00,,,21:00,,,,Tip: We recommend downloading and editing the template provided by Shipup rather than creating the CSV structure manually. This helps ensure all expected columns are present and in the correct format.
How updates work
Each upload adds new pickup points or updates existing ones based on their merchant_id. It does not delete pickup points that are missing from the new file.
For example, if Shipup already has pickup points A and B, and your next upload only contains an updated version of A:
- A is updated with the new information.
- B remains unchanged.
You therefore don't need to send your entire list of pickup points with every update. You can send only the pickup points you want to add or update.
Next: Upload your pickup point information
Once your file is ready, you can upload your pickup point information using either the Shipup back office or the API. The same file structure and validation rules apply to both methods.
Choose the method that best fits how frequently your pickup point information changes:
Back office — Recommended if your pickup point information changes infrequently. You can manually upload a new CSV file whenever you need to add or update stores.
API — Recommended if your pickup point information changes regularly or if you manage a large number of stores. It allows you to automate recurring updates without manually uploading a file.
Updated about 13 hours ago
