Packeta icon

Packeta data API

Zásilkovna s.r.o. · Transport

Packeta is the official Android client of Zásilkovna s.r.o. (Packeta Group) for households and small senders who ship C2C parcels through Packeta pickup points and Z-BOX lockers in Czechia, Slovakia, Hungary, Romania and Poland. After sign-in, a sender quotes postage, creates a shipment, pays cash-on-delivery with PayU, ČSOB card or Google Pay, tracks the packet, opens a Z-BOX over Bluetooth with a pickup PIN, and finds nearby points on the map; the same session holds an archive of collected parcels, a homefeed of FAQs and the nearest branch. Copy is Czech, Slovak, Hungarian and Romanian; the client is Packeta's first-party C2C app rather than a multi-carrier tracker, sitting next to UPS, Nova Poshta and Почта России as a national locker-network client.

Active-parcel rows carry a public packet_id plus locker credentials in zbox_password, with last_pickup_date and delivery_password gating the pickup card. Recipient lines store name, phone, street, city, zip and country; movement state is a type plus note. Cash-on-delivery quotes expose sum_value, sum_currency and vat_value, while PayU init returns order_id and finished_payment_link. Pickup-point records add externalId, boxType, maxWeight and openingHours. Marketplace sellers, locker-network overlays and last-mile ERPs reconcile those fields into shipment ledgers, and openData Studio turns them into callable open data.

Z-BOX drop-off objects sit on the same parcel as zbox_dropoff and zbox_flow_version; the COD till mix is provider with webpayu and webcsob plus cod_data.total_price. Cross-border quotes read exchange_rate for a country pair. Homefeed nearby-branch cards include distanceFromOrigin and openHours. Tracking sections return timestamp, message and messageFormatted against the same packetId.

