---
slug: "boxberry"
name: "Boxberry API"
vendor: "Boxberry"
industry: "logistics"
docsUrl: "https://yandex.ru/support/delivery-boxberry/ru/pages/web-service-addresses"
version: 2
updatedAt: "2026-10-24"
---

# Boxberry API

Отрасль: Логистика и доставка. Актуально на 2026-10-24.

API службы доставки Boxberry для интернет-магазинов и партнёров: города и пункты выдачи, расчёт стоимости и сроков доставки, проверка курьерской доставки по индексу, создание и изменение заказов, курьерский забор, отслеживание статусов, штрихкоды и акты. Все методы вызываются через один адрес с параметром `method`. Есть также SOAP-интерфейс.

## Сценарии

### Рассчитать стоимость доставки до пункта выдачи или курьером

Показать покупателю цену доставки Boxberry при оформлении заказа.

1. Возьми токен в личном кабинете: «Интеграция» → «Методы API». Все методы вызываются по одному адресу https://api.boxberry.ru/json.php с параметрами token и method.
2. Получи города доставки: ListCities с CountryCode = 643 (Россия). Список обновляй раз в день. Код нужного пункта выдачи берётся из справочника пунктов Boxberry.
3. Посчитай стоимость: DeliveryCosts с weight (граммы), target — кодом пункта выдачи, ordersum (объявленная стоимость) и paysum (сумма к оплате с получателя). Для курьерской доставки передай zip — индекс получателя, тогда target игнорируется.
4. Итог — price в ответе (price_base + price_service). Метод не проверяет данные: при несуществующем пункте или индексе стоимость будет неточной без ошибки, поэтому проверяй коды заранее.

```bash
curl -G https://api.boxberry.ru/json.php \
  -d token=<токен> -d method=DeliveryCosts \
  -d weight=1500 -d target=010 -d ordersum=1500 -d paysum=0 \
  -d height=10 -d width=15 -d depth=20
```

### Создать заказ и получить трек-номер с этикеткой

Передать заказ интернет-магазина в Boxberry.

1. Отправь заказ: POST на https://api.boxberry.ru/json.php с method = ParselCreate и sdata: order_id (номер у тебя), vid (1 — до ПВЗ, 2 — курьером), price, payment_sum (0 для предоплаченного), delivery_sum, shop.name (код пункта выдачи) и shop.name1 (код пункта приёма), customer (fio и phone — 10 цифр) и weights.weight в граммах.
2. Для курьерской доставки заполни kurdost: citi и addressp. Индекс лучше оставить пустым — Boxberry определит сам.
3. В ответе track — трек-номер посылки и label — ссылка на этикетку со штрихкодом. Сохрани оба.
4. Чтобы изменить заказ, отправь ParselCreate ещё раз с sdata.updateByTrack = трек-номер.
5. Для многоместного заказа веса мест передаются как weight, weight2 … weight24.

```bash
curl -X POST https://api.boxberry.ru/json.php \
  -H 'Content-Type: application/json' \
  -d '{
        "token": "<токен>",
        "method": "ParselCreate",
        "sdata": {
          "order_id": "1042",
          "vid": 1,
          "price": 1500,
          "payment_sum": 0,
          "delivery_sum": 0,
          "shop": {"name": "<код ПВЗ получателя>", "name1": "<код пункта приёма>"},
          "customer": {"fio": "Иванов Иван Иванович", "phone": "9990001122"},
          "weights": {"weight": 1500}
        }
      }'
# → {"track": "AAP127020243", "label": "http://api.boxberry.ru/parcel-files/barcodes?..."}
```

### Узнать статус посылки

Показать покупателю, где посылка, или обновить статусы заказов у себя.

1. Запроси историю: ListStatuses с ImId — трек-номером или номером заказа в магазине.
2. В ответе — список статусов с Date (по Москве) и Name, последний элемент — текущий статус.
3. Для массового обновления статусов по многим посылкам документация рекомендует GetLastStatusData, а не опрос по одной.
4. Следи за заголовками X-RateLimit-Remaining и X-Rate-Limit-Reset: при превышении лимита придёт 429.

