Add Customs Declaration Numbers to the Orders
POST /api/marketplace/v3/click-collect/orders/meta/customs-declarationBase 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": truein the response of the method getting new assembly orders - the assembly order is in
confirmorpreparestatuses - the
customsDeclarationfield 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:
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 20 requests | 3 s | 500 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
ordersobject[](required)customsDeclarationstring(required) — Customs declaration numberorderIdinteger<int64>(required) — Assembly order IDoriginCountryCodestring(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
| Code | Description | Schema |
|---|---|---|
200 | Успешно | api.CustomsDeclarationSetResponse |
400 | Bad request | api.BatchError |
401 | Unauthorized | object |
402 | Payment required | object |
403 | Access denied | Error |
429 | Too many requests | object |
Structure 200:
requestIdobject— Unique request IDresultsapi.StatusSetCustomsDeclarationResponse[]orderIdinteger<int64>— Assembly order IDisErrorboolean— Are there any errorserrorsapi.BatchCustomsDeclarationErrorResponse[]— Error detailscodeinteger<int64>— Error code: -404-409-400detailstring— -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:
detailobject— Error detailsoriginstring— WB internal service IDrequestIdstring— Unique request IDtitlestring— Error title
Structure 401:
titlestring— Error titledetailstring— Error detailscodestring— Internal error coderequestIdstring— Unique request IDoriginstring— WB internal service IDstatusnumber— HTTP status codestatusTextstring— Text of the HTTP status codetimestampstring— Request date and time
Structure 402:
titlestring— Error titledetailstring— Error details. The error is only returned to services from the Solutions for business Catalog
Structure 403:
codestring— Error codemessagestring— Error descriptiondataobject— Additional data enriching the error
Structure 429:
titlestring— Error titledetailstring— Error detailscodestring— Internal error coderequestIdstring— Unique request IDoriginstring— WB internal service IDstatusnumber— HTTP status codestatusTextstring— Text of the HTTP status codetimestampstring— 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.
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)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);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)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));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));#Использовать "wb-api-client"
Настройки = Новый Конфигурация();
Настройки.УстановитьТокен("<your WB JWT>");
Клиент = Новый InStorePickupApi(Настройки);
Сообщить(Клиент.PostV3ClickCollectOrdersMetaCustomsDeclaration(Тело).Тело);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));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);
}