Skip to content

Get DCC rate

Request

Retrieve the Dynamic Currency Conversion (DCC) rate for a transaction from various providers.

Bodyapplication/jsonrequired
merchantstring, <= 20 charactersrequired

Your unique merchant identifier, as assigned by PXP.

Example:"MERCHANT-1"
sitestring, <= 20 charactersrequired

Your unique site identifier, as assigned by PXP.

Example:"SITE-1"
exchangeRateProviderstringrequired

The exchange rate provider to use for the DCC rate calculation.

Enum:"Elavon""Fexco"
Example:"Elavon"
securityLevelobject(SecurityLevel)required

Details about the security level of the transaction.

transactionMethodobject(TransactionMethod)required

Details about the transaction method.

pointOfInteractionobject(PointOfInteraction)

Details about the point of interaction. This object is optional for Ecom transactions.

amountsobject(RequestAmounts)required
curl -i -X POST \
  https://api-services.pxp.io/api/v1/dcc/rate \
  -H 'Content-Type: application/json' \
  -d '{
    "merchant": "MERCHANT-001",
    "site": "SITE-001",
    "exchangeRateProvider": "Elavon",
    "securityLevel": {
      "primaryAccountNumber": "{primaryAccountNumber}"
    },
    "transactionMethod": {
      "entryMode": "Instore",
      "intent": "Authorisation"
    },
    "pointOfInteraction": {
      "entryType": "ChipAndPin",
      "merchantPointOfSaleId": "POS-001"
    },
    "amounts": {
      "localTransaction": 100,
      "localCurrencyCode": "USD",
      "cardHolderCurrencyCode": "EUR"
    }
  }'

Responses

Success

Bodyapplication/json
statestringrequired

The state of the DCC rate request.

Enum:"Available""NotAvailable""CardEligible""CardNotEligible""Error"
amountsobject(ResponseAmounts)required

Details about the amounts.

exchangeRateobject(ExchangeRate)required

Details about the exchange rate.

messagingobject(Messaging)required

Details about the messaging of the DCC rate request.

providerResponseElavonProviderResponse (object) or FexcoProviderResponse (object)required
One of:

Details about the Elavon provider response.

Response
Example response from Elavon provider
{ "state": "Available", "amounts": { "local": {}, "cardholder": {} }, "exchangeRate": { "rate": 0.855, "exponent": 3, "markUpPercentage": 3.5, "commissionRate": 0.025, "margin": 2.1 }, "messaging": { "markUpMessage": "Competitive exchange rate with 3.5% markup", "disclaimer": "Exchange rate includes markup and may vary" }, "providerResponse": { "provider": "Elavon", "referenceId": "REF123456789", "terminalId": "TERM001" } }