Customs API
The Customs API is used to submit customs declarations as structured data to Bring.
Authentication
To integrate with Bring APIs, you will need a Mybring user account with an API key. Information about prerequisites and authentication headers can be found on the general API Getting Started page. In addition to authentication, you need to be authorized.
Rate limiting
Clients exceeding a certain number of requests per second will be throttled, and the response will contain http status code 429. If you have a use case requiring rates above the limit, please contact developer-booking@bring.com for assistance.
Formats
REST JSON over HTTP
Introduction
NOTE! To onboard onto the Customs API, testing is necessary, as data will be forwarded to various customs authorities. Please contact edi@bring.com for assistance with this.
Endpoints
- Base URL
https://api.bring.com/customs/v1- OpenAPI document
- https://api.bring.com/customs/v1/openapi
| Usage | Method | Endpoint |
|---|---|---|
| Submit customs declaration for a shipment | POST |
/declarations
|
Submit customs declaration for a shipment
- POST
-
https://api.bring.com/customs/v1/declarations
Request
header parameters
-
X-Bring-Test-Indicator -
- Description
- Indicates whether this is a test message or a live one.
- Type
- boolean
Body schema
Media type: application/json
-
currencyCodeRequired - Currency code (ISO 4217) that applies to all amounts in the customs declarationstring
-
customerNumberRequired - Customer number paying for the transportstring
-
Required
- List of customs linesarray of objects
-
amountRequired - The total value of the goods for the commercial invoice line. In base units.number
- Example
220.5
-
consignmentItemId - The customs consignment item id. For customs information provided at the single shipment level, corresponds to packageNumber in the Booking API.string
-
countryCodeOriginRequired - The customs line's origin ISO 3166 country codestring
-
customsArticleNumberRequired - The customs article number, or tariff codestringx
- array of objects
-
certificateCode - Certificate code for the customs linestring
-
documentCode - Document code for the customs linestring
-
-
goodsDescriptionRequired - A description of the goods declaredstring
-
grossWeightRequired - Gross total weight for the commercial invoice line. In base units (kgs).number
- Minimum
0.001- Example
2.5
-
netWeightRequired - Net total weight for the commercial invoice line. In base units (kg).number
- Minimum
0.001- Example
2.5
-
numberOfPieces - The number of pieces if multiple of the same (not used to multiply any of the other values)number
- Information about the product identifiers for the customs lineobject
-
-
merchantRequired - Merchant product identifier (C127, M-PID) assigned by the online seller, marketplace or platform.string
-
nonStandardRequired - Non-standardised manufacturer product identifier (C128, NS-PID) assigned by a manufacturer, producer or product supplier.string
-
standard - Standardised manufacturer product identifier (C129, S-PID).string
-
-
quantityOtherUnit - The quantity of the customs line if weight is not aptnumber
- Information about the customer's sales orderobject
-
-
articleNumberRequired - Article number of the sales orderstring
-
orderNumberRequired - Order number of the sales orderstring
-
- Information about the trade preferences for import and/or exportobject
-
- Information about the trade preference area and code for one directionobject
-
-
areaRequired - Customs area for which the code is meant. Possible values are NO, EUstring
-
codeRequired - Trade preference code for the customs area. For the NO area, values can be A (default on import), B, C, G, P, J, N (default on export). For the EU area, values can be 300 or 500 (default on import).string
-
- Information about the trade preference area and code for one directionobject
-
-
areaRequired - Customs area for which the code is meant. Possible values are NO, EUstring
-
codeRequired - Trade preference code for the customs area. For the NO area, values can be A (default on import), B, C, G, P, J, N (default on export). For the EU area, values can be 300 or 500 (default on import).string
-
-
-
declarationType - Indicates whether the declaration should be import, export, or both. Defaults to EXPORT_IMPORT if missing.string
- Enum
-
IMPORT -
EXPORT -
EXPORT_IMPORT(default)
-
Required
- Information about the shipTo(delivery), recipient, importer or exporter party. ShipTo defaults to recipient (if provided) for 0342, 0344, 0349.object
-
-
addressLine1Required - the party's first address linestring
-
addressLine2 - the party's second address linestring
-
cityRequired - The party's citystring
-
countryCodeRequired - The party's ISO 3166 country codestring
-
id - The party's id. Usually a customer number.string
-
nameRequired - The party's namestring
-
postalCodeRequired - The party's postal codestring
-
reference - The party's referencestring
-
vatId - The party's VAT numberstring
-
-
Required
- Information about the shipTo(delivery), recipient, importer or exporter party. ShipTo defaults to recipient (if provided) for 0342, 0344, 0349.object
-
-
addressLine1Required - the party's first address linestring
-
addressLine2 - the party's second address linestring
-
cityRequired - The party's citystring
-
countryCodeRequired - The party's ISO 3166 country codestring
-
id - The party's id. Usually a customer number.string
-
nameRequired - The party's namestring
-
postalCodeRequired - The party's postal codestring
-
vatId - The party's VAT numberstring
-
-
Required
- List of invoice dataarray of objects
-
amountRequired - The invoice's total amount. In base units.number
-
discount - The invoice's total discount. In base units.number
-
invoiceDateRequired - The invoice datestring
-
invoiceNumberRequired - The invoice numberstring
-
- Information about the shipTo(delivery), recipient, importer or exporter party. ShipTo defaults to recipient (if provided) for 0342, 0344, 0349.object
-
-
addressLine1Required - the party's first address linestring
-
addressLine2 - the party's second address linestring
-
cityRequired - The party's citystring
-
countryCodeRequired - The party's ISO 3166 country codestring
-
id - The party's id. Usually a customer number.string
-
nameRequired - The party's namestring
-
postalCodeRequired - The party's postal codestring
-
reference - The party's referencestring
-
vatId - The party's VAT numberstring
-
- Information about the shipTo(delivery), recipient, importer or exporter party. ShipTo defaults to recipient (if provided) for 0342, 0344, 0349.object
-
-
addressLine1Required - the party's first address linestring
-
addressLine2 - the party's second address linestring
-
cityRequired - The party's citystring
-
countryCodeRequired - The party's ISO 3166 country codestring
-
id - The party's id. Usually a customer number.string
-
nameRequired - The party's namestring
-
postalCodeRequired - The party's postal codestring
-
reference - The party's referencestring
-
vatId - The party's VAT numberstring
-
-
Required
- Describes shipment data associated with the customs declarationobject
-
-
consignmentIdRequired - Customs consignment id for the shipment. Top level id. For customs information provided at the single shipment level, corresponds to consignmentNumber in the Booking API.stringMax length: 35
-
freightCost - Cost of freight. In base units.number
-
insuranceCost - Cost of insurance. In base units.number
-
serviceRequired - Service code declared. 0300 is the service code for bulk/routing label.string
- Enum
-
0300 -
0336 -
0342 -
0344
-
Required
- Information about terms of deliveryobject
-
-
incotermsCodeRequired - The incoterms that applies for the customer's shipmentstring
- Enum
-
EXW -
FCA -
FAS -
FOB -
CFR -
CIF -
CPT -
CIP -
DPU -
DAP -
DDP
-
location - The location for the shipmentstring
-
-
Responses
200 Successfully submitted customs declaration for a shipment
Schema
Media type: application/json
-
error - A description of the error that occurredstring
-
processingId - A processing id for the requeststring
-
status - The outcome of the requeststring
- Enum
-
ACCEPTED -
FAILED
Request examples
{
"currencyCode": "SEK",
"customerNumber": "1234567890",
"customsDeclarations": [
{
"amount": 1500.5,
"consignmentItemId": "CS128104136NO",
"countryCodeOrigin": "SE",
"customsArticleNumber": "article number 1",
"goodsDescription": "description 1",
"grossWeight": 1,
"netWeight": 1,
"quantityOtherUnit": 2,
"salesOrder": null
},
{
"amount": 250.5,
"consignmentItemId": "CS128104137NO",
"countryCodeOrigin": "FI",
"customsArticleNumber": "article number 2",
"documentReferences": [
{
"certificateCode": "SE/HF/003245"
}
],
"goodsDescription": "description 2",
"grossWeight": 2,
"netWeight": 2,
"numberOfPieces": 3,
"salesOrder": {
"articleNumber": "GK153-1",
"orderNumber": "OPT5566"
}
}
],
"declarationType": "EXPORT_IMPORT",
"exporter": {
"addressLine1": "Exporter street 42",
"city": "Oslo",
"countryCode": "NO",
"name": "Ex Porter",
"postalCode": "1234"
},
"importer": {
"addressLine1": "Importer street 42",
"city": "Stockholm",
"countryCode": "SE",
"id": "1234567891",
"name": "Im Porter",
"postalCode": "12000"
},
"invoices": [
{
"amount": 100887.5,
"discount": 250.5,
"invoiceDate": "2025-11-13",
"invoiceNumber": "401528"
},
{
"amount": 100887.5,
"invoiceDate": "2025-11-14",
"invoiceNumber": "401529"
}
],
"shipment": {
"consignmentId": "012345678910",
"freightCost": 1000.5,
"insuranceCost": 5000.5,
"service": "0300",
"termsOfDelivery": {
"incotermsCode": "DDP",
"location": "Oslo"
}
}
}{
"currencyCode": "SEK",
"customerNumber": "1234567890",
"customsDeclarations": [
{
"amount": 1500.5,
"countryCodeOrigin": "NO",
"customsArticleNumber": "tariff code 1",
"goodsDescription": "description 1",
"grossWeight": 1,
"netWeight": 1,
"productIdentifiers": {
"merchant": "ACDE",
"nonStandard": 12345
}
},
{
"amount": 250.5,
"countryCodeOrigin": "NO",
"customsArticleNumber": "tariff code 2",
"goodsDescription": "description 2",
"grossWeight": 2,
"netWeight": 2,
"numberOfPieces": 3,
"productIdentifiers": {
"merchant": "ACDEF",
"nonStandard": 123456
}
}
],
"exporter": {
"addressLine1": "Exporter street 42",
"city": "Oslo",
"countryCode": "NO",
"id": "12345678",
"name": "Ex Porter",
"postalCode": "1234",
"vatId": "VAT number"
},
"importer": {
"addressLine1": "Importer street 42",
"city": "Stockholm",
"countryCode": "SE",
"id": "12345678",
"name": "Im Porter",
"postalCode": "12000",
"vatId": "VAT number"
},
"invoices": [
{
"amount": 100887.5,
"invoiceDate": "2025-11-13",
"invoiceNumber": "401528"
}
],
"recipient": {
"addressLine1": "Recipient street 42",
"city": "Stockholm",
"countryCode": "SE",
"name": "Recipient",
"postalCode": "12001"
},
"shipment": {
"consignmentId": "012345678910",
"service": "0342",
"termsOfDelivery": {
"incotermsCode": "DAP",
"location": "Stockholm"
}
}
}{
"currencyCode": "SEK",
"customerNumber": "1234567890",
"customsDeclarations": [
{
"amount": 1500.5,
"consignmentItemId": "CS128104136NO",
"countryCodeOrigin": "SE",
"customsArticleNumber": "article number 1",
"goodsDescription": "description 1",
"grossWeight": 1,
"netWeight": 1,
"quantityOtherUnit": 2
},
{
"amount": 250.5,
"consignmentItemId": "CS128104137NO",
"countryCodeOrigin": "FI",
"customsArticleNumber": "article number 2",
"documentReferences": [
{
"certificateCode": "SE/HF/003245"
}
],
"goodsDescription": "description 2",
"grossWeight": 2,
"netWeight": 2,
"numberOfPieces": 3,
"salesOrder": {
"articleNumber": "GK153-1",
"orderNumber": "OPT5566"
}
}
],
"declarationType": "EXPORT_IMPORT",
"exporter": {
"addressLine1": "Exporter street 42",
"city": "Oslo",
"countryCode": "NO",
"id": null,
"name": "Ex Porter",
"postalCode": "1234"
},
"importer": {
"addressLine1": "Importer street 42",
"city": "Stockholm",
"countryCode": "SE",
"id": "1234567891",
"name": "Im Porter",
"postalCode": "12000"
},
"invoices": [
{
"amount": 100887.5,
"discount": 250.5,
"invoiceDate": "2025-11-13",
"invoiceNumber": "401528"
},
{
"amount": 100887.5,
"invoiceDate": "2025-11-14",
"invoiceNumber": "401529"
}
],
"shipment": {
"consignmentId": "012345678910",
"freightCost": 1000.5,
"insuranceCost": 5000.5,
"service": "0336",
"termsOfDelivery": {
"incotermsCode": "DDP",
"location": "Oslo"
}
}
}{
"currencyCode": "SEK",
"customerNumber": "1234567890",
"customsDeclarations": [
{
"amount": 1500.5,
"consignmentItemId": 123456,
"countryCodeOrigin": "NO",
"customsArticleNumber": "article number 1",
"goodsDescription": "description 1",
"grossWeight": 1,
"netWeight": 1,
"productIdentifiers": {
"merchant": "ACDE",
"nonStandard": 12345,
"standard": 54321
},
"quantityOtherUnit": 2,
"tradePreferences": {
"export": {
"area": "NO",
"code": "A"
},
"import": {
"area": "EU",
"code": "300"
}
}
},
{
"amount": 250.5,
"consignmentItemId": 1234567,
"countryCodeOrigin": "NO",
"customsArticleNumber": "article number 2",
"documentReferences": [
{
"certificateCode": "SE/HF/003245"
}
],
"goodsDescription": "description 2",
"grossWeight": 2,
"netWeight": 2,
"numberOfPieces": 3,
"productIdentifiers": {
"merchant": "ACDEF",
"nonStandard": 123456,
"standard": 654321
},
"salesOrder": {
"articleNumber": "GK153-1",
"orderNumber": "OPT5566"
}
}
],
"declarationType": "EXPORT_IMPORT",
"exporter": {
"addressLine1": "Exporter street 42",
"city": "Oslo",
"countryCode": "NO",
"id": null,
"name": "Ex Porter",
"postalCode": "1234",
"vatId": "VAT number"
},
"importer": {
"addressLine1": "Importer street 42",
"city": "Stockholm",
"countryCode": "SE",
"id": "1234567891",
"name": "Im Porter",
"postalCode": "12000"
},
"invoices": [
{
"amount": 100887.5,
"discount": 250.5,
"invoiceDate": "2025-11-13",
"invoiceNumber": "401528"
},
{
"amount": 100887.5,
"invoiceDate": "2025-11-14",
"invoiceNumber": "401529"
}
],
"recipient": {
"addressLine1": "Recipient street 42",
"city": "Stockholm",
"countryCode": "SE",
"id": null,
"name": "Recipient",
"postalCode": "12001"
},
"shipTo": {
"addressLine1": "Delivery street 42",
"city": "Stockholm",
"countryCode": "SE",
"id": null,
"name": "Delivering too",
"postalCode": "12001"
},
"shipment": {
"consignmentId": "012345678910",
"freightCost": 1000.5,
"insuranceCost": 5000.5,
"service": "0342",
"termsOfDelivery": {
"incotermsCode": "DAP",
"location": "Stockholm"
}
}
}Response examples
Success
{
"error": null,
"processingId": "89257cb6-43be-4250-9a56-eb679b95ba8d",
"status": "ACCEPTED"
}