The easiest way to integrate with the Bpost API

Add the Bpost API to your WMS, ERP, or e-commerce backend through one Sendcloud integration alongside 170+ other carriers. Ship with Belgium's national carrier for domestic and cross-border delivery, without a separate Bpost contract.

Courier API integration graphic for bpost

The easiest way to integrate with the Bpost API

Add the Bpost API to your WMS, ERP, or e-commerce backend through one Sendcloud integration alongside 170+ other carriers. Ship with Belgium's national carrier for domestic and cross-border delivery, without a separate Bpost contract.

Courier API integration graphic for bpost

The easiest way to integrate with the Bpost API

Add the Bpost API to your WMS, ERP, or e-commerce backend through one Sendcloud integration alongside 170+ other carriers. Ship with Belgium's national carrier for domestic and cross-border delivery, without a separate Bpost contract.

Courier API integration graphic for bpost

Free plan available

Works with your shop

Cancel anytime

Why integrate PostNL through the Sendcloud API?

Why integrate PostNL through the Sendcloud API?

Why integrate PostNL through the Sendcloud API?

Why integrate PostNL through the Sendcloud API?

Belgium's national carrier for e-commerce

Ship under Sendcloud's negotiated PostNL rates from day one, or bring your own contract when you're ready.

Parcel machines, @bpack, Saturday delivery

PostNL's evening windows and 4,500+ service points are available via Sendcloud's REST API, with no separate PostNL API credentials required.

Integrate with 170+ carriers at once

Stop maintaining and integrating different carrier and use one API for all.

GDPR Compliance

We comply with the GDPR rules to protect data and privacy in Europe.

API uptime of 99.99%

Reliable shipping software built on AWS and with top market technologies.

ISO 27001 Certified

The world’s most rigorous standards for information security.

Why integrate PostNL through the Sendcloud API?

Belgium's national carrier for e-commerce

Ship under Sendcloud's negotiated PostNL rates from day one, or bring your own contract when you're ready.

Parcel machines, @bpack, Saturday delivery

PostNL's evening windows and 4,500+ service points are available via Sendcloud's REST API, with no separate PostNL API credentials required.

Integrate with 170+ carriers at once

Stop maintaining and integrating different carrier and use one API for all.

GDPR Compliance

We comply with the GDPR rules to protect data and privacy in Europe.

API uptime of 99.99%

Reliable shipping software built on AWS and with top market technologies.

ISO 27001 Certified

The world’s most rigorous standards for information security.

Why integrate PostNL through the Sendcloud API?

Belgium's national carrier for e-commerce

Ship under Sendcloud's negotiated PostNL rates from day one, or bring your own contract when you're ready.

Parcel machines, @bpack, Saturday delivery

PostNL's evening windows and 4,500+ service points are available via Sendcloud's REST API, with no separate PostNL API credentials required.

Integrate with 170+ carriers at once

Stop maintaining and integrating different carrier and use one API for all.

GDPR Compliance

We comply with the GDPR rules to protect data and privacy in Europe.

API uptime of 99.99%

Reliable shipping software built on AWS and with top market technologies.

ISO 27001 Certified

The world’s most rigorous standards for information security.

"Sendcloud allows us to connect to a lot of different carriers seamlessly."

Oscar Ziegler

Founder and CEO

-

Hive

"Sendcloud allows us to connect to a lot of different carriers seamlessly."

Oscar Ziegler

Founder and CEO

-

Hive

"Sendcloud allows us to connect to a lot of different carriers seamlessly."

Oscar Ziegler

Founder and CEO

-

Hive

API integration examples

API Integration

See a basic example of an API integration using Python.

Service Point Picker

See how to integrate the Service Point Picker into a custom application.

API integration examples

API Integration

See a basic example of an API integration using Python.

Service Point Picker

See how to integrate the Service Point Picker into a custom application.

API integration examples

API Integration

See a basic example of an API integration using Python.

Service Point Picker

See how to integrate the Service Point Picker into a custom application.

Instantly connect to 170+ couriers Get started now

Free plan available

Works with your shop

Cancel anytime

More than 2,600 five star reviews

Instantly connect to 170+ couriers Get started now

Free plan available

Works with your shop

Cancel anytime

More than 2,600 five star reviews

Where do you start?

Where do you start?

Where do you start?

1. Set up your account

2. Get your free API key

3. Start sending requests to the PostNL API

1. Set up your account

2. Get your free API key

3. Start sending requests to the PostNL API

1. Set up your account

2. Get your free API key