Screenshots

  • Packeta screenshot 1
  • Packeta screenshot 2
  • Packeta screenshot 3
  • Packeta screenshot 4
  • Packeta screenshot 5
  • Packeta screenshot 6
  • Packeta screenshot 7
  • Packeta screenshot 8

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • List active parcels

    GET /v1/packeta/packages/active opendata

    Lists in-flight inbound and outbound parcels for the signed-in home feed, including Z-BOX PIN, COD flags and last pickup date.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • id
    • packet_id
    • direction
    • store
    • delivery_type
    • recipient
    • cod
    • can_pay_cod
    • cod_paid
    • branch
    • carrier
    • status
    • last_pickup_date
    • is_extendable
    • picked_up_on
    • delivery_password
    • consign_password
    • return_password
    • delivery_token
    • zbox
    • zbox_dropoff
    • zbox_password
    • is_zbox_password_visible
    • zbox_flow_version
    • weight
    • is_redirection_enabled
    • is_shareable
    • url
    • name
    • company
    • phone
    • email
    • street
    • city
    • zip
    • country
    • note
    • type
    GET /v1/packeta/packages/active HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    Accept-Language: cs
    {
      "data": [
        {
          "id": 88421,
          "packet_id": 512334455,
          "direction": "incoming",
          "store": "Alza",
          "delivery_type": "zbox",
          "recipient": {
            "name": "Jan Novák",
            "company": "",
            "phone": "+420777123456",
            "email": "[email protected]",
            "street": "Na Příkopě 14",
            "city": "Praha",
            "zip": "11000",
            "country": "CZ"
          },
          "cod": "1290.00",
          "can_pay_cod": true,
          "cod_paid": false,
          "branch": {
            "id": "Z-BOX-PR-12",
            "name": "Z-BOX Praha Na Příkopě"
          },
          "carrier": "packeta",
          "status": {
            "type": "ready_for_pickup",
            "note": "Waiting in Z-BOX"
          },
          "last_pickup_date": "2026-10-12",
          "is_extendable": true,
          "picked_up_on": null,
          "delivery_password": "4821",
          "consign_password": null,
          "return_password": null,
          "delivery_token": "dt-7c11",
          "zbox_password": "4821",
          "is_zbox_password_visible": true,
          "zbox_flow_version": 2,
          "zbox": {
            "box_id": "ZBOX-PR-12-A04"
          },
          "zbox_dropoff": null,
          "weight": 1.4,
          "is_redirection_enabled": true,
          "is_shareable": true,
          "url": "https://tracking.packeta.com/512334455"
        }
      ]
    }
  • Parcel detail

    GET /v1/packeta/packages/{id} opendata

    Loads one parcel card: recipient, carrier, locker PIN, COD state and redirection flags for the detail screen.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • id
    • packet_id
    • direction
    • store
    • delivery_type
    • recipient
    • cod
    • can_pay_cod
    • cod_paid
    • branch
    • carrier
    • status
    • last_pickup_date
    • is_extendable
    • picked_up_on
    • delivery_password
    • consign_password
    • return_password
    • delivery_token
    • zbox
    • zbox_dropoff
    • zbox_password
    • is_zbox_password_visible
    • zbox_flow_version
    • weight
    • is_redirection_enabled
    • is_shareable
    • url
    • name
    • company
    • phone
    • email
    • street
    • city
    • zip
    • country
    • note
    • type
    GET /v1/packeta/packages/88421 HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    Accept-Language: cs
    {
      "data": {
        "id": 88421,
        "packet_id": 512334455,
        "direction": "incoming",
        "store": "Alza",
        "delivery_type": "zbox",
        "recipient": {
          "name": "Jan Novák",
          "company": "",
          "phone": "+420777123456",
          "email": "[email protected]",
          "street": "Na Příkopě 14",
          "city": "Praha",
          "zip": "11000",
          "country": "CZ"
        },
        "cod": "1290.00",
        "can_pay_cod": true,
        "cod_paid": false,
        "branch": {
          "id": "Z-BOX-PR-12",
          "name": "Z-BOX Praha Na Příkopě"
        },
        "carrier": "packeta",
        "status": {
          "type": "ready_for_pickup",
          "note": "Waiting in Z-BOX"
        },
        "last_pickup_date": "2026-10-12",
        "is_extendable": true,
        "picked_up_on": null,
        "delivery_password": "4821",
        "consign_password": null,
        "return_password": null,
        "delivery_token": "dt-7c11",
        "zbox_password": "4821",
        "is_zbox_password_visible": true,
        "zbox_flow_version": 2,
        "zbox": {
          "box_id": "ZBOX-PR-12-A04"
        },
        "zbox_dropoff": null,
        "weight": 1.4,
        "is_redirection_enabled": true,
        "is_shareable": true,
        "url": "https://tracking.packeta.com/512334455"
      }
    }
  • Archived parcels

    GET /v1/packeta/packages/archive opendata

    Pages collected or cancelled parcels by inbound/outbound direction for the archive tab.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • direction
    • page
    • id
    • packet_id
    • is_archived
    • picked_up_on
    • status
    • recipient
    • weight
    GET /v1/packeta/packages/archive?direction=incoming&page=1 HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    {
      "data": [
        {
          "id": 88421,
          "packet_id": 512334455,
          "direction": "incoming",
          "store": "Alza",
          "delivery_type": "zbox",
          "recipient": {
            "name": "Jan Novák",
            "company": "",
            "phone": "+420777123456",
            "email": "[email protected]",
            "street": "Na Příkopě 14",
            "city": "Praha",
            "zip": "11000",
            "country": "CZ"
          },
          "cod": "1290.00",
          "can_pay_cod": true,
          "cod_paid": false,
          "branch": {
            "id": "Z-BOX-PR-12",
            "name": "Z-BOX Praha Na Příkopě"
          },
          "carrier": "packeta",
          "status": {
            "type": "ready_for_pickup",
            "note": "Waiting in Z-BOX"
          },
          "last_pickup_date": "2026-10-12",
          "is_extendable": true,
          "picked_up_on": "2026-10-08T16:22:00Z",
          "delivery_password": "4821",
          "consign_password": null,
          "return_password": null,
          "delivery_token": "dt-7c11",
          "zbox_password": "4821",
          "is_zbox_password_visible": true,
          "zbox_flow_version": 2,
          "zbox": {
            "box_id": "ZBOX-PR-12-A04"
          },
          "zbox_dropoff": null,
          "weight": 1.4,
          "is_redirection_enabled": true,
          "is_shareable": true,
          "url": "https://tracking.packeta.com/512334455",
          "is_archived": true
        }
      ]
    }
  • Create C2C shipment

    POST /v1/packeta/packages opendata

    Creates a C2C shipment from the send flow and returns package_id plus a PayU payment_link.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • adult_content
    • branch_id
    • branch_name
    • cod
    • consign_country
    • currency
    • delivery_type
    • email
    • name
    • payment_method
    • payment_provider
    • phone
    • recipient_address
    • sender_address
    • size_class
    • target_country
    • totalPrice
    • weight
    • package_id
    • total_price
    • payment_link
    • deep_link
    POST /v1/packeta/packages HTTP/1.1
    X-Access-Token: <session-token>
    Content-Type: application/json
    Accept-Language: cs
    
    {
      "adult_content": false,
      "bank_account": null,
      "branch_id": "ZBOX-PR-12",
      "branch_name": "Z-BOX Praha Na Příkopě",
      "cod": 1290.0,
      "consign_country": "CZ",
      "consing_country_id": 1,
      "currency": "CZK",
      "delivery_country_id": 1,
      "delivery_type": "zbox",
      "email": "[email protected]",
      "insurance": null,
      "name": "Jan Novák",
      "payment_method": "card",
      "payment_provider": "payu",
      "phone": "+420777123456",
      "promo_code": null,
      "recipient_address": {
        "street": "Na Příkopě 14",
        "city": "Praha",
        "zip": "11000",
        "country": "CZ"
      },
      "sender_address": {
        "street": "Národní 8",
        "city": "Praha",
        "zip": "11000",
        "country": "CZ"
      },
      "size_class": 1,
      "target_country": "CZ",
      "totalPrice": 89.0,
      "weight": 1400
    }
    {
      "data": {
        "deep_link": "packeta://package/88422",
        "package_id": 88422,
        "total_price": "89.00",
        "currency": "CZK",
        "payment_link": "https://pay.packeta.com/o/88422",
        "google_pay_info": null
      }
    }
  • Quote shipment price

    POST /v1/packeta/packages/quote openfinance

    Returns the C2C tariff (gross, net, VAT) for the selected size class, pickup point and COD amount.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • adult_content
    • branch_id
    • city
    • cod
    • consign_country
    • delivery_type
    • size_class
    • target_country
    • zip
    • sum
    • sum_value
    • sum_currency
    • sum_without_vat_value
    • vat_value
    • vat_percentage_value
    • breakdown
    • payments
    POST /v1/packeta/packages/quote HTTP/1.1
    X-Access-Token: <session-token>
    Content-Type: application/json
    
    {
      "adult_content": 0,
      "branch_id": "ZBOX-PR-12",
      "city": "Praha",
      "cod": 1290.0,
      "consign_country": "CZ",
      "delivery_type": "zbox",
      "email": "[email protected]",
      "insurance": null,
      "name": "Jan Novák",
      "phone": "+420777123456",
      "promo_code": null,
      "size_class": 1,
      "street": "Na Příkopě 14",
      "target_country": "SK",
      "zip": "11000"
    }
    {
      "data": {
        "sum": "89 CZK",
        "sum_value": 89.0,
        "sum_currency": "CZK",
        "sum_without_vat": "73.55 CZK",
        "sum_without_vat_value": 73.55,
        "sum_without_vat_currency": "CZK",
        "sum_presentable": "89 CZK",
        "sum_presentable_value": 89.0,
        "sum_presentable_currency": "CZK",
        "vat": "15.45 CZK",
        "vat_value": 15.45,
        "vat_currency": "CZK",
        "vat_percentage_value": 21.0,
        "vat_summary": true,
        "breakdown": [
          {
            "name": "delivery",
            "value": 89.0
          }
        ],
        "payments": {
          "payu": true,
          "csob": true,
          "google_pay": true
        }
      }
    }
  • Cross-border exchange rate

    GET /v1/packeta/fx openfinance

    Looks up the Packeta FX used when quoting a C2C shipment between two destination countries.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • country_from
    • country_to
    • exchange_rate
    GET /v1/packeta/fx?country_from=CZ&country_to=SK HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    {
      "data": {
        "exchange_rate": 0.0405
      }
    }
  • Initialize PayU card payment

    POST /v1/packeta/payments/card openfinance

    Starts a PayU card charge for a parcel (postage or COD) and returns the hosted checkout link.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • package_id
    • card_token
    • status
    • order_id
    • ext_order_id
    • finished_payment_link
    • verification_link
    POST /v1/packeta/payments/card HTTP/1.1
    X-Access-Token: <session-token>
    Content-Type: application/json
    
    {
      "package_id": 88421,
      "card_token": "tok_payu_4419"
    }
    {
      "data": {
        "status": "PENDING",
        "order_id": "88421-payu",
        "ext_order_id": "PAYU-9f21a",
        "finished_payment_link": "https://secure.payu.com/pay/9f21a",
        "verification_link": null
      }
    }
  • COD payment methods

    GET /v1/packeta/payments/providers openfinance

    Returns the COD till mix (PayU vs ČSOB) and the amount due for a parcel waiting on cash-on-delivery.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • packageId
    • success
    • cod_data
    • recipient_country
    • currency
    • total_price
    • provider
    • webpayu
    • webcsob
    GET /v1/packeta/payments/providers?packageId=88421 HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    {
      "success": true,
      "cod_data": {
        "recipient_country": "CZ",
        "currency": "CZK",
        "total_price": 1290.0
      },
      "provider": "payu",
      "webpayu": {
        "enabled": true
      },
      "webcsob": {
        "enabled": true
      }
    }
  • Pickup point detail

    GET /v1/packeta/pickup-points/{externalId} opendata

    Loads one pickup point or Z-BOX: address, hours, weight limit and whether it can be selected as a drop-off.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • externalId
    • externalBranchId
    • exchangePointId
    • name
    • boxType
    • address
    • coordinates
    • maxWeight
    • openingHours
    • openSince
    • closes
    • flags
    • photos
    • canBeSelected
    • directions
    GET /v1/packeta/pickup-points/ZBOX-PR-12 HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    {
      "address": {
        "street": "Na Příkopě 14",
        "city": "Praha",
        "zip": "11000",
        "country": "CZ"
      },
      "boxType": "zbox",
      "closes": "22:00",
      "coordinates": {
        "latitude": 50.085,
        "longitude": 14.427
      },
      "directions": {
        "walking": "50 m from Můstek"
      },
      "externalBranchId": "BR-PR-12",
      "externalId": "ZBOX-PR-12",
      "flags": {
        "cardPayment": true,
        "wheelchair": false
      },
      "maxWeight": 15,
      "name": "Z-BOX Praha Na Příkopě",
      "openSince": "06:00",
      "openingHours": {
        "monday": "00:00-24:00"
      },
      "photos": [],
      "recommendedPostTime": null,
      "exchangePointId": "EX-PR-12",
      "canBeSelected": true
    }
  • Nearby pickup points by geohash

    GET /v1/packeta/pickup-points opendata

    Returns pickup points and Z-BOX lockers in a map tile for the nearby-points layer.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • geohash
    • externalId
    • name
    • boxType
    • coordinates
    • maxWeight
    GET /v1/packeta/pickup-points?geohash=u2fkb&country=CZ HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    [
      {
        "externalId": "ZBOX-PR-12",
        "name": "Z-BOX Praha Na Příkopě",
        "boxType": "zbox",
        "coordinates": {
          "latitude": 50.085,
          "longitude": 14.427
        },
        "maxWeight": 15
      }
    ]
  • Homefeed

    GET /v1/packeta/homefeed opendata

    Loads the home dashboard: FAQ tiles, promo pages, an optional warning and the nearest pickup point.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • platform
    • language
    • latitude
    • longitude
    • faq_pages
    • nearby_branch
    • promotion_pages
    • warning_message
    • externalId
    • distanceFromOrigin
    • openHours
    GET /v1/packeta/homefeed?platform=android&language=cs&latitude=50.085&longitude=14.427 HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    {
      "homefeed": {
        "faq_pages": [
          {
            "id": "faq-cod",
            "title": "Cash on delivery"
          }
        ],
        "nearby_branch": {
          "address": {
            "street": "Na Příkopě 14",
            "city": "Praha"
          },
          "coordinates": {
            "latitude": 50.085,
            "longitude": 14.427
          },
          "distanceFromOrigin": 180.4,
          "externalId": "ZBOX-PR-12",
          "flags": {
            "cardPayment": true
          },
          "name": "Z-BOX Praha Na Příkopě",
          "openHours": "00:00-24:00",
          "exchangePointId": "EX-PR-12"
        },
        "promotion_pages": [],
        "warning_message": null
      }
    }
  • Closest branch

    GET /v1/packeta/branches/closest opendata

    Returns the nearest Packeta pickup point or Z-BOX to the device coordinates for the home shortcut.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • platform
    • language
    • latitude
    • longitude
    • address
    • coordinates
    • distanceFromOrigin
    • externalId
    • flags
    • name
    • openHours
    • exchangePointId
    GET /v1/packeta/branches/closest?platform=android&language=cs&latitude=50.085&longitude=14.427 HTTP/1.1
    X-Access-Token: <session-token>
    Accept: application/json
    {
      "address": {
        "street": "Na Příkopě 14",
        "city": "Praha"
      },
      "coordinates": {
        "latitude": 50.085,
        "longitude": 14.427
      },
      "distanceFromOrigin": 180.4,
      "externalId": "ZBOX-PR-12",
      "flags": {
        "cardPayment": true
      },
      "name": "Z-BOX Praha Na Příkopě",
      "openHours": "00:00-24:00",
      "exchangePointId": "EX-PR-12"
    }
  • Packet tracking timeline

    POST /v1/packeta/tracking opendata

    Returns the movement timeline (sections and records) for a packet_id on the track-parcel screen.

    Auth: X-Access-Token from the signed-in session. Content-Type and Accept are application/json; Accept-Language is the UI locale.

    • packetId
    • trackingSections
    • title
    • perex
    • order
    • trackingRecords
    • timestamp
    • message
    • messageFormatted
    • formattingArguments
    POST /v1/packeta/tracking HTTP/1.1
    X-Access-Token: <session-token>
    Content-Type: application/json
    
    {
      "packetId": "512334455"
    }
    {
      "data": {
        "packetsTracking": {
          "__typename": "PacketsTrackingV1Payload",
          "trackingSections": [
            {
              "title": "Ready for pickup",
              "perex": "Waiting in Z-BOX Praha Na Příkopě",
              "order": 3,
              "trackingRecords": [
                {
                  "timestamp": "2026-10-09T08:14:00Z",
                  "order": 1,
                  "message": "Parcel inserted into Z-BOX",
                  "messageFormatted": "Parcel inserted into Z-BOX Praha Na Příkopě",
                  "formattingArguments": [
                    {
                      "order": 1,
                      "name": "branch",
                      "url": null
                    }
                  ]
                }
              ]
            }
          ]
        }
      }
    }