```bash
curl -G https://api.boxberry.ru/json.php \
  -d token=<токен> -d method=ListStatuses -d ImId=AAP127020243
```

## Базовые URL

- Боевой (JSON API): `https://api.boxberry.ru/json.php`
- Боевой (SOAP, посылки): `https://api.boxberry.ru/__soap/1c_lc.php?wsdl`
- Боевой (SOAP, информация): `https://api.boxberry.ru/__soap/1c_public.php?wsdl`

## Авторизация

Тип: API-ключ

API-токен берут в личном кабинете Boxberry (account.boxberry.ru): «Интеграция» → вкладка «Методы API». Токен передаётся в параметре `token` в каждом запросе, не меняется при смене пароля. Запросы — только по HTTPS (TLS 1.2 или 1.3).

```
curl 'https://api.boxberry.ru/json.php?method=ListStatuses&token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&ImId=AAP298792807'
```

## Методы

### ListCities — Список городов доставки

Города с пунктами выдачи Boxberry. Обновляйте раз в день. GET-запрос: `https://api.boxberry.ru/json.php?token=...&method=ListCities`.

В ответе для каждого города: `Name`, `Code`, `CountryCode`, `Prefix`, `Region`, `Kladr`, `CourierDelivery` (0/1), `Reception` (0/1) и др.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `token` | query | string | да | Токен |
| `method` | query | string | да | ListCities |
| `CountryCode` | query | string | нет | Код страны: 643 — Россия, 398 — Казахстан, 112 — Беларусь и др. |

### DeliveryCosts — Калькулятор стоимости доставки

Стоимость доставки до ПВЗ или курьером с учётом постоянных услуг по договору. Метод только считает и не проверяет данные: при неверном пункте или индексе стоимость будет неточной. GET-запрос.

Пример запроса (склад–склад):

В ответе: `price` (итог = `price_base` + `price_service`), `price_base` и др.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `token` | query | string | да | Токен |
| `method` | query | string | да | DeliveryCosts |
| `weight` | query | integer | да | Вес посылки, граммы |
| `targetstart` | query | string | нет | Код пункта приёма; по умолчанию из настроек кабинета |
| `target` | query | string | нет | Код пункта выдачи |
| `zip` | query | string | нет | Индекс для курьерской доставки; если передан, target игнорируется |
| `ordersum` | query | number | нет | Объявленная (страховая) стоимость |
| `deliverysum` | query | number | нет | Заявленная стоимость доставки |
| `paysum` | query | number | нет | Сумма к оплате с получателя |
| `height` | query | string | нет | Высота коробки, см |
| `width` | query | string | нет | Ширина, см |
| `depth` | query | string | нет | Глубина, см |
| `sucrh` | query | string | нет | 1 — расчёт с индивидуальными настройками кабинета |

Пример запроса:

```
https://api.boxberry.ru/json.php?token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&method=DeliveryCosts&weight=500&targetstart=010&target=010&ordersum=0&deliverysum=0&height=120&width=80&depth=50&paysum=100
```

### ParselCreate — Создать или обновить заказ

