Order API

Orders administration. Searching, updating, etc.

Order States

GET /api/app/order/state

Request

GET /api/app/order/state HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "Pagination"
    "pageNumber": 1
    "hasNextPage": false
    "items": [
        {
            "_type": "NewOrderState",
            "codename": "new"
        },
        {
            "_type": "PendingOrderState",
            "codename": "pending"
        },
        {
            "_type": "SettledOrderState"
            "codename": "settled"
        }, 
        {
            "_type": "CancelledOrderState",
            "codename": "cancelled"
        },
        {
            "_type": "PendingOrderState"
            "codename": "toBePacked"
        }, 
        {
            "_type": "PendingOrderState"
            "codename": "packed"
        }
    ]
}

Pagination Type

  • pageNumber: int
  • hasNextPage: bool
  • items: array

OrderState Type

  • codename: string

NewOrderState Type

  • extends OrderState

PendingOrderState Type

  • extends OrderState

SettledOrderState Type

  • extends OrderState

CancelledOrderState Type

  • extends OrderState
GET /api/app/order/search

Request Query Parameters

  • searchPhrase: string (optional) - Search phrase
  • page: int (optional) - Page number - default 1
  • orderStates: string[] (optional) - Order state codenames from /api/app/order/state. Multiple values should be separated with comma.
  • dateType: string (optional) - Date type of dateFrom and dateTo parameters. Possible values: orderDatetime, invoiceIssueDate, invoiceDueDate, invoiceTaxableSupplyDate
  • dateFrom: string (optional) - Date from
  • dateTo: string (optional) - Date to
  • isPaid: bool (optional) - Only paid orders

Request

GET /api/app/order/search?page=4&
searchPhrase=123&
orderStates=new,pending&
dateType=orderDatetime&
dateFrom=2020-01-22&
dateTo=2020-01-23&isPaid=false HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "Pagination",
    "pageNumber": 4,
    "hasNextPage": true,
    "items": [
        {
            "_type": "OrderDetail",
            ...
            ... @see Get Order Detail
        }
    ]
}

Order Detail

Get Order Detail

GET /api/app/order/detail/{code}

Path Parameter

  • code: string

Request

