Storefront API · Cart
Set an address
PUThttps://{store}/api/v1/cart/addresses/{type}
Sets the shipping or billing address. The shipping address decides the shipping options, so set it before asking for them. Without a billing address the shipping one is used at checkout.
Cart token from
POST /carts: X-Cart-Token: {token}.
Path parameters
typestringrequiredshipping or billing.
shippingbilling
Request body application/json
first_namestringrequiredUp to 120 characters.
last_namestringrequiredUp to 120 characters.
line_onestringrequiredStreet and house. For a branch or pickup any short text; the branch fills the address.
line_twostringFlat, floor.
citystringrequiredCity.
postcodestringPostcode; needed for courier delivery.
country_idintegerrequiredCountry id in the store’s country list.
contact_emailstringBuyer e-mail; checkout needs it here or in its own field.
contact_phonestringBuyer phone; required at checkout.
delivery_instructionsstringNote for the courier, up to 2000 characters.
Example
{
"first_name": "Олена",
"last_name": "Коваль",
"line_one": "вул. Хрещатик, 1",
"city": "Київ",
"postcode": "01001",
"country_id": 1,
"contact_email": "[email protected]",
"contact_phone": "+380671234567"
}
Responses
200The cart.
{
"data": {
"id": "42",
"currency": "UAH",
"lines": [
{
"id": "7",
"purchasable_id": "15",
"quantity": 1,
"unit_price": 599900,
"total": 599900
}
],
"totals": {
"subtotal": 599900,
"shipping": 0,
"tax": 0,
"discount": 0,
"total": 599900
},
"shipping_option": "NOVA_POSHTA",
"shipping_paid_by": "customer",
"shipping_delivery": {
"shipping_method_id": 1,
"shipping_method_code": "NOVA_POSHTA",
"shipping_method_name": "Нова пошта",
"carrier": "nova_poshta",
"carrier_name": "Нова пошта",
"service_type": "branch",
"city_ref": "8d5a980d-391c-11dd-90d9-001a92567626",
"delivery_point_ref": "1ec09d88-e1c2-11e3-8c4a-0050568002cf",
"city_name": "Київ",
"delivery_point_name": "Відділення №12"
}
}
} 422A required field is missing.
{
"message": "The first name field is required.",
"errors": {
"first_name": [
"The first name field is required."
]
}
} 401No X-Cart-Token, an expired token, or a cart that is already ordered.
{
"message": "A valid X-Cart-Token header is required.",
"errors": {
"cart_token": [
"Кошик не знайдено, строк доступу минув або його вже оформлено."
]
}
} 429Too many requests (cart creation 20/min per IP, cart calls 120/min, checkout 10/min).
{
"message": "Too Many Attempts."
}