POST на `https://api.boxberry.ru/json.php`, тело — JSON. Услуги из раздела «Услуги» кабинета подставляются автоматически. Если заполнен `updateByTrack`, обновляется ранее созданная посылка.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `token` | body | string | да | Токен |
| `method` | body | string | да | ParselCreate |
| `sdata.order_id` | body | string | да | Номер заказа в магазине |
| `sdata.vid` | body | string | да | 1 — до ПВЗ, 2 — курьерская доставка |
| `sdata.price` | body | string | нет | Объявленная стоимость (РФ: 5–500 000) |
| `sdata.payment_sum` | body | string | нет | Сумма к оплате с получателя; для предоплаченного — 0 |
| `sdata.delivery_sum` | body | string | нет | Стоимость доставки для получателя |
| `sdata.updateByTrack` | body | string | нет | Трек-номер для обновления посылки |
| `sdata.barcode` | body | string | нет | Собственный штрихкод посылки |
| `sdata.shop.name` | body | string | нет | Код пункта выдачи (обязателен для ПВЗ) |
| `sdata.shop.name1` | body | string | да | Код пункта приёма |
| `sdata.customer.fio` | body | string | да | ФИО получателя |
| `sdata.customer.phone` | body | string | да | Телефон, 10 цифр |
| `sdata.kurdost.citi` | body | string | нет | Населённый пункт (обязателен для КД по РФ) |
| `sdata.kurdost.addressp` | body | string | нет | Адрес: улица, дом, квартира (обязателен для КД по РФ) |
| `sdata.kurdost.index` | body | string | нет | Индекс; лучше оставить пустым для автоопределения |
| `sdata.weights.weight` | body | string | да | Вес первого места, граммы (5–31 000) |

Пример ответа:

```json
{
  "track": "AAP127020243",
  "label": "http://api.boxberry.ru/parcel-files/barcodes?parcel_id=127020243&token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}
```

### ListStatuses — Статусы посылки

GET или POST. Для массового обновления рекомендуется `GetLastStatusData`.

Пример ответа (сокращён):

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `token` | query | string | да | Токен |
| `method` | query | string | да | ListStatuses |
| `ImId` | query | string | да | Трек-номер или номер заказа |

Пример запроса:

```
[
  {
    "Date": "2024-02-07 13:38:13",
    "Name": "Загружен реестр ИМ"
  },
  {
    "Date": "2024-02-07 13:54:31",
    "Name": "Выдано"
  }
]
```

## Нюансы

- Все методы — один адрес `json.php`; метод выбирается параметром `method`, токен — параметром `token`.
- Курьерская доставка определяется по индексу получателя — проверяйте его методами `ListZips` или `ZipCheck`. Для курьерской доставки за рубеж используйте `DeliveryCalculation`.
- `DeliveryCosts` не валидирует данные: несуществующий пункт или превышение габаритов дадут неточную стоимость без ошибки.
- Вес — в граммах, габариты — в сантиметрах; даты статусов — по Москве.
- Для многоместных заказов веса мест передаются как `weight`, `weight2` … `weight24`.

## Ошибки

| Код | Описание |
|---|---|
| `429` | Превышен лимит запросов; тело {"err": "Слишком много запросов"} |

## Ограничения

Текущие лимиты возвращаются в заголовках каждого ответа: `X-RateLimit-Limit` (максимум запросов в интервале), `X-RateLimit-Remaining` (остаток), `X-Rate-Limit-Reset` (сколько секунд ждать). При систематическом превышении доступ к API может быть ограничен.

## Источники

- [Адреса web-сервисов](https://yandex.ru/support/delivery-boxberry/ru/pages/web-service-addresses)
- [Как узнать токен](https://yandex.ru/support/delivery-boxberry/ru/pages/how-to-get-token)
- [Лимиты на запросы](https://yandex.ru/support/delivery-boxberry/ru/pages/request-limits)
- [ListCities](https://yandex.ru/support/delivery-boxberry/ru/pages/list-cities)
- [DeliveryCosts](https://yandex.ru/support/delivery-boxberry/ru/pages/delivery-costs)
- [ParselCreate](https://yandex.ru/support/delivery-boxberry/ru/pages/parcel-create)
- [ListStatuses](https://yandex.ru/support/delivery-boxberry/ru/pages/list-statuses)

---

Если этого недостаточно — официальная документация: https://yandex.ru/support/delivery-boxberry/ru/pages/web-service-addresses
JSON: https://mcp-everything.ru/api/integrations/boxberry. MCP: https://mcp-everything.ru/mcp
