Connecting custom carrier API
ChannelDock has a lot of pre-built carrier integrations that sellers and fulfillment centers can use. Since we do not have time to built a connection to every carrier platform out there, we have created a set of API's so that you as a carrier can create shipment methods in ChannelDock for a specific seller / fulfillment center. This guide describes the steps you need to take in order to make this happen.
Step 1:
Generate API credentials:
- Seller: https://channeldock.com/portal/public/settings/api_keys
- Fulfillment center: https://channeldock.com/portal/public/centersettings/api_keys
Step 2:
The next step is adding the shipping methods you provide as a carrier in ChannelDock. You can find more info about the endpoint and JSON structure we expect here:
- Seller: Postman docs
- Fulfillment center: Postman docs
Step 3:
Whenever a ChannelDock user tries to create a shipping label with your shipment methods, we will sent you a json object with order data and info about the chosen shipment method. For an example check this file: callback_data.json
{
"order_id": 774,
"remote_order_id": "ORD-2025-4055",
"order_date": "2025-05-13 08:49:28",
"ship_on_date": "2025-05-14",
"remote_carrier_id": "postnl_standard_001",
"shipping_address1": "Keizersgracht 123",
"shipping_address2": "2nd floor",
"shipping_address_supplement": "Entrance via side door",
"shipping_city": "Amsterdam",
"shipping_company": "KiteGear BV",
"shipping_country_code": "NL",
"shipping_email": "[email protected]",
"shipping_first_name": "Emma",
"shipping_house_number": "123",
"shipping_house_number_ext": "B",
"shipping_last_name": "van Dijk",
"shipping_middle_name": null,
"shipping_region": "Noord-Holland",
"shipping_street": "Keizersgracht",
"shipping_zip_code": "1015 CJ",
"shipping_address_accurate": 1,
"shipping_phone_number": "+31 6 12345678",
"billing_address1": "Keizersgracht 123",
"billing_address2": "2nd floor",
"billing_address_supplement": "Finance dept.",
"billing_city": "Amsterdam",
"billing_company": "KiteGear BV",
"billing_country_code": "NL",
"billing_email": "[email protected]",
"billing_first_name": "Emma",
"billing_house_number": "123",
"billing_house_number_ext": "B",
"billing_last_name": "van Dijk",
"billing_middle_name": null,
"billing_region": "Noord-Holland",
"billing_street": "Keizersgracht",
"billing_zip_code": "1015 CJ",
"billing_address_accurate": 1,
"billing_phone_number": "+31 20 1234567",
"total_weight": 8.0,
"total_length": 80,
"total_width": 25,
"total_height": 25,
"total_order_price": 749.95,
"total_order_currency": "EUR",
"order_products": [
{
"order_product_id": 868,
"order_product_price": 699.95,
"order_product_price_currency": "EUR",
"ean": "8719326583655",
"quantity": 1,
"product_title": "North Orbit Kite 2025 - 12m",
"product_weight": "5.00",
"product_length": 80,
"product_width": 25,
"product_height": 15,
"product_hs_code": "95062900",
"remote_order_product_id": "NL-PROD-001"
},
{
"order_product_id": 869,
"order_product_price": 50.00,
"order_product_price_currency": "EUR",
"ean": "8719326583617",
"quantity": 1,
"product_title": "Mystic Kite Pump Pro",
"product_weight": "3.00",
"product_length": 40,
"product_width": 10,
"product_height": 10,
"product_hs_code": "84142080",
"remote_order_product_id": "NL-PROD-002"
}
]
}