A breakdown of the CSV columns available for use with the Shippit Connect FTP Integration can be found below.

For complete guidelines on what entries are accepted for each of the CSV columns, including the data types and requirements for each value, see our API Documentation for Create Order and review the REQUEST BODY SCHEMA.

api-rbs.png

Quick Links

Sample CSV

Download the sample CSV that suits your business. These include sample entries for reference

Orders with Multiple Parcels

When you are dealing with an order that contains multiple parcels, add each parcel as a separate row in the CSV. In these cases, the primary shipping details should be repeated to ensure all parcels include the correct shipping details.

For an example of how that would look, download the Sample CSV above and review the first 3 rows.

Pro Tips

  • Headers are case-sensitive and do not support whitespace. Ensure you are using the correct header as described in the table in Columns Breakdown
  • Avoid duplicating orders across multiple rows. We have no process to identify duplicates and will process all orders explicitly. This does not include splitting an order over multiple rows due to multiple parcels.
  • Trim the values to remove whitespace before and after the value as this can lead to inconsistencies
  • Do not leave required fields empty in the CSV as this may cause the row/order to not process.
  • Not all carriers support the new customs fields. In these cases, Shippit will use default carrier values.

Recommendations

  • Even if a column contains no values, we recommend keeping the column in the CSV. This helps avoid downstream issues if someone uses the last CSV as the template for their version.
  • Try to avoid using unconventional characters since not all carriers support these.
    eg. Use dash (-) character instead of the en dash (–) or em dash (—)
    This will help avoid issues down the line due to a lack of carrier support for these characters.
  • On-Demand services have very little lead time, so these orders should be uploaded regularly to ensure allocation and booking occur in a reasonable timeframe.

Columns Breakdown

It is important that you manage which headers are included in the CSV as only the headers listed below are considered part of the specification.

Any column that does not match this specification will be dropped during processing and ignored. We do not pass through any of this data. This includes misspelled headers.

In addition, if the required fields for processing the order are missing from that row, this row will also not be processed as you may expect. This would be equivalent to attempting to book an order through the Shippit website and not including the correct address details. The order will not be processed. After updating the CSV with data for all the required fields you can then process it again.

✔️ = Required
❔ = Optional but Recommended
✈️ = Used for International shipping
🟠 = Repeat for multiple parcels in an order
* = Either courier_type or courier_allocation is required but not both

Column Header

Create Order API equivalent

order_id

✔️ 🟠

retailer_reference

retailer_invoice

🟠

retailer_invoice

courier_type

✔️* 🟠

courier_type

courier_allocation

✔️* 🟠

courier_allocation

currency

✔️ 🟠

product_currency

shipping_amount ✔️ ✈️ customer_shipping_fee_paid
cash_on_delivery_amount   cash_on_delivery_amount
collection_point_id   N/A
collection_point_name   N/A
delivery_date   delivery_date
delivery_window   delivery_window
delivery_company 🟠 N/A
delivery_address

✔️ 🟠

delivery_address

delivery_suburb ❔ 🟠

delivery_suburb

delivery_district_city 🟠 delivery_district_city
delivery_state ❔ 🟠 delivery_state
delivery_postcode ❔ 🟠

delivery_postcode

delivery_country

✔️ 🟠

delivery_country_code

validate   validate
suppress_communications   suppress_communications
delivery_instructions   delivery_instructions
authority_to_leave 🟠 authority_to_leave
receiver_name

✔️ 🟠

receiver_name

receiver_contact_number

✔️ 🟠

receiver_contact_number

receiver_language_code

✔️ 🟠

receiver_language_code

user_firstname

✔️ 🟠

user_attributes.first_name

user_lastname ✔️ 🟠 user_attributes.last_name
user_email

✔️ 🟠

user_attributes.email

line_item_id   product_attributes.line_item_id
sku   product_attributes.sku
title   product_attributes.title
weight

parcel_attributes.weight

length

parcel_attributes.length

width

parcel_attributes.width

depth

parcel_attributes.depth

qty

 

parcel_attributes.qty

qty_packed

 

parcel_attributes.packed

price   product_attributes.price
location   product_attributes.location
dangerous_goods_code   product_attributes.dangerous_goods_code
dangerous_goods_text   product_attributes.dangerous_goods_text
origin_country_code ✔️ ✈️ 🟠 product_attributes.origin_country_code
tariff_code   product_attributes.tariff_code
customs_duties_amount ✈️ 🟠 duties
customs_export_reason ✈️ 🟠 customs_clearance_attributes.export_reason
customs_incoterm ✈️ 🟠 customs_clearance_attributes.incoterm
customs_tax_id_type ✈️ 🟠 customs_clearance_attributes.tax_id_type
customs_tax_id_country_code ✈️ 🟠 customs_clearance_attributes.tax_id_country_code
customs_tax_id_number ✈️ 🟠 customs_clearance_attributes.tax_id_number
customs_recipient_id ✈️ 🟠 customs_clearance_attributes.recipient_id

customs_documents_require_printing

✈️ 🟠 N/A

 

Commercial Invoice

The values from the customs_* columns are surfaced in the Commercial Invoice

commercial_invoice_example.png

Was this article helpful?
0 out of 0 found this helpful