GET /api/app/order/detail/1234 HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "OrderDetail",
    "code": "1234",
    "uuid": "c23ed8bd-f801-4fcb-b57c-8273ac789671",
    "orderState": {
        "_type": "NewOrderState",
        "codename": "new"
    },
    "invoiceNumber": "123456",
    "invoiceVariableNumber": 123456,
    "origin": {
        "_type": "ShopOrderOrigin",
        "statusId": null
    },
    "isPaid": false,
    "creationDatetime": "2021-03-25T16:11:07+01:00",
    "userAccount": {
        "_type": "UserAccount",
        "email": "test@test.com",
        "uuid": "414f4f78-0f8b-4c1b-bef5-07748dce30e1"
    },
    "totalPrice": {
        "_type": "Price",
        "amountWithVat": 24762.65,
        "amountWithoutVat": 20465.0,
        "currencyCode": "CZK",
        "vatAmount": 4297.65,
        "vatRateValue": 21.0
    },
    "comment": "some comment",
    "internalNote": "some internal note",
    "tags": [
        {
            "_type": "OrderTag",
            "name": "tag 1"
        },
        {
            "_type": "OrderTag",
            "name": "tag 2"
        }
    ],
    "isProcessedEmailSent": false,
    "isShippedEmailSent": false,
    "isReadyForPersonalPickupEmailSent": false,
    "isCancelledEmailSent": false
    "billingAddress": {
        "_type": "BillingAddress",
        "companyIdentification": {
            "_type": "CompanyIdentification",
            "companyName": "Awesome company",
            "companyRegNumber": "12345",
            "vatIdNumber": "54321",
            "taxIdNumber": "78945"
        },
        "postalAddress": {
            "_type": "PostalAddress",
            "streetAndHouseNumber": "Test 1",
            "city": "Ostrava",
            "postalCode": "78912",
            "country": "CZ",
            "detailedDescription": "First floor"
        }
    },
    "deliveryAddress": {
        "_type": "DeliveryAddress",
        "email": "delivery@test.com",
        "companyName": "Some company"
        "personName": {
            "_type": "PersonName",
            "givenName": "Steve",
            "familyName": "Doe",
            "honorificPrefix": "Ing.",
            "honorificSuffix": "Phd"
        },
        "phoneNumber": {
            "_type": "PhoneNumber",
            "countryPrefix": "420",
            "nationalNumber": "777666555"
        },
        "postalAddress": {
            "_type": "PostalAddress",
            "streetAndHouseNumber": "Test 2",
            "city": "Ostrava",
            "postalCode": "78912",
            "country": "CZ",
            "detailedDescription": "Second floor"
        }
    },
    "contactAddress": {
        "_type": "ContactAddress",
        "email": "test@test.com"
        "personName": {
            "_type": "PersonName",
            "givenName": "John",
            "familyName": "Doe",
            "honorificPrefix": "Ing.",
            "honorificSuffix": "Phd"
        },
        "phoneNumber": {
            "_type": "PhoneNumber",
            "countryPrefix": "420",
            "nationalNumber": "789456123"
        }
    },
    "orderItems": {
        "_type": "Pagination",
        "pageNumber": 1,
        "hasNextPage": false,
        "items": [
            {
                "_type": "DeliveryOrderItem",
                "uuid": "36155c3f-1a1f-42a8-9d57-9fee3ed7e0d6",
                "name": "Delivery 1",
                "codename": "delivery1",
                "count": 1,
                "customCode": "DEV1",
                "linkCustomCode": "DEV1PAY1",
                "deliveryMethodCodename": "upsParcelShop",
                "totalPrice": {
                    "_type": "Price",
                    "amountWithVat": 121.0,
                    "amountWithoutVat": 100.0,
                    "currencyCode": "CZK",
                    "vatAmount": 21.0,
                    "vatRateValue": 21.0
                },
                "unitPrice": {
                    "_type": "Price",
                    "amountWithVat": 121.0,
                    "amountWithoutVat": 100.0,
                    "currencyCode": "CZK",
                    "vatAmount": 21.0,
                    "vatRateValue": 21.0
                },
                "weight": {
                    "_type": "WeightParameter",
                    "value": 20.0,
                    "unit": "kg"                    
                },
                "store": {
                    "_type": "Store",
                    "code": "6532"
                }
            },
            {
                "_type": "PaymentOrderItem",
                "uuid": "71df8dc1-0651-4ca5-8edc-d8995f514132",
                "name": "Payment 1",
                "codename": "payment1",
                "count": 1,
                "customCode": "PAY1",
                "paymentMethodCodename": "stripe_all",
                "totalPrice": {
                    "_type": "Price",
                    "amountWithVat": 121.0,
                    "amountWithoutVat": 100.0,
                    "currencyCode": "CZK",
                    "vatAmount": 21.0,
                    "vatRateValue": 21.0
                },
                "unitPrice": {
                    "_type": "Price",
                    "amountWithVat": 121.0,
                    "amountWithoutVat": 100.0,
                    "currencyCode": "CZK",
                    "vatAmount": 21.0,
                    "vatRateValue": 21.0
                }
            },
            {
                "_type": "ProductOrderItem",
                "uuid": "8a32e944-f040-47bf-9606-1ceb6f46e41a",
                "name": "Product 1",
                "codename": "product1",
                "count": 2,
                "totalPrice": {
                    "_type": "Price",
                    "amountWithVat": 24200.0,
                    "amountWithoutVat": 20000.0,
                    "currencyCode": "CZK",
                    "vatAmount": 4200.0,
                    "vatRateValue": 21.0
                },
                "unitPrice": {
                    "_type": "Price",
                    "amountWithVat": 12100.0,
                    "amountWithoutVat": 10000.0,
                    "currencyCode": "CZK",
                    "vatAmount": 2100.0,
                    "vatRateValue": 21.0
                },
                "retailPrice": {
                    "_type": "Price",
                    "amountWithVat": 12100.0,
                    "amountWithoutVat": 10000.0,
                    "currencyCode": "CZK",
                    "vatAmount": 2100.0,
                    "vatRateValue": 21.0
                },
                "strikethroughPrice": null,
                "weight": {
                    "_type": "WeightParameter",
                    "value": 10.0,
                    "unit": "kg"
                },
                "product": {
                    "_type": "ShoppingProduct",
                    "codename": "product1",
                    "productCodes" : [
                        {
                            "_type": "ProductCode",
                            "type": "ean",
                            "abbreviation": "EAN",
                            "code": "6117148527048",
                            "codeSimplified": "6117148527048"
                        },
                        {
                            "_type": "ProductCode",
                            "type": "custom",
                            "abbreviation": "SKU",
                            "code": "12345",
                            "codeSimplified": "12345"
                        },
                        {
                            "_type": "ProductCode",
                            "type": "manufacturer",
                            "abbreviation": "MPN",
                            "code": "GDB1330",
                            "codeSimplified": "GDB1330"
                        },
                        {
                            "_type": "ProductCode",
                            "type": "oem",
                            "abbreviation": "OEM",
                            "code": "1J0 698 451 D",
                            "codeSimplified": "1J0698451D"
                        }
                    ]
                }
            },
            {
                "_type": "CommonOrderItem",
                "uuid": "b846e366-981e-42c3-9930-ed03fdee6553",
                "name": "Common 1",
                "codename": "common1",
                "count": 3,
                "totalPrice": {
                    "_type": "Price",
                    "amountWithVat": 163.35,
                    "amountWithoutVat": 135.0,
                    "currencyCode": "CZK",
                    "vatAmount": 28.35,
                    "vatRateValue": 21.0
                },
                "unitPrice": {
                    "_type": "Price",
                    "amountWithVat": 54.45,
                    "amountWithoutVat": 45.0,
                    "currencyCode": "CZK",
                    "vatAmount": 9.45,
                    "vatRateValue": 21.0
                }
            },
            {
                "_type": "DepositOrderItem",
                "uuid": "c99a86db-af6b-4946-9601-20014b72add5 ",
                "name": "Deposit to Product 1",
                "codename": "depositProduct1",
                "count": 2,
                "totalPrice": {
                    "_type": "Price",
                    "amountWithVat": 180.0,
                    "amountWithoutVat": 150.0,
                    "currencyCode": "CZK",
                    "vatAmount": 30.0,
                    "vatRateValue": 21.0
                },
                "unitPrice": {
                    "_type": "Price",
                    "amountWithVat": 90.75,
                    "amountWithoutVat": 75.0,
                    "currencyCode": "CZK",
                    "vatAmount": 15.75,
                    "vatRateValue": 21.0
                },
                "product": {
                    "_type": "ShoppingProduct",
                    "codename": "product1",
                    "productCodes" : [
                        {
                            "_type": "ProductCode",
                            "type": "ean",
                            "abbreviation": "EAN",
                            "code": "6117148527048",
                            "codeSimplified": "6117148527048"
                        },
                        {
                            "_type": "ProductCode",
                            "type": "custom",
                            "abbreviation": "SKU",
                            "code": "12345",
                            "codeSimplified": "12345"
                        },
                        {
                            "_type": "ProductCode",
                            "type": "manufacturer",
                            "abbreviation": "MPN",
                            "code": "GDB1330",
                            "codeSimplified": "GDB1330"
                        },
                        {
                            "_type": "ProductCode",
                            "type": "oem",
                            "abbreviation": "OEM",
                            "code": "1J0 698 451 D",
                            "codeSimplified": "1J0698451D"
                        }
                    ]
                }
            },
            {
                "_type": "BonusPointsOrderItem",
                "uuid": " b4a6578c-9434-4ab6-9b15-015446c9cc3e ",
                "name": "Applied bonus points",
                "codename": "bonusPoints1",
                "count": 1,
                "totalPrice": {
                    "_type": "Price",
                    "amountWithVat": 24.2,
                    "amountWithoutVat": 20.0,
                    "currencyCode": "CZK",
                    "vatAmount": 4.2,
                    "vatRateValue": 21.0
                },
                "unitPrice": {
                    "_type": "Price",
                    "amountWithVat": 24.2,
                    "amountWithoutVat": 20.0,
                    "currencyCode": "CZK",
                    "vatAmount": 4.2,
                    "vatRateValue": 21.0
                }
            }
        ]
    },
    "transportUrl": "sometransporturl.com/1234",
    "transportInfo": "Some transport info",
    "isReverseCharged": false
}

OrderDetail Type

  • code: string
  • uuid: string
  • orderState: OrderState
  • invoiceNumber: string
  • invoiceVariableNumber: int
  • origin: OrderOrigin
  • isPaid: bool
  • creationDatetime: string
  • userAccount: UserAccount
  • totalPrice: Price
  • comment: string
  • internalNote: string
  • tags: OrderTag[]
  • isProcessedEmailSent: bool
  • isShippedEmailSent: bool
  • isReadyForPersonalPickupEmailSent: bool
  • isCancelledEmailSent: bool
  • billingAddress: BillingAddress
  • deliveryAddress: DeliveryAddress
  • contactAddress: ContactAddress
  • orderItems: Pagination
  • transportUrl: string - It is for the full URL for tracking the shipment.
  • transportInfo: string - It is for any text information that is related to the transport for the given order. For example, it can contain the shipment number with any text.
  • isReverseCharged: bool

Update OrderDetail

PATCH /api/app/order/detail/{code}

Request Path Parameter

  • code: string

Request

PATCH /api/app/order/detail/1234 HTTP/1.1
Host: yourshopname.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

{
    "orderState": {
        "_type": "SettledOrderState",
        "codename": "settled"
    }
    "isPaid": true,
    "transportUrl": "sometransporturl.com/4321",
    "transportInfo": "Updated transport info"
}

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "OrderDetail",
    "code": "1234",
    "uuid": "c23ed8bd-f801-4fcb-b57c-8273ac789671",
    "orderState": {
        "_type": "SettledOrderState",
        "codename": "settled",
        "name": "Vyřízena"
    },
    "invoiceNumber": "123456",
    "invoiceVariableNumber": 123456,
    "origin": {
        "_type": "ShopOrderOrigin",
        "statusId": null
    },
    "isPaid": true,
    "transportUrl": "sometransporturl.com/4321",
    "transportInfo": "Updated transport info"
    ... 
    ... @see Get Order Detail
}

Reverse Charge OrderDetail

PATCH /api/app/order/detail/reverse-charge/{code}

Request Path Parameter

  • code: string - Order code

Request

