Centralized integration
If you’re looking for an integration that allows you to maintain full control over shipping label creation, this is the workflow we recommend. Via a centralized integration type, you will run a single Sendcloud account which can only be accessed by your marketplace employees. Your account will serve as the central hub for processing all of your merchants’ orders into labels. Merchants won’t need to create their own Sendcloud accounts, and you can tailor the customer experience by deciding on the rates and shipping methods you want to offer them.
Key benefits:
- You have full oversight of all shipping activities
- Sendcloud operates in the background, so merchants won’t have to leave your platform to create their labels
- Ideal setup for C2C marketplaces, or for marketplaces which host sellers who ship low volumes of orders per month, on an ad-hoc basis
- You can enable customizable tracking emails to increase brand exposure
- You decide how and when to charge merchants for their shipping labels
- Quickly onboard new sellers and provide an easy means for them to print labels
- You can offer multiple shipping options, including delivery to service points
How does it work?
- Through a centralized setup, you will provide the option to purchase a shipping label through your marketplace at the point of sale
- Optional: You can provide multiple shipping options for your merchant to choose from, based on the size and form of the packaging or parcel weight
- The marketplace will request a label via an API call using its own Sendcloud account credentials
- The label is returned to the marketplace, to be presented to the merchant
- The merchant downloads the shipping label, prints it and attached it to the box

