Skip to content

DCC rate

Add details about a Dynamic Currency Conversion (DCC) rate to your request.

Add DCC data

Request example

To include DCC data, add the following snippet to the body of your transaction request.

{
  "dccData": {
    "rateSelectedIndicator": "Selected",  
    "amounts": {
      "local": {
        "transaction": 100.00,
        "currencyCode": "USD"
      },
      "cardholder": {
        "transaction": 85.50,
        "currencyCode": "EUR"
      }
    },
    "exchangeRate": {
      "rate": 0.855,
      "exponent": 3,
      "markUpPercentage": 3.5,
      "commissionRate": 0.025,
      "margin": 2.1
    },
    "providerData": {
      "provider": "Elavon",
      "referenceId": "REF123456789",
      "merchantId": "MERCH001",
      "terminalId": "TERM001"    
    }
  }
}
ParameterDescription
dccData
object
Details about the Dynamic Currency Conversion (DCC).
dccData.rateSelectedIndicator
string (enum)
required
Whether a DCC rate was selected for the transaction.

Possible values:
  • NotSelected
  • Selected
  • NotAvailable
  • CardNotEligible
  • Error
dccData.amounts
object
required
Details about the transaction amount in the local currency and the cardholder's currency.
dccData.amounts.local
string
required
Details about the transaction amount in the local currency.
dccData.amounts.local.transaction
number
required
The transaction amount in the local currency.
dccData.amounts.local.currencyCode
string
required
The currency code, in ISO 4217 format.
dccData.amounts.cardholder
object
required
Details about the transaction amount in the cardholder's currency.
dccData.amounts.cardholder.transaction
number
required
The transaction amount in the cardholder's currency.
dccData.amounts.cardholder.currencyCode
string
required
The currency code, in ISO 4217 format.
dccData.exchangeRate
object
required
Details about the exchange rate used for the DCC.
dccData.exchangeRate.rate
number
required
The exchange rate used for the DCC.
dccData.exchangeRate.exponent
number
required
The exponent used to calculate the DCC rate.
dccData.exchangeRate.markUpPercentage
number
required
The mark-up percentage applied to the transaction.
dccData.exchangeRate.commissionRate
number
required
The commission rate applied to the transaction.
dccData.exchangeRate.margin
number
required
The margin applied to the transaction.
dccData.providerData
object
required
Details about the DCC provider.
dccData.providerData.provider
string
required
The name of the DCC provider.
dccData.providerData.referenceId
string
required
The reference ID provided by the DCC provider. This is required if your provider is Elavon, otherwise it's ignored.
dccData.providerData.merchantId
string
required
The merchant ID assigned by the DCC provider. This is required if your provider is Elavon, otherwise it's ignored.
dccData.providerData.terminalId
string
required
The terminal ID assigned by the DCC provider. This is required if your provider is Elavon, otherwise it's ignored.

Response example

If your request is successful, you'll receive a 200 response containing a dccResult object.

{
  "dccResult": {
    "rateSelectedIndicator": "Selected",
    "amounts": {
      "local": {
        "transaction": 100.00,
        "currencyCode": "USD"
      },
      "cardHolder": {
        "transaction": 85.50,
        "currencyCode": "EUR"
      }
    },
    "markUpRate": {
      "message": "A 3.5% markup has been applied over the base exchange rate.",
      "percentage": 3.5,
      "language": "en"
    },
    "commissionPercent": 2.1,
    "exchangeRate": {
      "rate": 1.44,
      "source": "European Central Bank",
      "sourceDate": "2020-04-02T14:29:15.8626809+01:00"
    },
    "providerData": {
      "name": "Elavon Merchant Services",
      "referenceId": "3213123213",
      "terminalId": "TID67777",
    },
    "dccDisclosure": {
      "message": "You are offered to pay in EUR. This includes a 3.5% commission above the base rate of 0.9245 provided by Elavon.",
      "language": "en"
    }
  }
}
ParameterDescription
dccResult
object
Details about the DCC result, including the rate selected indicator, amounts, mark-up rate, commission percentage, exchange rate, provider data, and DCC disclosure.
dccResult.rateSelectedIndicator
string (enum)
The selected rate for the DCC transaction.

Possible values:
  • NotSelected
  • Selected
  • NotAvailable
  • CardNotEligible
  • Error
dccData.amounts.local
string
required
Details about the transaction amount in the local currency.
dccData.amounts.local.transaction
number
required
The transaction amount in the local currency.
dccData.amounts.local.currencyCode
string
required
The currency code, in ISO 4217 format.
dccData.amounts.cardholder
object
required
Details about the transaction amount in the cardholder's currency.
dccData.amounts.cardholder.transaction
number
required
The transaction amount in the cardholder's currency.
dccData.amounts.cardholder.currencyCode
string
required
The currency code, in ISO 4217 format.
dccResult.markUpRate
object
Details about the mark-up rate for the DCC transaction.
dccResult.markUpRate.message
string (≤ 255 characters)
The message about the mark-up rate for the DCC transaction.
dccResult.markUpRate.percentage
number
The percentage of the mark-up rate for the DCC transaction.
dccResult.markUpRate.language
string (≤ 2 characters)
The language of the message.
dccResult.commissionPercent
number
The commission percentage for the DCC transaction.
dccResult.exchangeRate
object
Details about the exchange rate for the DCC transaction.
dccResult.exchangeRate.rate
number
The rate of the exchange rate for the DCC transaction.
dccResult.exchangeRate.source
string (≤ 100 characters)
The source of the exchange rate for the DCC transaction.
dccResult.exchangeRate.sourceDate
string (≤ 50 characters)
The date of the exchange rate for the DCC transaction.
dccResult.provider
object
Details about the DCC provider.
dccResult.providerData.name
string (≤ 100 characters)
The name of the DCC provider.
dccResult.providerData.referenceId
string (≤ 80 characters)
The reference ID provided by the DCC provider.
dccResult.providerData.terminalId
string (≤ 30 characters)
The terminal ID assigned by the DCC provider.
dccResult.dccDisclosure
object
Details about the DCC disclosure.
dccResult.dccDisclosure.message
string (≤ 255 characters)
The message of the DCC disclosure for the DCC transaction.
dccResult.dccDisclosure.language
string (2 characters)
The language of the message.