POST /api/app/order/detail/reverse-charge/1234 HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip
Content-Type: application/json

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "OrderDetail",
    "code": "1234",
    "uuid": "c23ed8bd-f801-4fcb-b57c-8273ac789671",
    "orderState": {
        "_type": "SettledOrderState",
        "codename": "settled",
        "name": "Vyřízena"
    },
    "invoiceNumber": "123456",
    "invoiceVariableNumber": 123456,
    "origin": {
        "_type": "ShopOrderOrigin",
        "statusId": null
    },
    "isPaid": true,
    "transportUrl": "sometransporturl.com/4321",
    "transportInfo": "Updated transport info"
    "totalPrice": {
        "_type": "Price",
        "amountWithVat": 20465.0,
        "amountWithoutVat": 20465.0,
        "currencyCode": "CZK",
        "vatAmount": 0.0,
        "vatRateValue": 0.0
    },
    "isReverseCharged": true
    ... 
    ... @see Get Order Detail
}

Order Items

Get Order Items

GET /api/app/order/items/{code}

Request path parameter

  • code: string - Order code

Request query parameter

  • page: int

Request

GET /api/app/order/items/1234?page=2  HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "Pagination",
    "pageNumber": 2,
    "hasNextPage": false,
    "items": [
        {
            "_type": "ProductOrderItem",
            ...            
            ... @see Get Order Item"
        }
    ]        
}

Get Order Item

GET /api/app/order/item/{uuid}

Request Path Parameter

  • uuid: UUID string

Request

GET /api/app/order/item/8a32e944-f040-47bf-9606-1ceb6f46e41a HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "ProductOrderItem",
    "uuid": "8a32e944-f040-47bf-9606-1ceb6f46e41a",
    "name": "Product 1",
    "codename": "product1",
    "count": 2,
    "totalPrice": {
        "_type": "Price",
        "amountWithVat": 24200.0,
        "amountWithoutVat": 20000.0,
        "currencyCode": "CZK",
        "vatAmount": 4200.0,
        "vatRateValue": 21.0
    },
    "unitPrice": {
        "_type": "Price",
        "amountWithVat": 12100.0,
        "amountWithoutVat": 10000.0,
        "currencyCode": "CZK",
        "vatAmount": 2100.0,
        "vatRateValue": 21.0
    },
    "retailPrice": {
        "_type": "Price",
        "amountWithVat": 12100.0,
        "amountWithoutVat": 10000.0,
        "currencyCode": "CZK",
        "vatAmount": 2100.0,
        "vatRateValue": 21.0
    },
    "strikethroughPrice": null,
    "weight": {
        "_type": "WeightParameter",
        "value": 10.0,
        "unit": "kg"
    },
    "product": {
        "_type": "ShoppingProduct",
        "codename": "product1",
        "productCodes" : [
            {
                "_type": "ProductCode",
                "type": "ean",
                "abbreviation": "EAN",
                "code": "6117148527048",
                "codeSimplified": "6117148527048"
            },
            {
                "_type": "ProductCode",
                "type": "custom",
                "abbreviation": "SKU",
                "code": "12345",
                "codeSimplified": "12345"
            },
            {
                "_type": "ProductCode",
                "type": "manufacturer",
                "abbreviation": "MPN",
                "code": "GDB1330",
                "codeSimplified": "GDB1330"
            },
            {
                "_type": "ProductCode",
                "type": "oem",
                "abbreviation": "OEM",
                "code": "1J0 698 451 D",
                "codeSimplified": "1J0698451D"
            }
        ]
    },
    "supply": {
        "_type": "Supply",
        "type": "import",
        "supplierCodename": "supplier1",
        "supplierName": "Supplier 1",
        "code": "123456",
        "orderingNumber": "789546"
    }
}

OrderItem Type

  • uuid: string
  • name: string
  • codename: string
  • count: int
  • totalPrice: Price
  • unitPrice: Price
  • weight: float

ProductOrderItem Type

  • extends OrderItem
  • product: ShoppingProduct - ShoppingProduct readonly
  • supply: Supply(optional) - readonly Supply
  • retailPrice: ?Price - Price for non-logged in customers at the time of purchase.
  • strikthroughPrice: ?Price - Strikthrough price displayed for the particular customer at the time of purchase.

DeliveryOrderItem Type

  • extends OrderItem
  • store: Store - readonly
  • customCode: string - readonly
  • linkCustomCode: string - readonly
  • deliveryMethodCodename: string - readonly

PaymentOrderItem Type

  • extends OrderItem
  • customCode: string - readonly
  • paymentMethodCodename: string - readonly

DepositOrderItem Type

  • extends OrderItem
  • product: ShoppingProduct - readonly

RoundingOrderItem Type

  • extends OrderItem

CouponOrderItem Type

  • extends OrderItem

CommonOrderItem Type

  • extends OrderItem

BonusPointsOrderItem Type

  • extends OrderItem

AdditionalServiceOrderItem Type

  • extends OrderItem

Store Type

  • code: string - Code of the store

Price Type

  • amountWithVat: float
  • amountWithoutVat: float
  • currencyCode: string
  • vatAmount: float
  • vatRateValue: float

Supply type

  • type: string - One of custom, import, warehouse
  • supplierCodename: string(optional) - unique identifier of supplier
  • supplierName: string(optional) - display name of supplier
  • code: string(optional) - unique code for given supplier
  • orderingNumber: string(optional) - ordering number

Update Order Item

PATCH /api/app/order/item/{uuid}

Request Path Parameter

  • uuid: string

Request

PATCH /api/app/order/item/8a32e944-f040-47bf-9606-1ceb6f46e41a HTTP/1.1
Host: yourshopname.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

{
    "count": 10
}

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type:": "Pagination",
    "pageNumber": 1,
    "hasNextPage": false,
    "items":[
        {
            "_type": "ProductOrderItem",
            "uuid": "8a32e944-f040-47bf-9606-1ceb6f46e41a",
            "name": "Product 1",
            "codename": "product1",
            "count": 10,
            "totalPrice": {
                "_type": "Price",
                "amountWithVat": 24200.0,
                "amountWithoutVat": 20000.0,
                "currencyCode": "CZK",
                "vatAmount": 4200.0,
                "vatRateValue": 21.0
            },
            "unitPrice": {
                "_type": "Price",
                "amountWithVat": 12100.0,
                "amountWithoutVat": 10000.0,
                "currencyCode": "CZK",
                "vatAmount": 2100.0,
                "vatRateValue": 21.0
            },
            "retailPrice": {
                "_type": "Price",
                "amountWithVat": 12100.0,
                "amountWithoutVat": 10000.0,
                "currencyCode": "CZK",
                "vatAmount": 2100.0,
                "vatRateValue": 21.0
            },
            "strikethroughPrice": null,
            "weight": {
                "_type": "WeightParameter",
                "value": 10.0,
                "unit": "kg"
            }
        }
    ]
}

Create New Order Item

PUT /api/app/order/item/{code}

Request path parameter

  • code: string - Order code

Request

PUT /api/app/order/item/1234 HTTP/1.1
Host: yourshopname.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