Data categories

  • parcels
  • tracking
  • pickup-points
  • lockers
  • cash-on-delivery
  • exchange-rates

Where teams use this data

  • Z-BOX PIN sync for last-mile

    A locker overlay reads packet_id, zbox_password, last_pickup_date and is_zbox_password_visible so a recipient's home screen can surface the live PIN without waiting on SMS, and can hide it once picked_up_on is set.

  • COD and PayU reconciliation

    A shop ledger pulls can_pay_cod, cod and the PayU init (order_id, ext_order_id, finished_payment_link) plus COD till mix (provider, webpayu, webcsob, total_price) to close cash-on-delivery against the parcel.

  • Pickup-point map overlay

    A store-locator posts a geohash and joins externalId, boxType, maxWeight and openingHours so dispatchers route a drop-off to a Z-BOX that still accepts the size class.

  • Cross-border quote monitor

    A CEE shipping desk reads exchange_rate for country_from/country_to and the tariff card (sum_value, vat_value, size_class) before confirming a CZ→SK C2C label.

Frequently asked questions

How does Packeta authenticate parcel and payment calls?

Signed-in calls send X-Access-Token from the session store, plus Content-Type and Accept application/json and Accept-Language for the UI locale. A 401 while the user is still marked logged-in signs the session out.

