Decentralized integration

A decentralized integration setup is recommended for B2B and B2C-model marketplaces, where sellers typically ship large volumes of parcels on a regular basis. Via this setup, each individual merchant will have their own Sendcloud account. This allows sellers to have full control over their own shipping processes and the ability to connect carrier contracts to their account. The merchant can process their imported orders into labels using the Sendcloud UI.

For the marketplace, this setup means that you don’t have to consider building shipping processes and label purchasing into your platform. Merchants who ship on Sendcloud rates, and have questions about shipments, rates or invoicing, will be handled by Sendcloud. This makes a decentralized integration flow an ideal solution if you’re looking to reduce your customer support and development costs.

Key benefits:

  • Scalable solution that allows users to fully optimize their shipping processes, so your merchants won’t outgrow your marketplace as their order volume increases
  • Allows merchants with a direct carrier contract to ship on their pre-negotiated rates
  • Merchants can market their brand through customizable tracking notifications, and the Return portal
  • Sendcloud will support merchants with questions related to shipping, integrations and invoices
  • Low-cost, low effort integration
  • You don’t have to worry about billing or building shipping label purchasing into your UI, because Sendcloud will invoice merchants directly for any labels they create

How does it work?

  1. A decentralized setup means that every merchant on your platform will need to have their own Sendcloud account.
  2. When an order is placed in the marketplace, it will be imported into Sendcloud via the merchant’s API credentials.
  3. The merchant will log into their account and process the order into a shipping label via the Sendcloud UI. Once the order is processed in Sendcloud, the merchants downloads and prints the label, and attaches it to the box.

Decentralized integration setup

Each merchant will need to have their own Sendcloud account. They can sign up for an account here. Once an account has been made, they can create an API integration in the Sendcloud panel to create their unique API keys. Once they create their API keys, they can enter these into the relevant fields in your marketplace UI to create the connection. To make this process easier, this can be done by redirecting the merchant to a webpage which will prompt them to allow access for the integration, allowing you to make API calls on their behalf.

Merchants need to complete the following steps to obtain their API keys:

  1. Login to their Sendcloud account
  2. Navigate to Settings > Integrations
  3. Find API Integration in the list and click Connect
  4. Enter a name for the integration, such as the name of the marketplace, and click Save
  5. The form will auto-complete with their API credentials. The API Public and Private key will be used to authenticate the connection between the marketplace and Sendcloud by entering them into the relevant fields in your marketplace settings menu.
  6. To enable a webhook feedback loop, enter the webhook URL in the designated field and check the box “Webhook feedback required”.
  7. (Optional) Check the box to enable service point delivery, and enable some carriers you want to utilize for this delivery option.
Your API credentials are private and should not be shared with anyone.

How to create shipping labels

To create shipping labels via a decentralized integration model, you need to make an API call to the Create a parcel endpoint. When you make the request, you should authenticate by passing the API keys of the merchant. This will ensure that orders you create via the integration will appear in the individual merchant’s Sendcloud panel. If you want to create a parcel to ship to a service point, you’ll need to retrieve a list of service points and include a corresponding service_point_id in your request.

See: Service points for marketplace integrations.
Via a decentralized flow, orders should be imported into the merchant’s Sendcloud panel without creating a shipping label. This is to allow merchant’s the flexibility to make adjustments to orders, such as changing the shipping method, before processing them into labels. You will need to pass the following argument, in addition to the required fields: request_label: false. The order will now correctly appear in the merchant’s incoming overview in Sendcloud.

Below you will find an example API request, plus a list of required fields which must be provided in the request. You can find a full list of fields that can be included in the request in our API reference: Create a parcel