3. Start sending requests to the PostNL API

Questions & answers

Why integrate the Bpost API through Sendcloud instead of directly?

Direct Bpost integration means setting up the Bpost Shipping Manager, configuring international price zones manually for every destination country, and managing three separate credentials: Account ID, General Service passphrase, and a Tracking Service passphrase issued only on email request to esolutions@bpost.be.

Through Sendcloud, you authenticate once with your Sendcloud API key and use a single REST schema for Bpost alongside every other carrier in your account. Sendcloud absorbs upstream changes from Bpost. A direct Bpost contract is required either way; Sendcloud rates aren't offered for Bpost.

What happens when Bpost updates or breaks their API?

Bpost periodically updates the Shipping Manager API and the international price-zone configuration flow. Direct integrators have to re-test payloads, refresh credentials, and update international shipping countries in the Shipping Manager whenever Bpost adjusts coverage.

When you ship Bpost through the Sendcloud REST API, the abstraction layer absorbs those changes. Sendcloud's engineering monitors Bpost's developer documentation and adjusts the carrier connector internally. Your Sendcloud request schema stays the same regardless of upstream Bpost changes.

Can I use my own Bpost contract?

Yes, and you have to. Bpost requires your own contract; Sendcloud rates aren't offered.

For setup: open the Bpost Shipping Manager and configure international price zones first under Admin > Delivery Settings. Then collect your Account ID (6 digits), General Service passphrase, and Tracking Service passphrase. Request the Tracking Service passphrase by emailing esolutions@bpost.be.

In Sendcloud, go to Shipping > Carriers > Bpost, click Enable, and enter your credentials. A Lite, Growth, or Premium plan is required.

See the Bpost contract activation Help Center article.

Which Bpost products are supported through the API?

Through Sendcloud, you can ship Bpost's domestic and international product line:

  • bpost @home (bpack 24H): next-working-day home and business delivery within Belgium, up to 30 kg

  • bpost @home + Signature: signature required at delivery

  • bpost Saturday Delivery: weekend domestic delivery

  • bpost @bpack 0-10kg and 10-30kg: service-point and locker delivery

  • International methods, with destination countries enabled per contract in the Bpost Shipping Manager

See the Bpost shipping conditions Help Center article.

Which Bpost-specific features does the API expose?

Bpost-specific features exposed through the integration:

  • Parcel-machine and service-point delivery through @bpack

  • Saturday delivery as an add-on for both home and service-point methods

  • Free second delivery attempt on @home if the recipient is unavailable; held at the nearest mailing point for 15 calendar days before return

  • Standard insurance included on @home shipments

  • International price-zone configuration controlled in the Bpost Shipping Manager (Admin > Delivery Settings > Add a price zone)

Note: international shipments support a maximum of 3 different item types per shipment.

How do I track Bpost parcels?

Bpost tracking distinguishes between parcel-machine arrival, mailing-point hold (held for 15 calendar days before return), and standard home delivery. All events flow through Sendcloud's webhook stream with location context in the payload.

All events normalise to Sendcloud's status taxonomy through GET https://panel.sendcloud.sc/api/v2/tracking/{tracking_number}, with the chronological history under statuses and each event mapped to parent_status. Subscribe to the parcel-status-changed webhook for push updates. Reference: Tracking parcels.

How do I create Bpost return labels?

Bpost returns drop off at the mailing-point and service-point network. Failed deliveries are held at the nearest mailing point for 15 calendar days before being returned. Specific return method availability depends on what's enabled on your contract.

All return labels are created through Sendcloud's standalone v3 Returns API (synchronous or asynchronous; async is recommended for higher throughput). No outgoing parcel lookup or JWT tokens are required. Reference: Returns API overview.

How does Sendcloud's multi-carrier API compare to connecting carriers individually?

The Sendcloud REST API gives you access to 170+ carriers, including Bpost, through one credential set, one schema, one webhook stream, and one error model. Connecting carriers individually means handling separate authentication, payload formats, and tracking systems for each, and redoing the work every time a carrier ships breaking changes upstream.

With Sendcloud, you ship Bpost alongside DHL, PostNL, DPD, and GLS, or any other carrier in your account using the same code. Route shipments between carriers based on rules (weight, destination, service level, cost) without writing carrier-specific routing logic. Fall back to alternative carriers automatically if Bpost's upstream system has issues.

Adding a new carrier later means adding it to your Sendcloud account, not building a new integration.

Questions & answers

Why integrate the Bpost API through Sendcloud instead of directly?

