Pricing
The Pricing capability adds pricing information to the Product
and Unit
objects through the API.
Using this capability, products will display their available and default currencies.
Product Units will display pricing currency and amounts, including net, retail, and original prices. Additionally, the amount of taxes included in the product price can be displayed.
To use this capability, include the redeam/pricing
value in the X-Capabilities
HTTP header:
X-Capabilities: redeam/pricing
If your pricing is date based please utilize the Price Schedule capability, not this Pricing capability
If the Pricing capability is not implemented, resellers who are connected to Redeam and using Pricing with the Booking API will see a net/retail price of $0 USD.
GET
/suppliers/:supplierId/products
Unit Changes
A list of prices (pricingFrom
) is added to each Product Option's Unit object, with each price containing four fields:
Field Name | Format | Required | Description |
---|---|---|---|
original | integer | No | Operator's published price* before discounts |
retail | integer | No | Amount* paid by the traveler for the product |
net | integer | No | Amount* paid by a channel to the operator for a product |
currency | string(ISO4217) | No | The currency of the price being paid |
Option
An Option represents a variant of a Pricing Capability. The Option object's fields, value types and descriptions are enumerated below:
Field Name | Format | Required | Description |
---|---|---|---|
pricingType | string | No | Expected values are ESTIMATE or FINAL. If the price is subject to change, use "ESTIMATE”. If the value is not sent, it will be defaulted to "FINAL". |
The amount of each price is stored in the currency's fractional unit.
For example, a price with a currency of US Dollars (USD
) would be represented in cents; making a net cost of ten US Dollars ($10) a value of 1000
.
Example
{
// ... rest of Product object
"options": [
{
// ... rest of ProductOption object
"units": [
{
// ... rest of Unit object
"pricingFrom": [
{
"original": 4500,
"retail": 4500,
"net": 3500,
"currency": "USD"
},
{
"original": 4000,
"retail": 4000,
"net": 3000,
"currency": "GBP"
}
]
}
]
}
]
}
Included Taxes
The includedTaxes
array lists any taxes or fees that are already included in the retail or net price.
Note: Either original
, net
or retail
must be included, all of them may be provided if applicable.
Each includedTaxes
object must contain the following fields:
Field Name | Format | Required | Description |
---|---|---|---|
id | string | No | A unique identifier for the tax or fee. Typically used for internal reference or integration purposes. |
name | string | Yes | A short name or description of the tax being applied (e.g., "VAT", "City Tax"). |
currency | string | Yes | The currency code (ISO 4217 format) in which the tax amount is expressed (e.g., "USD", "EUR").
The currency must match the currency used for the unit item's price (original , net , or retail ) |
original | int64 | Optional - conditionally required | The amount of tax or fee applied to the original price. At least one of |
net | int64 | Optional - conditionally required | The amount of tax or fee applied to the net price. At least one of |
retail | int64 | Optional - conditionally required | The amount of tax or fee applied to the retail price. At least one of |
Example
If taxes are included, the amount will be shown in the price under the includedTaxes
list.
{
// ... rest of Product object
"options": [
{
// ... rest of ProductOption object
"units": [
{
// ... rest of Unit object
"pricingFrom": [
{
"original": 4500,
"retail": 4500,
"net": 3500,
"currency": "USD",
"includedTaxes": [
{
"id": "vat_001",
"name": "VAT",
"currency": "USD",
"retail": 500
},
{
"id": "local_fee_002",
"name": "Local Tourism Fee",
"currency": "USD",
"net": 100
}
]
}
]
}
]
}
]
}