Example request

 1curl -X POST "" \ -H 'Content-Type: application/json' \ 
 2-d '{ 
 3"parcel": { 
 4    "name": "Buyer", 
 5    "address": "Insulindelaan", 
 6    "company_name": "", 
 7    "house_number": 115, 
 8    "city": "Eindhoven", 
 9    "postal_code": "5642CV", 
10    "country": "NL", 
11    "telephone": "+31611223344", 
12    "email": "", 
13    "order_number": "1234567890", 
14    "weight": "6", 
15    "request_label": false, 
16    "shipment": { 
17        "id": 1
18    },
19    "parcel_items": [], 
20    "from_name": "merchant", 
21    "from_company_name": "", 
22    "from_address_1": "merchantslaan", 
23    "from_address_2": "", 
24    "from_house_number": "1", 
25    "from_city": "Utrecht", 
26    "from_postal_code": "4444AA", 
27    "from_country": "NL", 
28    "from_telephone": "+31644332211", 
29    "from_email": "" 

Example response

Note that the response does not contain either tracking information or a URL to access the shipping label. This is because the order must still be processed directly via the Sendcloud panel before it will be announced with the carrier.

Documentation about how order processing works through the Sendcloud panel can be found on our Help center.
 2    "parcel": { 
 3        "id": 79417726, 
 4        "address": "Insulindelaan 115", 
 5        "address_2": "", 
 6        "address_divided": { 
 7            "street": "Insulindelaan", 
 8            "house_number": "115" 
 9        }, 
10        "city": "Eindhoven", 
11        "company_name": "", 
12        "country": { 
13            "iso_2": "NL", 
14            "iso_3": "NLD", 
15            "name": "Netherlands" 
16        }, 
17        "data": {}, 
18        "date_created": "12-01-2021 09:28:00", 
19        "date_announced": null, 
20        "date_updated": "12-01-2021 09:28:00", 
21        "email": "", 
22        "name": "Buyer", 
23        "postal_code": "5642CV", 
24        "reference": "0", 
25        "shipment": {
26            "id": 1,
27            "name": "PostNL Standard 0-23kg"
28        },
29        "status": { 
30            "id": 999, 
31            "message": "No label" 
32        }, 
33        "to_service_point": null, 
34        "telephone": "+31611223344", 
35        "tracking_number": "", 
36        "weight": "6.000", 
37        "label": {}, 
38        "customs_declaration": {}, 
39        "order_number": "1234567890", 
40        "insured_value": 0, 
41        "total_insured_value": 0, 
42        "to_state": null, 
43        "customs_invoice_nr": "", 
44        "customs_shipment_type": null, 
45        "parcel_items": [], 
46        "documents": [], 
47        "type": null, 
48        "shipment_uuid": "ace62ff7-314f-45a6-8af7-291e33043f08", 
49        "shipping_method": 1, 
50        "external_order_id": "1234567890", 
51        "external_shipment_id": "1234567890", 
52        "external_reference": null, 
53        "is_return": false,
54        "is_return": false, 
55        "note": "", 
56        "to_post_number": "", 
57        "total_order_value": null, 
58        "total_order_value_currency": null, 
59        "quantity": 1, 
60        "colli_uuid": "a8117eb3-8818-426d-b67e-573adc604547", 
61        "collo_nr": 0, 
62        "collo_count": 1, 
63        "awb_tracking_number": null, 
64        "box_number": null, 
65        "carrier": { 
66            "code": "postnl" 
67        }
68    }
The parcel will appear in the merchant’s Sendcloud account, ready for processing. Full guides designed to help users with processing orders and printing labels via the Sendcloud panel can be found on our Help Center.

Additional functionalities

Depending on their chosen subscription plan, your merchants will have access to our core features, directly from their Sendcloud panel.

1. Connect carrier contracts

Sellers with high order volumes will often have their own contracts with their preferred carriers to ensure they get the best possible rates on their shipping labels. An integration with Sendcloud means you don’t have to worry about your biggest customers outgrowing your marketplace—they can connect their contracts directly to their Sendcloud account, and they’ll be invoiced directly by their carrier for any labels they create.

2. Tracking

Merchants can upload their brand assets in Sendcloud and use them to personalize tracking notifications and a custom tracking page to replace the website of the shipping carrier. Tracking notifications are an unmissable banding opportunity for sellers looking to grow brand awareness and encourage return sales.

3. Return portal

Sellers can take advantage of a customizable, Sendcloud-hosted return portal, which allows both the merchant, and their customers, to validate returns and download return shipping labels. The return portal also allows merchants to charge for returns, so savvy online retailers won’t be out of pocket when customers request returns.

4. Multi-carrier shipping options

Sendcloud connects our users to 80+ domestic and international carriers, resulting in a huge and diverse portfolio of shipping methods which sellers can, in turn, offer to their customers. By integration with Sendcloud via this setup, you won’t have to consider which rates and methods to offer to your sellers, as they’ll have the flexibility to define their own customer journeys.

5. International shipping options and customs documents

Sendcloud will automatically generate customs documents alongside the label when your merchants ship an order to a destination outside the EU. The merchant needs to provide some additional information in their account settings, and include additional parcel item information.

6. Automated order processing with Shipping Rules

Shipping rules help users to customize their workflow and save time, money and energy by automating every-day decisions about how to process orders.

Go to top