{
    "_type": "ProductOrderItem",
    "codename": "product1",
    "count": 2
}

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type:": "Pagination",
    "pageNumber": 1,
    "hasNextPage": false,
    "items":[
        {
            "_type": "ProductOrderItem",
            "uuid": "8a32e944-f040-47bf-9606-1ceb6f46e41a",
            "name": "Product 1",
            "codename": "product1",
            "count": 2,
            "totalPrice": {
                "_type": "Price",
                "amountWithVat": 24200.0,
                "amountWithoutVat": 20000.0,
                "currencyCode": "CZK",
                "vatAmount": 4200.0,
                "vatRateValue": 21.0
            },
            "unitPrice": {
                "_type": "Price",
                "amountWithVat": 12100.0,
                "amountWithoutVat": 10000.0,
                "currencyCode": "CZK",
                "vatAmount": 2100.0,
                "vatRateValue": 21.0
            },
            "retailPrice": {
                "_type": "Price",
                "amountWithVat": 12100.0,
                "amountWithoutVat": 10000.0,
                "currencyCode": "CZK",
                "vatAmount": 2100.0,
                "vatRateValue": 21.0
            },
            "strikethroughPrice": null,
            "weight": {
                "_type": "WeightParameter",
                "value": 10.0,
                "unit": "kg"
            }
        }
    ]
}

Delete Order Item

DELETE /api/app/order/item/{uuid}

Request Path Parameter

  • uuid: UUID string

Request

DELETE /api/app/order/item/8a32e944-f040-47bf-9606-1ceb6f46e41a HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Encoding: br

Order History

Get Order History

GET /api/app/order/history/{code}

Request path parameter

  • code: string - Order code

Request query parameter

  • page: int (optional) - Page number - default 1

Request

GET /api/app/order/items/1234?page=2  HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: br

{
    "_type": "Pagination",
    "pageNumber": 2,
    "hasNextPage": false,
    "items": [
        {            
            "_type": "OrderHistory",
            "type": "InsertedOrderedProductHistory",
            "orderCode": "1234",
            "dateTime": "2021-04-22T09:38:15+02:00",
            "parameters": {
                "name": "Product 1",
                "codename": "product1"
            },
            "userAccount": {
                "_type": "UserAccount",
                "email": "test@test.com",
                "uuid": "d0bf1a66-a9e6-4f00-9f68-837012b63af2"
            },
            "orderItemUuid": "42570ab0-4ef0-44b2-9089-f930ccf9caff"        
        }
    ]
}

OrderHistory Type

  • type: string - type of OrderHistory
  • orderCode: string|null - code of order
  • dateTime: string - Date and time string of order history
  • parameters: object - additional parameters describing order history
  • userAccount: UserAccount|null - user account info
  • orderItemUuid: string|null - UUID string of related Order Item

Order Use-case

POST /api/app/order/use-case

Request

POST /api/app/order/use-case HTTP/1.1
Host: yourshopname.com
Authorization: Bearer ACCESS_TOKEN_STRING
Accept-Encoding: gzip
Content-Type: application/json

{
    "_type": "SendEmailOrderUseCase",
    "orderFilter": {
        "_type": "OrderFilter",
        "codes": ["1234", "6541"]
    },
    "emailUseCaseType": "readyForPersonalPickup",
    "isForceSend": false
}

Response

HTTP/1.1 200 OK
Content-Encoding: br

{
    "_type": "OrderUseCaseResult"
}

OrderUseCase Type

  • orderFilter: OrderFilter - Order filter

OrderFiler Type

  • codes: string[] - array of Order codes, maximum: 30 codes

Request Type SendEmailOrderUseCase

  • extends OrderUseCase
  • emailUseCaseType: string - Possible values: readyForPersonalPickup, cancelled, edited, processed, shipped
  • isForceSend: bool

Order JSON

The full order data for the given order code serialized as JSON.

The JSON is derived from the order's XML representation. It preserves the same hierarchy and data as the XML export, but attributes become @-prefixed keys, text content becomes #text values, and repeated sibling elements are collected into arrays.

JSON Structure Notes

How XML maps to JSON

  1. XML attributes become object keys prefixed with @.

    <status code="1" name="New"/>
    

    becomes

    "status": [ { "@code": "1", "@name": "New" } ]
    
  2. Text content of an element becomes "#text" when the element also has attributes or child elements.

    <comment>Please leave at door</comment>
    

    becomes

    "comment": [ { "#text": "Please leave at door" } ]
    
  3. Repeated child elements with the same name under the same parent become arrays.

    <ean>1234567890123</ean>
    <ean>9876543210987</ean>
    

    becomes

    "ean": [
      { "#text": "1234567890123" },
      { "#text": "9876543210987" }
    ]
    
  4. Single child elements also become arrays with one item, because XmlUtils::toArray() groups children by tag name.

    <time datetime="2024-01-15 09:30:00" timestamp="1705311000" timezone="Europe/Prague"/>
    

    becomes

    "time": [
      { "@datetime": "2024-01-15 09:30:00", "@timestamp": "1705311000", "@timezone": "Europe/Prague" }
    ]
    
  5. Empty elements (no attributes, no text, no children) become empty objects {}.

  6. CDATA sections are treated as plain text and appear under #text.

Element Reference

