Skip to content

Add Customs Declaration Numbers to the Orders ​

http
POST /api/marketplace/v3/click-collect/orders/meta/customs-declaration

Base URL: https://marketplace-api.wildberries.ru · Module: in-store-pickup · Section: In-Store Pickup Label Identifiers · Specification doc ↗

Sets the customs declaration numbers and numeric codes of the countries for the assembly orders label identifiers. One assembly order can have only one customs declaration number. Customs declaration number can only be added if all the conditions are met:

  • the assembly order has the B2B sale attribute — "isB2b": true in the response of the method getting new assembly orders
  • the assembly order is in confirm or prepare statuses
  • the customsDeclaration field is returned in the response of the Get order label identifiers method

Request limit per one seller account for all methods for adding In-Store Pickup label identifiers:

PeriodLimitIntervalBurst
1 min20 requests3 s500 requests
One request with 4XX response codes is counted as 10 requests.

In Sandbox — maximum of 1 request per second for all Marketplace methods in total.

Request body ​

application/json — schema object, required

  • orders object[] (required)
    • customsDeclaration string (required) — Customs declaration number
    • orderId integer<int64> (required) — Assembly order ID
    • originCountryCode string (required) — Numeric code of the country of origin according to Russian classification of countries of the world. Required only for assembly orders with the B2B sale indicator "isB2b": true

Responses ​

CodeDescriptionSchema
200Успешноapi.CustomsDeclarationSetResponse
400Bad requestapi.BatchError
401Unauthorizedobject
402Payment requiredobject
403Access deniedError
429Too many requestsobject

Structure 200:

  • requestId object — Unique request ID
  • results api.StatusSetCustomsDeclarationResponse[]
    • orderId integer<int64> — Assembly order ID
    • isError boolean — Are there any errors
    • errors api.BatchCustomsDeclarationErrorResponse[] — Error details
      • code integer<int64> — Error code: - 404 - 409 - 400
      • detail string — - NotFound — the assembly order is not found - StatusMismatch — operation is not possible for this assembly order status - OrderNotB2B — operation is available only for assembly orders with the B2B sale indicator "isB2b": true - InvalidOriginCountryCode — invalid country of origin code

Structure 400:

  • detail object — Error details
  • origin string — WB internal service ID
  • requestId string — Unique request ID
  • title string — Error title

Structure 401:

  • title string — Error title
  • detail string — Error details
  • code string — Internal error code
  • requestId string — Unique request ID
  • origin string — WB internal service ID
  • status number — HTTP status code
  • statusText string — Text of the HTTP status code
  • timestamp string — Request date and time

Structure 402:

Structure 403:

  • code string — Error code
  • message string — Error description
  • data object — Additional data enriching the error

Structure 429:

  • title string — Error title
  • detail string — Error details
  • code string — Internal error code
  • requestId string — Unique request ID
  • origin string — WB internal service ID
  • status number — HTTP status code
  • statusText string — Text of the HTTP status code
  • timestamp string — Request date and time

Call examples ​

Arguments are shown as parameter names — substitute your own values. Languages whose client does not expose this operation are omitted.

python
from wb_api_client.in_store_pickup import Configuration, ApiClient
from wb_api_client.in_store_pickup.api import InStorePickupApi

cfg = Configuration(access_token="<your WB JWT>")
api = InStorePickupApi(ApiClient(cfg))

result = api.post_v3_click_collect_orders_meta_customs_declaration(post_v3_click_collect_orders_meta_customs_declaration_request=...)
print(result)
ts
import {
  Configuration,
  InStorePickupApi,
} from "@valeryverkhoturov/wb-api-client/in-store-pickup";

const cfg = new Configuration({});
cfg.setAccessToken("<your WB JWT>");
const api = new InStorePickupApi(cfg);

const { data } = await api.postV3ClickCollectOrdersMetaCustomsDeclaration(postV3ClickCollectOrdersMetaCustomsDeclarationRequest);
console.log(data);
go
import (
	"context"
	"fmt"

	wbinstorepickup "github.com/ValeryVerkhoturov/wb-api-client-go/in_store_pickup"
)

cfg := wbinstorepickup.NewConfiguration()
cfg.SetAccessToken("<your WB JWT>")
client := wbinstorepickup.NewAPIClient(cfg)

result, _, err := client.InStorePickupAPI.PostV3ClickCollectOrdersMetaCustomsDeclaration(context.Background()).PostV3ClickCollectOrdersMetaCustomsDeclarationRequest(postV3ClickCollectOrdersMetaCustomsDeclarationRequest).Execute()
if err != nil {
    panic(err)
}
fmt.Printf("%+v\n", result)
java
import io.github.valeryverkhoturov.wbapi.in_store_pickup.ApiClient;
import io.github.valeryverkhoturov.wbapi.in_store_pickup.SecretString;
import io.github.valeryverkhoturov.wbapi.in_store_pickup.api.InStorePickupApi;

ApiClient client = new ApiClient();
client.setAccessToken(new SecretString("<your WB JWT>"));
InStorePickupApi api = new InStorePickupApi(client);

System.out.println(api.postV3ClickCollectOrdersMetaCustomsDeclaration(postV3ClickCollectOrdersMetaCustomsDeclarationRequest));
php
use ValeryVerkhoturov\WbApiClient\InStorePickup\Configuration;
use ValeryVerkhoturov\WbApiClient\InStorePickup\SecretString;
use ValeryVerkhoturov\WbApiClient\InStorePickup\Api\InStorePickupApi;
use GuzzleHttp\Client;

$config = (new Configuration())
    ->setAccessTokenSecret(new SecretString('<your WB JWT>'));
$api = new InStorePickupApi(new Client(), $config);

print_r($api->postV3ClickCollectOrdersMetaCustomsDeclaration($post_v3_click_collect_orders_meta_customs_declaration_request));
bsl
#Использовать "wb-api-client"

Настройки = Новый Конфигурация();
Настройки.УстановитьТокен("<your WB JWT>");
Клиент = Новый InStorePickupApi(Настройки);

Сообщить(Клиент.PostV3ClickCollectOrdersMetaCustomsDeclaration(Тело).Тело);
csharp
using ValeryVerkhoturov.WbApiClient.InStorePickup.Api;
using ValeryVerkhoturov.WbApiClient.InStorePickup.Client;

var config = new Configuration();
config.AccessTokenSecret = new SecretString("<your WB JWT>");
var api = new InStorePickupApi(config);

Console.WriteLine(api.PostV3ClickCollectOrdersMetaCustomsDeclaration(postV3ClickCollectOrdersMetaCustomsDeclarationRequest));
rust
use wb_api_client::in_store_pickup::apis::{configuration::Configuration, in_store_pickup_api};

#[tokio::main]
async fn main() {
    let mut cfg = Configuration::new();
    cfg.set_access_token("<your WB JWT>");

    let result = in_store_pickup_api::post_v3_click_collect_orders_meta_customs_declaration(&cfg, post_v3_click_collect_orders_meta_customs_declaration_request).await;
    println!("{:#?}", result);
}