Direct Bpost integration means setting up the Bpost Shipping Manager, configuring international price zones manually for every destination country, and managing three separate credentials: Account ID, General Service passphrase, and a Tracking Service passphrase issued only on email request to esolutions@bpost.be.

Through Sendcloud, you authenticate once with your Sendcloud API key and use a single REST schema for Bpost alongside every other carrier in your account. Sendcloud absorbs upstream changes from Bpost. A direct Bpost contract is required either way; Sendcloud rates aren't offered for Bpost.

What happens when Bpost updates or breaks their API?

Bpost periodically updates the Shipping Manager API and the international price-zone configuration flow. Direct integrators have to re-test payloads, refresh credentials, and update international shipping countries in the Shipping Manager whenever Bpost adjusts coverage.

When you ship Bpost through the Sendcloud REST API, the abstraction layer absorbs those changes. Sendcloud's engineering monitors Bpost's developer documentation and adjusts the carrier connector internally. Your Sendcloud request schema stays the same regardless of upstream Bpost changes.

Can I use my own Bpost contract?

Yes, and you have to. Bpost requires your own contract; Sendcloud rates aren't offered.

For setup: open the Bpost Shipping Manager and configure international price zones first under Admin > Delivery Settings. Then collect your Account ID (6 digits), General Service passphrase, and Tracking Service passphrase. Request the Tracking Service passphrase by emailing esolutions@bpost.be.

In Sendcloud, go to Shipping > Carriers > Bpost, click Enable, and enter your credentials. A Lite, Growth, or Premium plan is required.

See the Bpost contract activation Help Center article.

Which Bpost products are supported through the API?

Through Sendcloud, you can ship Bpost's domestic and international product line:

  • bpost @home (bpack 24H): next-working-day home and business delivery within Belgium, up to 30 kg

  • bpost @home + Signature: signature required at delivery

  • bpost Saturday Delivery: weekend domestic delivery

  • bpost @bpack 0-10kg and 10-30kg: service-point and locker delivery

  • International methods, with destination countries enabled per contract in the Bpost Shipping Manager

See the Bpost shipping conditions Help Center article.

Which Bpost-specific features does the API expose?

Bpost-specific features exposed through the integration:

  • Parcel-machine and service-point delivery through @bpack

  • Saturday delivery as an add-on for both home and service-point methods

  • Free second delivery attempt on @home if the recipient is unavailable; held at the nearest mailing point for 15 calendar days before return

  • Standard insurance included on @home shipments

  • International price-zone configuration controlled in the Bpost Shipping Manager (Admin > Delivery Settings > Add a price zone)

Note: international shipments support a maximum of 3 different item types per shipment.

How do I track Bpost parcels?

Bpost tracking distinguishes between parcel-machine arrival, mailing-point hold (held for 15 calendar days before return), and standard home delivery. All events flow through Sendcloud's webhook stream with location context in the payload.

All events normalise to Sendcloud's status taxonomy through GET https://panel.sendcloud.sc/api/v2/tracking/{tracking_number}, with the chronological history under statuses and each event mapped to parent_status. Subscribe to the parcel-status-changed webhook for push updates. Reference: Tracking parcels.

How do I create Bpost return labels?

Bpost returns drop off at the mailing-point and service-point network. Failed deliveries are held at the nearest mailing point for 15 calendar days before being returned. Specific return method availability depends on what's enabled on your contract.

All return labels are created through Sendcloud's standalone v3 Returns API (synchronous or asynchronous; async is recommended for higher throughput). No outgoing parcel lookup or JWT tokens are required. Reference: Returns API overview.

How does Sendcloud's multi-carrier API compare to connecting carriers individually?

The Sendcloud REST API gives you access to 170+ carriers, including Bpost, through one credential set, one schema, one webhook stream, and one error model. Connecting carriers individually means handling separate authentication, payload formats, and tracking systems for each, and redoing the work every time a carrier ships breaking changes upstream.

With Sendcloud, you ship Bpost alongside DHL, PostNL, DPD, and GLS, or any other carrier in your account using the same code. Route shipments between carriers based on rules (weight, destination, service level, cost) without writing carrier-specific routing logic. Fall back to alternative carriers automatically if Bpost's upstream system has issues.

Adding a new carrier later means adding it to your Sendcloud account, not building a new integration.

Questions & answers

Why integrate the Bpost API through Sendcloud instead of directly?