The JSON object is the root <order> element serialized as an array. It has the following keys:

  • @uuid: Unique order identifier (UUID v4).
  • @code: Human-readable order code (e.g. ORD-2024-001).
  • @variableNumber: Legacy variable symbol for bank transfers. Same value as @paymentReferenceNumber, kept for backward compatibility.
  • @paymentReferenceNumber: Payment reference number used for matching incoming bank transfers.
  • @invoiceNumber: Issued invoice number, if any. Empty string when no invoice has been issued.
  • @originName: Order origin channel (e.g. "eshop", "heureka", "zbozi").
  • @originStatusId: Marketplace-specific order status ID. Only present for marketplace-origin orders.
  • @originCode: Marketplace-specific order code. Only present for marketplace-origin orders.
  • @currencyCode: ISO 4217 currency code of the order (e.g. CZK, EUR).
  • @languageCode: ISO 639-1 language code of the order (e.g. cs, en, sk).
  • @domainName: Shop domain without www prefix.
  • status: Array with one object containing @code and @name.
  • time: Array with one object containing @datetime, @timestamp, and @timezone.
  • money: Array with one object containing @totalPrice, @totalPriceWithoutVat, and @currencyCode.
  • comment: Array with one object containing #text. Only present when the customer left a comment.
  • internalNote: Array with one object containing #text. Only present when set by staff.
  • subscribedToNewsletter: Array with one object containing @email. Only appears when the contact email belongs to a user account with an active newsletter agreement.
  • user: Array with one object for registered user accounts linked to the order contact email. Omitted entirely for guest checkouts. Contains:
    • @id, @uuid, @email, @codename, @registered, @banned
    • internalNote: Array with one object containing #text. Only present when non-empty.
    • lastEditTime: Array with one object containing @datetime, @timestamp, @timezone.
    • registrationTime: Array with one object containing @datetime, @timestamp, @timezone. Only present for registered accounts.
    • bonusPoints: Array with one object containing @sum and @lastChange. Only present for registered accounts.
    • addresses: Array with one object containing:
      • contactAddress: Array of objects with @uuid, @primary, personName, emailAddress, phoneNumber.
      • deliveryAddress: Array of objects with @uuid, @primary, personName, companyName, postalAddress, emailAddress, phoneNumber.
      • billingAddress: Array of objects with @uuid, @primary, companyIdentification, postalAddress.
    • userGroups: Array with one object containing userGroup array. Each userGroup has @type, @codename, @name, @membership, and optionally userGroupLinkHistory.
    • referrerUrl: Array with one object containing @url. Only present when captured.
    • ip: Array with one object containing #text. Only present when captured.
  • contactInfo: Array with one object containing @firstName, @familyName, @email, @phoneNumber, and a nested phoneNumber array with @countryPrefix and @nationalNumber.
  • billingInfo: Array with one object containing @countryCode, @companyName, @companyRegNumber, @ic, @vatIdNumber, @taxIdNumber, @dic, @isVatIdVerified, address, and optionally addressAutocomplete.
    • address: Array with one object containing @detailedDescription, @street, @city, @postcode, @countryCode.
    • addressAutocomplete: Array with one object containing @type, postalAddress, and optionally location.
  • deliveryInfo: Array with one object containing @countryCode, @companyName, @firstName, @familyName, @email, @phoneNumber, phoneNumber, address, and optionally addressAutocomplete.
    • address: Array with one object containing @detailedDescription, @street, @city, @postcode, @countryCode, and optionally county.
      • county: Array with one object containing @name, @code, @type.
  • payments: Array with one object containing a payment array.
    • payment: Array of objects. When payment entities exist, one object per transaction; otherwise a single legacy payment object.
      • Attributes: @methodName, @customCode, @linkCustomCode, @externalNumber, @externalState, @priceAmount, @currency, @createdDatetime, @updatedDatetime (legacy path may omit createdDatetime and conditionally include updatedDatetime).
      • paymentDoneCheck: Array with one object containing @done.
      • k2Payment: Array with one object containing @paymentId and @paymentDeliveryLinkId. Only present when xmlToDatabase module has enableK2ElementsInOrder enabled.
  • deliveries: Array with one object containing a delivery array.
    • delivery: Array of objects with @methodName, @packageCount, @customCode, @priceCustomCode, optionally store, and optionally k2Delivery.
      • store: The element name matches the method name (e.g. dpd, zasilkovna) with @storeId, @storeCode, @storeName.
      • k2Delivery: Array with one object containing @deliveryId and @deliveryPriceId. Only present when enableK2ElementsInOrder is enabled.
  • deliveryDateTime: Array with one object containing @text and #text. Only present when set.
  • deliveryPartialConfirmed, deliveryAfternoonConfirmed, deliveryTodayConfirmed: Arrays with one object containing #text. Only present when confirmed tags are configured.
  • bonusPoints: Array with one object containing @changeAmount and @totalAmount. Only present when bonusSystem module is enabled and rewards are active.
  • orderedProducts: Array with one object containing a orderedProduct array.
    • orderedProduct: Array of polymorphic objects.
      • type="product": Contains @name, @count, @vat, @type, @id, money, and optionally strikethroughPrice, retailPrice, vehicle, vehicleSearchResultDetail, deliveryDateTime, deliveryDateTimePickupInStore, deliveryPartialConfirmed, deliveryAfternoonConfirmed, deliveryTodayConfirmed, primarySupply, availableSupplies, ean, upc, tecdoc, mainPartNo, brandName, product, k2Product, refundableDeposit, availabilityLabel.
        • money: Array with one object containing @price, @priceWithoutVat, @totalPrice, @totalPriceWithoutVat, @currencyCode, @vat.
        • strikethroughPrice / retailPrice: Array with one object containing @amountWithoutVat, @amountWithVat, @currencyCode, @vatRateName, @vatRate, @vatAmount.
        • pricing: Array with one object containing pricingSteps. Only present when pricing history exists.
          • pricingSteps: Array with one object. Each XML pricing step element appears under its own key derived from the XML element name (e.g. productPricePricingStep, supplyPricingStep, discountPricingStep). Because each step name typically appears once, each key holds an array with one object containing @finalPrice (price query string) plus the step's type-specific attributes. Nested complex values such as currencyPair, surchargePricingStep, and retailApplicationSurchargePricingStep become nested child arrays. - Price query string format: a set of &-separated key/value pairs. @finalPrice example: "C=CZK&A=1500.00&Z=1815.00&VAT=315.00&VATRATE=21". C is the ISO 4217 currency code, A is the amount without VAT, Z is the amount with VAT (included only when it differs from A), VAT is the VAT amount, and VATRATE is the VAT percentage. Both VAT and VATRATE are included only when VAT is non-zero.
        • vehicle: Array with one object containing @slugPath, @vehicleBrandName, @vehicleModelName, @name, @powerKwFrom, @powerHpFrom, @monthFrom, @monthTo.
        • primarySupply / availableSupplies: Contain supply arrays with @supplierName, @supplierCodename, @supplierKey, @supplierCustomCode, @orderingNumber, @disabled, @multipleBuyQuantity, money, stock.
        • tecdoc: Array with one object containing @articleNo, @simplifiedArticleNo, @brandNo, @brandName, @crossed, @genericArticleId.
        • brandName: Array with one object containing @isOriginal and #text.
        • product: Array with one object containing @codename, @name, url, note, unit, piecesCount, warranty, productPrices, productGroups, productCodes, images, supplies.
        • k2Product: Array with one object containing @productId.
        • refundableDeposit: Array with one object containing #text (yes, probably, or no).
        • availabilityLabel: Array with one object containing @code, @label, @shortLabel, @shortSubLabel, @subLabel, @color, description, shortDescription.
      • type="delivery": Contains @name, @count, @vat, @type, @id, money, and optionally k2Delivery.
      • type="payment": Contains @name, @count, @vat, @type, @id, money, and optionally k2Payment.
  • invoices: Array with one object containing an invoice array. Only present when invoice number is assigned.
    • invoice: Array of objects with @invoiceNumber, issueDate, dueDate, taxableSupplyDate.
      • issueDate: Array with one object containing date array with @date and @timezone.
      • dueDate: Same structure as issueDate. Only present when set.
      • taxableSupplyDate: Same structure as issueDate. Only present when set.
  • receipts: Produced by the factory but intentionally omitted from this example.

Conditional Elements

The JSON conditional behavior mirrors the XML exactly:

  • comment appears only when the customer left a non-empty comment during checkout.
  • internalNote at the order level appears only when staff has set an internal note.
  • subscribedToNewsletter appears only when the contact email is linked to a registered user account that has an active newsletter agreement.
  • user appears only for registered customers. Inside user, registrationTime, bonusPoints, and addresses are omitted for unregistered placeholder accounts. Guest checkouts omit the entire user object, which also means referrerUrl and ip are absent because they are nested inside user.
  • referrerUrl and ip inside user appear only when the respective values were captured during order placement.
  • billingInfo and deliveryInfo addressAutocomplete objects appear only when the address was resolved via an autocomplete service during checkout.
  • deliveryInfo address may contain a county sub-array depending on the country address format.
  • payments always exists. When payment entities exist, payment contains multiple objects per transaction; otherwise it falls back to a single legacy payment object.
  • deliveries delivery may contain a store child for pickup-point deliveries.
  • k2Delivery and k2Payment appear only when the xmlToDatabase module has enableK2ElementsInOrder enabled.
  • deliveryPartialConfirmed, deliveryAfternoonConfirmed, and deliveryTodayConfirmed at both order and product level appear only when the corresponding order item tags are configured as confirmed.
  • bonusPoints at the order level appears only when the bonusSystem module is enabled and rewards are active.
  • orderedProduct is polymorphic:
    • type="product" represents a merchandise line item. Many child objects are conditional on product configuration and module settings.
    • type="delivery" represents shipping costs.
    • type="payment" represents payment fees.
  • invoices appears only when an invoice number has been assigned.
  • pricing appears only for product-type ordered products that have stored pricing step history. The step objects appear under keys named after the XML step element names (e.g. productPricePricingStep, supplyPricingStep).
  • Marketplace orders (e.g. Heureka) include @originStatusId and @originCode on the root object.

