DCC

Create a DCC offer

Verifies that the cardholder's card is eligible for DCC, fetches the latest exchange rate, creates a persisted quote, and returns an offer with a quote ID.

Required OAuth scopes: fx/dcc/create

post/fx/v1/dcc/offers

Request

Request body

card_first9string required

The first 6 to 9 digits of the card PAN, used to determine whether the card is eligible for FX. The provided digits are matched against BIN ranges, so send only the actual digits available from your payment application.

base_amountinteger required

The original total amount of transaction including tips (integer format, in the base currency's minor unit, e.g. 100 to represent $1.00, or 100 US dollar cents)

base_currencystring required

The base (or terminal) currency of the currency pair in ISO-4217 format (e.g. EUR)

cardholder_currencystring

The cardholder's billing currency in ISO-4217 format (e.g. EUR). Optional — when omitted, the currency is resolved from BIN range data using card_first9.

store_idstring uuid required

The store ID associated with this DCC transaction

Example request

{
  "card_first9": "30489000",
  "base_amount": 5000,
  "base_currency": "GBP",
  "cardholder_currency": "EUR",
  "store_id": "550e8400-e29b-41d4-a716-446655440000"
}

Response

DCC offer with quote ID

quote_idstring uuid required

The unique quote identifier (UUIDv7)

exchange_ratestring required

Latest exchange rate for a currency pair (decimal format, with 6 decimal places)

markupstring required

Markup of the offered exchange rate (i.e. amount added) over the latest exchange rate for a currency pair (decimal format)

ecb_markupstring nullable

Markup of the offered exchange rate (i.e. amount added) over the latest ECB exchange rate for a currency pair (decimal format, with 6 decimal places). Only provided when both currencies are EEA currencies.

cardholder_currencystring required

The card currency of the currency pair in ISO-4217 format (e.g. EUR)

cardholder_amountinteger required

The calculated amount from base_currency and rate (integer format, in the smallest card currency's unit, e.g. 100 to represent $1.00, or 100 US dollar cents)

Example response

{
  "quote_id": "019502a0-7e29-7b3c-8f1a-2b3c4d5e6f70",
  "exchange_rate": "1.16",
  "markup": "0.03",
  "ecb_markup": "0.02",
  "cardholder_currency": "EUR",
  "cardholder_amount": 1000
}

Changes

No recorded changes to this operation across all 1 revision of this API.