Skip to content

Get prices for the signed-in buyer

GET
/storefront/sites/{host}/prices
curl --request GET \
--url 'https://example.com/storefront/sites/northgate.shop.getbottle.app/prices?customerId=019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f'

Deliberately without a staff session: a signed-in shopper. The shop’s published products priced for the chosen customer (customerId, else the first they may order for), trade or household, as an order for them is priced: their own price rules, their agreed rate, their rate set’s rules and prices, trade or consumer rules, then the trade or list price. volume gives the bands where a rule makes more than one price. priceDisplay is ex for a trade customer of a VAT-registered business, and pricePence is in that basis; both readings are given. Never cached.

host
required
string
Example
northgate.shop.getbottle.app
customerId

UUID v7

string format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f

UUID v7

Prices

Media typeapplication/json
object
priceDisplay
required
string
Allowed values: inc ex
customerId
required

UUID v7

string format: uuid
prices
required
Array<object>
object
productId
required

UUID v7

string format: uuid
pricePence
required
integer
pricePenceIncVat
required
integer
pricePenceExVat
required
integer
depositPence
required
integer | null
rentPence
integer | null
rentPeriod
string | null
Allowed values: daily weekly monthly
volume
object
counting
required
string
Allowed values: stepped bulk
bands
required
Array<object>
>= 2 items
object
fromQuantity
required
integer
toQuantity
required
integer | null
unitPence
required
integer
unitPenceExVat
required
integer
Example
{
"priceDisplay": "inc",
"customerId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f",
"prices": [
{
"productId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f",
"rentPeriod": "daily",
"volume": {
"counting": "stepped"
}
}
]
}

Refused: the message says why

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Not signed in

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Not from the shop itself, or the email is not confirmed yet

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Not a shop. No body.

A real shop not selling now (shop_closed)

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Validation failed

Media typeapplication/json
object
error
required
string
Allowed values: validation
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{
"error": "validation",
"issues": [
{
"path": "email",
"message": "Invalid email"
}
]
}

Too many tries

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}