BizKitHub
DocsAPI ReferenceCart/api/v1/cart/detail
getCartPublic API v1

/api/v1/cart/detail

Returns the full cart state including items, prices, available delivery/payment methods, and their valid combinations. Creates a new cart if cartId is not provided.

cartgetApiV1CartDetail

Parameters

3 query

Query parameters

· 3
apiKeystringRequired

Your BizKitHub API key (passed as GET parameter).

Key format: A 32-character string matching: ^(PROD|DEV_|ROOT)[A-Za-z0-9]{28}$
Prefixes: PROD (production key), DEV_ (individual developer), ROOT (system key with no limits). Learn more

ExamplePRODPGrFxpGEtrOZfuWhnoJohUYBXuOE
cartIdstringOptional

Existing cart ID. If omitted or invalid, a new empty cart is returned.

Exampleb411056d304d9y6mHe2SoMFBL2Apxfnb
customerRealIpstringOptional

Accepted formats:

  • IPv4 dot-decimal, e.g. 1.1.1.1 (4 octets, 0–255, no leading zeros).
  • IPv6 as defined by RFC 4291 — full 2001:0db8:0000:0000:0000:0000:0000:0001, zero-compressed 2001:db8::1, IPv4-mapped ::ffff:1.2.3.4, or scoped literals. Both upper- and lower-case hex are accepted.

Server-side canonicalization (ipNormalize in core/src/lib/network/ipNormalize.ts):

  • Valid IPv4 is passed through verbatim.
  • Valid IPv6 is lowercased (RFC 5952 §4.3).
  • IPv4-mapped IPv6 ::ffff:X.X.X.X is unwrapped to plain IPv4 (RFC 4291 §2.5.5.2) so 1.2.3.4 and ::ffff:1.2.3.4 share one brj__geo_ip row.
  • Loopback aliases (::1, 0.0.0.0, localhost, empty string) collapse to 127.0.0.1.
  • Junk values that fail both IPv4 and IPv6 validation are silently rejected and replaced with 127.0.0.1 (loopback).

On the wire: every response returns the canonicalized form — clients can safely rely on lowercase IPv6 and the plain-IPv4 unwrap when de-duping or joining. Server-originated writers (activity log, session log, ban list) resolve the visitor IP via resolveClientIp / resolveClientIpOrNull — always native IPv6 on Vercel Edge (there is no auto-mapping to ::ffff:X.X.X.X).

Enrichment: the system resolves reverse DNS, geolocation, ASN, mobile/proxy/hosting/Tor flags via our VikiTron GEO/IP resolver for both address families. Learn more

Example1.1.1.1

Response schema

1 status code documented

200Success
idstringRequired
Exampleb411056d304d9y6mHe2SoMFBL2Apxfnb
customerIdstringOptional
ExampleHxanU4a1n4El61zx
customerNamestringOptional
ExampleJan Barášek
customerEmailstringOptional

Contact email address.

The system validates the input as a standard email address and automatically applies normalization and canonicalization.

All API responses return the normalized form, and each email address is unique per organisation within the system.

Phone-only contacts: Since 2026-06-10 a contact may exist without an e-mail when it was registered only by phone (e.g. imports of phone-only records). Responses that expose such contacts use API_EMAIL_NULLABLE instead, where this field can be null. Endpoints that accept e-mail as input still require a valid value here — phone-only creation goes through admin-only import / BFF flows.

Examplejan@barasek.com
currencystringRequired

Currency code. Format: 3-letter uppercase code (e.g. CZK).
Supported values: CZK, EUR, USD.

ExamplesCZKEURUSD
priceTotalnumberRequired
Example12699
deliveryCodestringOptional
Examplepacketa
deliveryBranchIdnumberOptional
deliveryBranchProviderstringOptional
paymentCodestringOptional
Examplecomgate
deliveryListobject[]Required
Each array item:
namestringRequired
ExampleZásilkovna
codestringRequired
Examplepacketa
descriptionstringOptional
pricenumberRequired
Example59
activebooleanRequired
Exampletrue
selectedbooleanOptional
Examplefalse
paymentListobject[]Required
Each array item:
namestringRequired
ExampleOnline platba kartou
codestringRequired
Examplecomgate
descriptionstringOptional
ExamplePlatební brána Comgate
pricenumberRequired
Example0
activebooleanRequired
Exampletrue
selectedbooleanOptional
Examplefalse
deliveryAndPaymentCombinationsobject[]Required
Each array item:
deliveryCodestringRequired
Examplepacketa
paymentCodestringRequired
Examplecomgate
itemsobject[]Required
Each array item:
idstringRequired
Examplev211g68VlHP98w3s
labelstringRequired
ExampleCoca cola zero
mainImageUrlstringOptional
Examplehttps://storage.xhp.cz/...
productCodestringRequired
Examplecoca-cola
productSlugstringRequired
Examplecoca-cola
variantCodestringOptional
Examplecoca-cola-zero
priceobjectRequired
priceWithVatnumberRequired

Cena s DPH.

Example0
currencystringRequired

Currency code. Format: 3-letter uppercase code (e.g. CZK).
Supported values: CZK, EUR, USD.

ExamplesCZKEURUSD
priceWithoutVatnumberRequired

Cena bez DPH.

Example0
vatnumberRequired

Výše DPH v procentech.

Example21
currencyLocalestringRequired

Místní označení měny.

ExampleKč
quantitynumberRequired
Example4

Response example

application/json
{
  "id": "b411056d304d9y6mHe2SoMFBL2Apxfnb",
  "customerId": "HxanU4a1n4El61zx",
  "customerName": "Jan Barášek",
  "customerEmail": "jan@barasek.com",
  "currency": "CZK",
  "priceTotal": 12699,
  "deliveryCode": "packeta",
  "deliveryBranchId": 0,
  "deliveryBranchProvider": "example_deliveryBranchProvider",
  "paymentCode": "comgate",
  "deliveryList": [
    {
      "name": "Zásilkovna",
      "code": "packeta",
      "description": "example_description",
      "price": 59,
      "active": true,
      "selected": false
    }
  ],
  "paymentList": [
    {
      "name": "Online platba kartou",
      "code": "comgate",
      "description": "Platební brána Comgate",
      "price": 0,
      "active": true,
      "selected": false
    }
  ],
  "deliveryAndPaymentCombinations": [
    {
      "deliveryCode": "packeta",
      "paymentCode": "comgate"
    }
  ],
  "items": [
    {
      "id": "v211g68VlHP98w3s",
      "label": "Coca cola zero",
      "mainImageUrl": "https://storage.xhp.cz/...",
      "productCode": "coca-cola",
      "productSlug": "coca-cola",
      "variantCode": "coca-cola-zero",
      "price": {
        "priceWithVat": 0,
        "currency": "CZK",
        "priceWithoutVat": 0,
        "vat": 21,
        "currencyLocale": "Kč"
      },
      "quantity": 4
    }
  ]
}

Request example

GET /api/v1/cart/detail

get
curl -X GET "https://api.bizkithub.com/api/v1/cart/detail?apiKey=PRODPGrFxpGEtrOZfuWhnoJohUYBXuOE&cartId=b411056d304d9y6mHe2SoMFBL2Apxfnb&customerRealIp=1.1.1.1" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY"

Need an API key?

All BizKitHub public API endpoints require authentication via API key.

Get API Key