Direct Bpost integration means setting up the Bpost Shipping Manager, configuring international price zones manually for every destination country, and managing three separate credentials: Account ID, General Service passphrase, and a Tracking Service passphrase issued only on email request to esolutions@bpost.be.

Through Sendcloud, you authenticate once with your Sendcloud API key and use a single REST schema for Bpost alongside every other carrier in your account. Sendcloud absorbs upstream changes from Bpost. A direct Bpost contract is required either way; Sendcloud rates aren't offered for Bpost.

What happens when Bpost updates or breaks their API?

Bpost periodically updates the Shipping Manager API and the international price-zone configuration flow. Direct integrators have to re-test payloads, refresh credentials, and update international shipping countries in the Shipping Manager whenever Bpost adjusts coverage.

When you ship Bpost through the Sendcloud REST API, the abstraction layer absorbs those changes. Sendcloud's engineering monitors Bpost's developer documentation and adjusts the carrier connector internally. Your Sendcloud request schema stays the same regardless of upstream Bpost changes.

Can I use my own Bpost contract?

Yes, and you have to. Bpost requires your own contract; Sendcloud rates aren't offered.

For setup: open the Bpost Shipping Manager and configure international price zones first under Admin > Delivery Settings. Then collect your Account ID (6 digits), General Service passphrase, and Tracking Service passphrase. Request the Tracking Service passphrase by emailing esolutions@bpost.be.

In Sendcloud, go to Shipping > Carriers > Bpost, click Enable, and enter your credentials. A Lite, Growth, or Premium plan is required.

See the Bpost contract activation Help Center article.

Which Bpost products are supported through the API?

Through Sendcloud, you can ship Bpost's domestic and international product line:

  • bpost @home (bpack 24H): next-working-day home and business delivery within Belgium, up to 30 kg

  • bpost @home + Signature: signature required at delivery

  • bpost Saturday Delivery: weekend domestic delivery

  • bpost @bpack 0-10kg and 10-30kg: service-point and locker delivery

  • International methods, with destination countries enabled per contract in the Bpost Shipping Manager

See the Bpost shipping conditions Help Center article.

Which Bpost-specific features does the API expose?

Bpost-specific features exposed through the integration:

  • Parcel-machine and service-point delivery through @bpack

  • Saturday delivery as an add-on for both home and service-point methods

  • Free second delivery attempt on @home if the recipient is unavailable; held at the nearest mailing point for 15 calendar days before return

  • Standard insurance included on @home shipments

  • International price-zone configuration controlled in the Bpost Shipping Manager (Admin > Delivery Settings > Add a price zone)

Note: international shipments support a maximum of 3 different item types per shipment.

How do I track Bpost parcels?

Bpost tracking distinguishes between parcel-machine arrival, mailing-point hold (held for 15 calendar days before return), and standard home delivery. All events flow through Sendcloud's webhook stream with location context in the payload.

All events normalise to Sendcloud's status taxonomy through GET https://panel.sendcloud.sc/api/v2/tracking/{tracking_number}, with the chronological history under statuses and each event mapped to parent_status. Subscribe to the parcel-status-changed webhook for push updates. Reference: Tracking parcels.

How do I create Bpost return labels?

Bpost returns drop off at the mailing-point and service-point network. Failed deliveries are held at the nearest mailing point for 15 calendar days before being returned. Specific return method availability depends on what's enabled on your contract.

All return labels are created through Sendcloud's standalone v3 Returns API (synchronous or asynchronous; async is recommended for higher throughput). No outgoing parcel lookup or JWT tokens are required. Reference: Returns API overview.

How does Sendcloud's multi-carrier API compare to connecting carriers individually?

The Sendcloud REST API gives you access to 170+ carriers, including Bpost, through one credential set, one schema, one webhook stream, and one error model. Connecting carriers individually means handling separate authentication, payload formats, and tracking systems for each, and redoing the work every time a carrier ships breaking changes upstream.

With Sendcloud, you ship Bpost alongside DHL, PostNL, DPD, and GLS, or any other carrier in your account using the same code. Route shipments between carriers based on rules (weight, destination, service level, cost) without writing carrier-specific routing logic. Fall back to alternative carriers automatically if Bpost's upstream system has issues.

Adding a new carrier later means adding it to your Sendcloud account, not building a new integration.

One API for all your shipping needs

No setup fees

Same-day integration

Ship with Europe’s top carriers

One API for all your shipping needs

No setup fees

Same-day integration

Ship with Europe’s top carriers

One API for all your shipping needs

No setup fees

Same-day integration

Ship with Europe’s top carriers