Example JSON

{
    "@uuid": "a3f7c912-1d4b-4e6f-8c2a-3b9d0e5f7a18",
    "@code": "ORD-2024-001",
    "@variableNumber": "1234567890",
    "@paymentReferenceNumber": "1234567890",
    "@invoiceNumber": "INV-2024-001",
    "@originName": "eshop",
    "@originStatusId": "42",
    "@originCode": "HEU-12345",
    "@currencyCode": "CZK",
    "@languageCode": "en",
    "@domainName": "example.com",
    "status": [
        {
            "@code": "1",
            "@name": "New"
        }
    ],
    "time": [
        {
            "@datetime": "2024-01-15 09:30:00",
            "@timestamp": "1705311000",
            "@timezone": "Europe/Prague"
        }
    ],
    "money": [
        {
            "@totalPrice": "1250.00",
            "@totalPriceWithoutVat": "1033.06",
            "@currencyCode": "CZK"
        }
    ],
    "comment": [
        {
            "#text": "Please leave the package at the front door"
        }
    ],
    "internalNote": [
        {
            "#text": "VIP customer - handle with care"
        }
    ],
    "subscribedToNewsletter": [
        {
            "@email": "customer@example.com"
        }
    ],
    "user": [
        {
            "@id": "123",
            "@uuid": "b4g8d023-2e5c-5f7g-9d3b-4c0e1f6g8b29",
            "@email": "customer@example.com",
            "@codename": "customer001",
            "@registered": "true",
            "@banned": "false",
            "internalNote": [
                {
                    "#text": "VIP customer"
                }
            ],
            "lastEditTime": [
                {
                    "@datetime": "2024-01-10 14:20:00",
                    "@timestamp": "1704897600",
                    "@timezone": "Europe/Prague"
                }
            ],
            "registrationTime": [
                {
                    "@datetime": "2023-06-01 10:00:00",
                    "@timestamp": "1685606400",
                    "@timezone": "Europe/Prague"
                }
            ],
            "bonusPoints": [
                {
                    "@sum": "150",
                    "@lastChange": "2024-01-10T14:20:00+01:00"
                }
            ],
            "addresses": [
                {
                    "contactAddress": [
                        {
                            "@uuid": "c5h9e134-3f6d-6g8h-0e4c-5d1f2g7h9c30",
                            "@primary": "true",
                            "personName": [
                                {
                                    "@givenName": "John",
                                    "@familyName": "Doe"
                                }
                            ],
                            "emailAddress": [
                                {
                                    "@email": "customer@example.com"
                                }
                            ],
                            "phoneNumber": [
                                {
                                    "@countryPrefix": "+420",
                                    "@nationalNumber": "123456789"
                                }
                            ]
                        }
                    ],
                    "deliveryAddress": [
                        {
                            "@uuid": "d6i0f245-4g7e-7h9i-1f5d-6e2g3h8i0d41",
                            "@primary": "true",
                            "personName": [
                                {
                                    "@givenName": "John",
                                    "@familyName": "Doe"
                                }
                            ],
                            "companyName": [
                                {
                                    "#text": "Acme Ltd."
                                }
                            ],
                            "postalAddress": [
                                {
                                    "@streetAndHouseNumber": "Main Street 123",
                                    "@city": "Prague",
                                    "@postalCode": "11000",
                                    "@countryCode": "CZ",
                                    "@detailedDescription": "Floor 2"
                                }
                            ],
                            "emailAddress": [
                                {
                                    "@email": "customer@example.com"
                                }
                            ],
                            "phoneNumber": [
                                {
                                    "@countryPrefix": "+420",
                                    "@nationalNumber": "123456789"
                                }
                            ]
                        }
                    ],
                    "billingAddress": [
                        {
                            "@uuid": "e7g1h356-5h8f-8i0j-2g6e-7f3h4i9j1e52",
                            "@primary": "true",
                            "companyIdentification": [
                                {
                                    "@companyName": "Acme Ltd.",
                                    "@companyRegNumber": "12345678",
                                    "@vatIdNumber": "CZ12345678",
                                    "@taxIdNumber": "CZ12345678"
                                }
                            ],
                            "postalAddress": [
                                {
                                    "@streetAndHouseNumber": "Main Street 123",
                                    "@city": "Prague",
                                    "@postalCode": "11000",
                                    "@countryCode": "CZ",
                                    "@detailedDescription": "Floor 2"
                                }
                            ]
                        }
                    ]
                }
            ],
            "userGroups": [
                {
                    "userGroup": [
                        {
                            "@type": "agreement",
                            "@codename": "newsletter",
                            "@name": "Newsletter",
                            "@membership": "included",
                            "userGroupLinkHistory": [
                                {
                                    "@variantName": "Newsletter",
                                    "ip": [
                                        {
                                            "#text": "192.168.1.1"
                                        }
                                    ],
                                    "userAgent": [
                                        {
                                            "#text": "Mozilla/5.0"
                                        }
                                    ],
                                    "time": [
                                        {
                                            "@datetime": "2023-06-01 10:00:00",
                                            "@timestamp": "1685606400",
                                            "@timezone": "Europe/Prague"
                                        }
                                    ]
                                }
                            ]
                        }
                    ]
                }
            ],
            "referrerUrl": [
                {
                    "@url": "https://google.com"
                }
            ],
            "ip": [
                {
                    "#text": "192.168.1.1"
                }
            ]
        }
    ],
    "contactInfo": [
        {
            "@firstName": "John",
            "@familyName": "Doe",
            "@email": "customer@example.com",
            "@phoneNumber": "+420123456789",
            "phoneNumber": [
                {
                    "@countryPrefix": "+420",
                    "@nationalNumber": "123456789"
                }
            ]
        }
    ],
    "billingInfo": [
        {
            "@countryCode": "CZ",
            "@companyName": "Acme Ltd.",
            "@companyRegNumber": "12345678",
            "@ic": "12345678",
            "@vatIdNumber": "CZ12345678",
            "@taxIdNumber": "CZ12345678",
            "@dic": "CZ12345678",
            "@isVatIdVerified": "true",
            "address": [
                {
                    "@detailedDescription": "Floor 2",
                    "@street": "Main Street 123",
                    "@city": "Prague",
                    "@postcode": "11000",
                    "@countryCode": "CZ"
                }
            ],
            "addressAutocomplete": [
                {
                    "@type": "addressAutocomplete",
                    "postalAddress": [
                        {
                            "streetAndHouseNumber": [
                                {
                                    "#text": "Main Street 123"
                                }
                            ],
                            "city": [
                                {
                                    "#text": "Prague"
                                }
                            ],
                            "postalCode": [
                                {
                                    "#text": "110 00"
                                }
                            ]
                        }
                    ],
                    "location": [
                        {
                            "lat": [
                                {
                                    "#text": "50.0755"
                                }
                            ],
                            "lng": [
                                {
                                    "#text": "14.4378"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "deliveryInfo": [
        {
            "@countryCode": "CZ",
            "@companyName": "Acme Ltd.",
            "@firstName": "John",
            "@familyName": "Doe",
            "@email": "customer@example.com",
            "@phoneNumber": "+420123456789",
            "phoneNumber": [
                {
                    "@countryPrefix": "+420",
                    "@nationalNumber": "123456789"
                }
            ],
            "address": [
                {
                    "@detailedDescription": "Floor 2",
                    "@street": "Main Street 123",
                    "@city": "Prague",
                    "@postcode": "11000",
                    "@countryCode": "CZ",
                    "county": [
                        {
                            "@name": "Prague",
                            "@code": "CZ010",
                            "@type": "region"
                        }
                    ]
                }
            ],
            "addressAutocomplete": [
                {
                    "@type": "addressAutocomplete",
                    "postalAddress": [
                        {
                            "streetAndHouseNumber": [
                                {
                                    "#text": "Main Street 123"
                                }
                            ],
                            "city": [
                                {
                                    "#text": "Prague"
                                }
                            ],
                            "postalCode": [
                                {
                                    "#text": "110 00"
                                }
                            ]
                        }
                    ],
                    "location": [
                        {
                            "lat": [
                                {
                                    "#text": "50.0755"
                                }
                            ],
                            "lng": [
                                {
                                    "#text": "14.4378"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "payments": [
        {
            "payment": [
                {
                    "@methodName": "card",
                    "@customCode": "CARD-01",
                    "@linkCustomCode": "LINK-01",
                    "@externalNumber": "PAY-12345",
                    "@externalState": "done",
                    "@priceAmount": "1250.00",
                    "@currency": "CZK",
                    "@createdDatetime": "2024-01-15T09:30:00+01:00",
                    "@updatedDatetime": "2024-01-15T09:35:00+01:00",
                    "paymentDoneCheck": [
                        {
                            "@done": "true"
                        }
                    ],
                    "k2Payment": [
                        {
                            "@paymentId": "CARD-01",
                            "@paymentDeliveryLinkId": "LINK-01"
                        }
                    ]
                }
            ]
        }
    ],
    "deliveries": [
        {
            "delivery": [
                {
                    "@methodName": "dpd",
                    "@packageCount": "1",
                    "@customCode": "DPD-01",
                    "@priceCustomCode": "DPD-PRICE-01",
                    "dpd": [
                        {
                            "@storeId": "DPD-123",
                            "@storeCode": "DP123",
                            "@storeName": "Prague Central"
                        }
                    ],
                    "k2Delivery": [
                        {
                            "@deliveryId": "DPD-01",
                            "@deliveryPriceId": "DPD-PRICE-01"
                        }
                    ]
                }
            ]
        }
    ],
    "deliveryDateTime": [
        {
            "@text": "Monday, Jan 15",
            "#text": "2024-01-15"
        }
    ],
    "deliveryPartialConfirmed": [
        {
            "#text": "true"
        }
    ],
    "deliveryAfternoonConfirmed": [
        {
            "#text": "false"
        }
    ],
    "deliveryTodayConfirmed": [
        {
            "#text": "true"
        }
    ],
    "bonusPoints": [
        {
            "@changeAmount": "50",
            "@totalAmount": "150"
        }
    ],
    "orderedProducts": [
        {
            "orderedProduct": [
                {
                    "@name": "Bosch Brake Pads",
                    "@count": "2",
                    "@vat": "21.0",
                    "@type": "product",
                    "@id": "BPB-123456",
                    "money": [
                        {
                            "@price": "500.00",
                            "@priceWithoutVat": "413.22",
                            "@totalPrice": "1000.00",
                            "@totalPriceWithoutVat": "826.45",
                            "@currencyCode": "CZK",
                            "@vat": "21.0"
                        }
                    ],
                    "strikethroughPrice": [
                        {
                            "@amountWithoutVat": "450.00",
                            "@amountWithVat": "544.50",
                            "@currencyCode": "CZK",
                            "@vatRateName": "Standard",
                            "@vatRate": "21",
                            "@vatAmount": "94.50"
                        }
                    ],
                    "retailPrice": [
                        {
                            "@amountWithoutVat": "413.22",
                            "@amountWithVat": "500.00",
                            "@currencyCode": "CZK",
                            "@vatRateName": "Standard",
                            "@vatRate": "21",
                            "@vatAmount": "86.78"
                        }
                    ],
                    "pricing": [
                        {
                            "pricingSteps": [
                                {
                                    "supplyPricingStep": [
                                        {
                                            "@finalPrice": "C=CZK&A=1200.00&Z=1452.00&VAT=252.00&VATRATE=21",
                                            "@supplierCodename": "autopartssupplier",
                                            "@supplierKey": "A98765",
                                            "@supplyPriceAmount": "1200",
                                            "@supplyCurrencyCode": "CZK",
                                            "@supplierPriceAdjustmentMultiplier": "1",
                                            "@supplierPriceAdjustmentAdd": "0",
                                            "@supplierPriceAdjustmentCurrencyCode": "CZK"
                                        }
                                    ],
                                    "productPricePricingStep": [
                                        {
                                            "@finalPrice": "C=CZK&A=1500.00&Z=1815.00&VAT=315.00&VATRATE=21",
                                            "@productPriceType": "retail",
                                            "@productPriceUuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
                                            "@forAllUsers": "true",
                                            "@productCodename": "BPB-123456"
                                        }
                                    ],
                                    "discountPricingStep": [
                                        {
                                            "@finalPrice": "C=CZK&A=1350.00&Z=1633.50&VAT=283.50&VATRATE=21",
                                            "@discountUuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
                                            "@discountPrice": "C=CZK&A=150.00&Z=181.50&VAT=31.50&VATRATE=21",
                                            "@discountPercents": "10",
                                            "@discountType": "product_discount",
                                            "@discountCode": "SUMMER10"
                                        }
                                    ]
                                }
                            ]
                        }
                    ],
                    "vehicle": [
                        {
                            "@slugPath": "skoda/octavia-iii",
                            "@vehicleBrandName": "Skoda",
                            "@vehicleModelName": "Octavia III",
                            "@name": "Skoda Octavia III 1.6 TDI",
                            "@powerKwFrom": "77",
                            "@powerHpFrom": "105",
                            "@monthFrom": "2012-11",
                            "@monthTo": "2020-12"
                        }
                    ],
                    "vehicleSearchResultDetail": [
                        {
                            "#text": "VIN detail"
                        }
                    ],
                    "deliveryDateTime": [
                        {
                            "@text": "Monday, Jan 15",
                            "#text": "2024-01-15"
                        }
                    ],
                    "deliveryDateTimePickupInStore": [
                        {
                            "@text": "Tuesday, Jan 16",
                            "#text": "2024-01-16"
                        }
                    ],
                    "deliveryPartialConfirmed": [
                        {
                            "#text": "true"
                        }
                    ],
                    "deliveryAfternoonConfirmed": [
                        {
                            "#text": "false"
                        }
                    ],
                    "deliveryTodayConfirmed": [
                        {
                            "#text": "true"
                        }
                    ],
                    "primarySupply": [
                        {
                            "supply": [
                                {
                                    "@supplierName": "LocalStock",
                                    "@supplierCodename": "localstock",
                                    "@supplierKey": "BOS-BP1234",
                                    "@supplierCustomCode": "LOC-01",
                                    "@orderingNumber": "BOS-BP1234",
                                    "@disabled": "false",
                                    "@multipleBuyQuantity": "1",
                                    "money": [
                                        {
                                            "@priceWithoutVat": "300.00",
                                            "@purchasePrice": "200.00",
                                            "@currencyCode": "CZK"
                                        }
                                    ],
                                    "stock": [
                                        {
                                            "@status": "available",
                                            "@availableCount": "15"
                                        }
                                    ]
                                }
                            ]
                        }
                    ],
                    "availableSupplies": [
                        {
                            "supply": [
                                {
                                    "@supplierName": "LocalStock",
                                    "@supplierCodename": "localstock",
                                    "@supplierKey": "BOS-BP1234",
                                    "@supplierCustomCode": "LOC-01",
                                    "@orderingNumber": "BOS-BP1234",
                                    "@disabled": "false",
                                    "money": [
                                        {
                                            "@priceWithoutVat": "300.00",
                                            "@purchasePrice": "200.00",
                                            "@currencyCode": "CZK"
                                        }
                                    ],
                                    "stock": [
                                        {
                                            "@status": "available",
                                            "@availableCount": "15"
                                        }
                                    ]
                                }
                            ]
                        }
                    ],
                    "ean": [
                        {
                            "#text": "1234567890123"
                        }
                    ],
                    "upc": [
                        {
                            "#text": "123456789012"
                        }
                    ],
                    "tecdoc": [
                        {
                            "@articleNo": "BP1234",
                            "@simplifiedArticleNo": "BP1234",
                            "@brandNo": "123",
                            "@brandName": "Bosch",
                            "@crossed": "no",
                            "@genericArticleId": "456"
                        }
                    ],
                    "mainPartNo": [
                        {
                            "#text": "BP1234"
                        }
                    ],
                    "brandName": [
                        {
                            "@isOriginal": "true",
                            "#text": "Bosch"
                        }
                    ],
                    "product": [
                        {
                            "@codename": "3b9d0e5f7a18a3f7c912",
                            "@name": "Bosch Brake Pads BP1234",
                            "url": [
                                {
                                    "#text": "example.com/bosch-brake-pads-bp1234"
                                }
                            ],
                            "note": [
                                {
                                    "#text": "High quality brake pads"
                                }
                            ],
                            "unit": [
                                {
                                    "#text": "pcs"
                                }
                            ],
                            "piecesCount": [
                                {
                                    "#text": "1"
                                }
                            ],
                            "warranty": [
                                {
                                    "#text": "24"
                                }
                            ],
                            "productPrices": [
                                {
                                    "productPrice": [
                                        {
                                            "@type": "retail",
                                            "price": [
                                                {
                                                    "@amountWithoutVat": "413.22",
                                                    "@amountWithVat": "500.00",
                                                    "@currencyCode": "CZK",
                                                    "@vatRateName": "Standard",
                                                    "@vatRate": "21",
                                                    "@vatAmount": "86.78"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "productGroups": [
                                {
                                    "productGroup": [
                                        {
                                            "@type": "category",
                                            "@name": "Brake Pads",
                                            "@codename": "brake-pads"
                                        }
                                    ]
                                }
                            ],
                            "productCodes": [
                                {
                                    "productCode": [
                                        {
                                            "@type": "ean",
                                            "@code": "1234567890123",
                                            "@codeSimplified": "1234567890123",
                                            "@abbreviation": "EAN"
                                        },
                                        {
                                            "@type": "mpn",
                                            "@code": "BP1234",
                                            "@codeSimplified": "BP1234",
                                            "@abbreviation": "MPN",
                                            "@brandName": "Bosch"
                                        }
                                    ]
                                }
                            ],
                            "images": [
                                {
                                    "image": [
                                        {
                                            "url": [
                                                {
                                                    "#text": "cdn.example.com/img/bp1234.jpg"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "supplies": [
                                {
                                    "supply": [
                                        {
                                            "@supplierName": "LocalStock",
                                            "@supplierCodename": "localstock",
                                            "@supplierKey": "BOS-BP1234",
                                            "@supplierCustomCode": "LOC-01",
                                            "@orderingNumber": "BOS-BP1234",
                                            "@disabled": "false",
                                            "money": [
                                                {
                                                    "@priceWithoutVat": "300.00",
                                                    "@purchasePrice": "200.00",
                                                    "@currencyCode": "CZK"
                                                }
                                            ],
                                            "stock": [
                                                {
                                                    "@status": "available",
                                                    "@availableCount": "15"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ]
                        }
                    ],
                    "k2Product": [
                        {
                            "@productId": "BOS-BP1234"
                        }
                    ],
                    "refundableDeposit": [
                        {
                            "#text": "yes"
                        }
                    ],
                    "availabilityLabel": [
                        {
                            "@code": "in-stock",
                            "@label": "In stock",
                            "@shortLabel": "In stock",
                            "@shortSubLabel": "Shipping today",
                            "@subLabel": "Ships within 24 hours",
                            "@color": "#00AA00",
                            "description": [
                                {
                                    "#text": "Item is in stock and ships immediately."
                                }
                            ],
                            "shortDescription": [
                                {
                                    "#text": "In stock"
                                }
                            ]
                        }
                    ]
                },
                {
                    "@name": "DPD",
                    "@count": "1",
                    "@vat": "21.0",
                    "@type": "delivery",
                    "@id": "DPD-01",
                    "money": [
                        {
                            "@price": "150.00",
                            "@priceWithoutVat": "123.97",
                            "@totalPrice": "150.00",
                            "@totalPriceWithoutVat": "123.97",
                            "@currencyCode": "CZK",
                            "@vat": "21.0"
                        }
                    ],
                    "k2Delivery": [
                        {
                            "@deliveryId": "DPD-01",
                            "@deliveryPriceId": "DPD-PRICE-01"
                        }
                    ]
                },
                {
                    "@name": "Card payment",
                    "@count": "1",
                    "@vat": "21.0",
                    "@type": "payment",
                    "@id": "CARD-01",
                    "money": [
                        {
                            "@price": "0.00",
                            "@priceWithoutVat": "0.00",
                            "@totalPrice": "0.00",
                            "@totalPriceWithoutVat": "0.00",
                            "@currencyCode": "CZK",
                            "@vat": "21.0"
                        }
                    ],
                    "k2Payment": [
                        {
                            "@paymentId": "CARD-01",
                            "@paymentDeliveryLinkId": "LINK-01"
                        }
                    ]
                }
            ]
        }
    ],
    "invoices": [
        {
            "invoice": [
                {
                    "@invoiceNumber": "INV-2024-001",
                    "issueDate": [
                        {
                            "date": [
                                {
                                    "@date": "2024-01-15",
                                    "@timezone": "Europe/Prague"
                                }
                            ]
                        }
                    ],
                    "dueDate": [
                        {
                            "date": [
                                {
                                    "@date": "2024-01-29",
                                    "@timezone": "Europe/Prague"
                                },
                                {
                                    "@date": "2024-01-29",
                                    "@timezone": "Europe/Prague"
                                }
                            ]
                        }
                    ],
                    "taxableSupplyDate": [
                        {
                            "date": [
                                {
                                    "@date": "2024-01-15",
                                    "@timezone": "Europe/Prague"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}