Which Z-BOX fields appear on an active parcel?

The parcel card returns zbox_password, is_zbox_password_visible, zbox_flow_version, zbox and zbox_dropoff, together with last_pickup_date, delivery_password and delivery_token used to open the locker.

How is cash-on-delivery charged?

The payment-provider call returns provider, webpayu, webcsob and cod_data (recipient_country, currency, total_price). PayU card init posts package_id and card_token and returns order_id plus finished_payment_link; ČSOB card, Google Pay and PayU QR are sibling checkout starts.

Can nearby pickup points be listed?

Yes. A geohash tile returns externalId, boxType, coordinates and maxWeight; the detail call adds openingHours, flags, exchangePointId and canBeSelected. Homefeed also ships the nearest branch as nearby_branch with distanceFromOrigin.

Apps similar to Packeta

  • UPS — UPS is the official Android client of United Parcel Service for tracking shipments, scheduling pickups and managing deliveries.
  • Почта России — Почта России is the official Android client of Russian Post for tracking parcels, paying postage and locating post offices.
  • Nova poshta (old) — Nova poshta (old) is the long-running Android client of Nova Poshta for Ukrainian waybills, branch lookup and cash-on-delivery.

Topics

  • Packeta API
  • Z-BOX zbox_password
  • Packeta packet_id tracking
  • Packeta COD PayU
  • Packeta pickup point externalId
  • Packeta exchange_rate
  • Zásilkovna parcel data
  • Packeta last_pickup_date

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote