Логистика и этикетки

API PDF упаковочных листов для fulfillment workflows

Генерируйте PDF packing slips из данных заказа, shipment, carton и items для ecommerce, 3PL, OMS и складского fulfillment.

ОСНОВНАЯ API Template Render
ENDPOINT /api/v1/template-render
СИСТЕМЫ OMS / WMS / 3PL backend / Shopify app backend
Задача сценария

Рендерить packing slips из shipment, recipient, item и carton data, чтобы fulfillment teams могли печатать или вкладывать стабильный документ для каждого outbound order.

Когда использовать эту API

  • Ваша OMS или WMS уже содержит order items, quantities, recipient data и shipment identifiers.
  • Нужен PDF packing slip для warehouse print stations или customer parcel inserts.
  • Один утвержденный layout должен использоваться в нескольких складах, брендах или sales channels.
  • Может потребоваться barcode или QR code для order lookup или return intake.

Что она не заменяет

  • Нужно купить postage, рассчитать shipment или создать carrier label.
  • Нужно управление warehouse inventory, а не document rendering.
  • Нужна семантика legal invoice или e-invoice.

Какой endpoint вызывать

ОСНОВНОЙ

/api/v1/template-render

Template Render — путь по умолчанию для этого сценария.

ДОПОЛНИТЕЛЬНЫЙ 1

/api/v1/pdf/render

Используйте, когда сценарию нужен связанный API-путь, контракт шаблона или проверка возможностей.

Минимальный запрос

POST /api/v1/template-render - template packing_list с одним shipment.

{
  "template_id": "packing_list",
  "data": [
    {
      "shipment": {
        "number": "PL-2026-1001",
        "date": "2026-05-29"
      },
      "shipper": {
        "name": "Acme Warehouse",
        "address": "1200 Logistics Pkwy"
      },
      "consignee": {
        "name": "Receiver Inc.",
        "address": "123 Main St"
      },
      "items": [
        {
          "item_no": "1",
          "description": "Replacement filter",
          "quantity": "2",
          "unit": "pcs",
          "gross_weight": "1.2 kg",
          "net_weight": "1.0 kg"
        }
      ]
    }
  ]
}

Что выполняет gPdf

  • Template Render для опубликованных layouts упаковочных листов.
  • JSON Render для custom packing slip pages во время дизайна или one-off workflows.
  • Таблицы, item rows, address blocks, опциональные штрихкоды и PDF output.
  • Детерминированную перепечатку при использовании тех же data и template.

Что контролирует ваша система

  • Order data, item quantities, shipment state, warehouse routing и customer messaging.
  • Template field mapping, print station routing и reprint policy.
  • Любой carrier, customs или invoice document, который должен идти с посылкой.

Production-чеклист

  1. Проверьте самые длинные комбинации SKU, item name и address.
  2. Проверьте случаи one-item, multi-carton, backorder и partial shipment.
  3. Используйте Template Render после утверждения layout упаковочного листа.
  4. Логируйте `template_id` и X-Request-Id для каждого fulfillment print request.
  5. Держите carrier label generation отдельно от рендеринга packing slip.

Границы заявлений

  • gPdf рендерит PDF упаковочного листа; он не управляет inventory или fulfillment state.
  • Packing slip не становится автоматически tax invoice или customs document.
  • Carrier label purchase и shipment rating остаются вне gPdf.

Packing slips хорошо подходят для template path

У packing slips обычно стабильная структура: shipper, recipient, shipment number, item rows и опциональные notes. Поэтому Template Render хорошо подходит после утверждения layout.

JSON Render остается полезным на этапе дизайна. Он позволяет команде настроить columns, spacing, barcode placement и page breaks перед публикацией стабильного контракта template_id.

FAQ

Packing slip — это отдельный endpoint gPdf?
Нет. Используйте Template Render для утвержденного packing slip template или JSON Render, когда ваша система описывает layout напрямую.
Можно ли добавлять штрихкоды в packing slips?
Да. gPdf может рендерить barcode elements в PDF. Ваша система отвечает за закодированный order, carton или return payload.
Создает ли gPdf carrier labels?
Нет. Carrier labels — отдельный workflow. gPdf рендерит PDF из данных, которые предоставляет ваш carrier или shipping system.
Можно ли одним request отрендерить несколько packing slips?
Template Render принимает data array для нескольких items в одном request, в пределах публичных API limits, задокументированных для endpoint.