Centralized integration setup
To begin, sign up for a Sendcloud account here. This is your main account, which you or your marketplace employees will use to make API calls to retrieve shipping labels for your users. Merchants are not required to have their own Sendcloud accounts, and no input is required from them to create the integration.
To create the API integration:
- Login to your Sendcloud account
- Navigate to Settings > Integrations
- Find API Integration in the list and click Connect
- Enter a name for the integration, such as the name of your platform, and click Save
- The form will auto-complete with your API credentials. Your API Public and Private key will be used to authenticate with your connection to Sendcloud. You must include these in the header of all your requests to our APIs.
- To enable a webhook feedback loop, enter the webhook URL in the designated field and check the box “Webhook feedback required”.
- (Optional) Check the box to enable service point delivery, and enable some carriers you want to utilize for this delivery option.
How to create shipping labels
Via a centralized integration type, you need to provide your merchants with a way to request a shipping label for a completed order. This is done by making an API call to the Create a parcel endpoint. You’ll need to include information about your merchant’s sender address, and the end-customer’s address information, in your API call. 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.
request_label: true
. When this field is set as ‘true’, a URL containing the shipping label will be returned along with the parcel information in the response.
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
Required fields
Argument | Value | Required | ||
---|---|---|---|---|
request_label | “true” | Yes | ||
shipment | The shipment object should specify the ‘id’ and ‘name’ of the chosen shipping method. To find a shipping method ID, see our documentation: Retrieve list of all shipping methods | Yes | ||
from_name | Name of the merchant/sender | Yes | ||
from_company_name | Company name of the merchant/sender | No | ||
from_address_1 | Address 1 of the merchant to which the package should be returned | Yes | ||
from_address_2 | Address 2 of the merchant to which the package should be returned | Yes | ||
from_house_number | House number of the merchant to which the package should be returned | Yes | ||
from_city | City of the merchant to which the package should be returned | Yes | ||
from_postal_code | Postal code of the merchant to which the package should be returned | Yes | ||
from_country | Country of the merchant to which the package should be returned | Yes | ||
from_telephone | Telephone number of the merchant to which the package should be returned | No |
Example request
1curl -X POST "https://panel.sendcloud.sc/api/v2/parcels" \ -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": true,
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": ""
30}
31}' --user "YOUR_API_KEY:YOUR_API_SECRET"
Example response
The response will contain a URL which links to the shipping label. You’ll need to provide your API keys to access the label. Shipping labels can be downloaded in various sizes and formats, including PDF format and sizes suitable for a standard or label printer. This is explained in more detail in our documentation: Request a PDF label.
1{
2 "parcel": {
3 "id": 3,
4 "name": "John Doe",
5 "company_name": "Sendcloud",
6 "contract": 1,
7 "address": "Insulindelaan 115",
8 "address_divided": {
9 "street": "Insulindelaan",
10 "house_number": "115"
11 },
12 "city": "Eindhoven",
13 "postal_code": "5642CV",
14 "telephone": "0612345678",
15 "email": "",
16 "date_created": "01-01-2018 21:45:30",
17 "date_updated": "01-01-2018 21:47:12",
18 "date_announced": "01-01-2018 21:47:13",
19 "tracking_number": "S0M3TR4Ck1NgNumB3r",
20 "weight": "2.000",
21 "label": {
22 "normal_printer": [
23 "https://panel.sendcloud.sc/api/v2/label/normal_printer/3172?start_from=0&hash=bbfd669ee9ebb19408b85b33d181a50040fd9bc4",
24 "https://panel.sendcloud.sc/api/v2/label/normal_printer/3172?start_from=1&hash=bbfd669ee9ebb19408b85b33d181a50040fd9bc4",
25 "https://panel.sendcloud.sc/api/v2/label/normal_printer/3172?start_from=2&hash=bbfd669ee9ebb19408b85b33d181a50040fd9bc4",
26 "https://panel.sendcloud.sc/api/v2/label/normal_printer/3172?start_from=3&hash=bbfd669ee9ebb19408b85b33d181a50040fd9bc4"
27 ],
28 "label_printer": "https://panel.sendcloud.sc/api/v2/label/label_printer/3172?hash=bbfd669ee9ebb19408b85b33d181a50040fd9bc4"
29 },
30 "documents": [
31 {
32 "type": "label",
33 "size": "a6",
34 "link": "https://panel.sendcloud.sc/api/v2/parcels/3/documents/label"
35 }
36 ],
37 "status": {
38 "id": 0,
39 "message": "Ready to send"
40 },
41 "data": {},
42 "country": {
43 "iso_3": "NLD",
44 "iso_2": "NL",
45 "name": "Netherlands"
46 },
47 "shipment": {
48 "id": 1,
49 "name": "PostNL Standard 0-23kg"
50 },
51 "carrier": {
52 "code": "postnl"
53 },
54 "is_return": false,
55 "total_order_value_currency": "GBP",
56 "total_order_value": "11.11",
57 "colli_tracking_number": "",
58 "colli_uuid": "88296eff-595c-4c62-9b6f-075112bf54f6",
59 "collo_nr": 0,
60 "collo_count": 1,
61 "awb_tracking_number": null,
62 "box_number": null,
63 "length": null,
64 "width": null,
65 "height": null,
66 "shipping_method_checkout_name": "PostNL Standard"
67 }
68}
Additional functionalities
Sendcloud APIs allow you access to the internals of our platform, including our host of shipping-oriented features. You can decide which of our features you want to build into your integration. Depending on your unique business model and the extent to which you want to support your merchants’ shipping activities, you could consider implementing some of the following features:
1. Tracking
A centralized integration model provides a unique marketing opportunity by way of branded tracking notifications. Build out your brand in the Sendcloud panel and enable tracking notifications to have customers receive timely delivery updates, customized with your branding. You can also customize a Tracking Page which customers will land on when they click the tracking URL in the notification. Tracking pages let you promote your social media presence via our Instagram widget, and you can insert your latest campaign through promotional banners.
2. Return portal
Provide an easy way for merchants to generate return labels via a customizable Return portal. View our documentation to see how you can build your own version of the Return portal to incorporate return label creation into your workflow.
3. Service point delivery
We make it easy for you to enable service point delivery methods and allow your merchants to ship parcels to a location that’s convenient to the end-buyer. We’ve covered the steps involved, and provided an example of how you can build a service point location picker into your checkout, here.
How do I charge my merchants for shipping labels?
Sendcloud will charge your account for labels you create on behalf of your sellers. This gives you the flexibility to define your own customer journey, and decide how and when you will charge your users for their labels.
Some options to consider for your billing model include:
1. Connect your direct carrier contracts
Connecting your direct carrier contracts helps you to keep your shipping rates as low as possible, so you can transfer the benefits to your users while shipping on your pre-negotiated rates.
2. Offer multiple shipping options to your merchants
A choice of shipping methods gives both your merchants, and their end-customer, the flexibility to choose a delivery method and service level that suits them best. You can retrieve rates directly via the Sendcloud API for all our supported shipping methods, so you can price shop regularly to make sure you’re getting the best possible rates.
3. Simplify shipping decisions with flat-rate or free shipping
If you want to make the lives of your merchants as easy as possible, you can simply offer a flat fee for parcels that fall within specific weight brackets. This is the easiest billing method that also saves you in development costs. Some popular online marketplaces let their merchants select a parcel form, (e.g., letterbox parcel, small box, large box, etc.), and then present a flat fee for the parcel, based on their selection and delivery method (standard or service points delivery). Offering free or discounted labels to your merchants based on how much they ship per month is another great way to improve your customer retention rates.
4. Turn shipping into a profit generator
When you ship through Sendcloud, you’ll receive discounts on shipping label prices based on the amount of parcels you ship. You could decide to gain extra margin on your rates by offering them to merchants with a percentage or flat fee markup. Alternatively, consider offering discounted shipping to customers who have a higher subscription plan as an incentive.
5. Transfer shipping costs directly
And finally, you could simply choose to present shipping costs directly to your merchants based on the price you pay in Sendcloud or via your carrier contract. If you opt for this solution, you can retrieve up-to-date shipping prices for specific shipping methods, and build it into your marketplace UI.