Authorize.Net · Decline codes
What does Authorize.Net 39 “The supplied currency code is invalid or not supported” mean?
Checked
Authorize.Net response reason code 39 means the supplied currency code is invalid, not supported, not allowed for this merchant, or has no exchange rate. Authorize.Net explains that only one currency can be set for one account, and that this error appears when currencyCode differs from the account's currency or the account was created without a valid currency.
- Type
- Error (merchant setup)
- Who declined
- Your Authorize.Net account currency
- Retry
- No, until the currency matches your account.
- Shopper action
- Nothing; the store needs to fix this.
- Merchant action
- Charge in your account's currency or open an account for the other currency.
What PlatformDTC does
PlatformDTC shows Authorize.Net's message for code 39 and does not reroute it; currency is set by the store's own Authorize.Net account, so the fix is on that account.
Why it happens
Authorize.Net's explanation of code 39 lists AUD, CAD, CHF, DKK, EUR, GBP, NOK, NZD, PLN, SEK, USD and ZAR, with one currency per account. Sending a currency other than the account's returns code 39.
What the store can do
Charge in the currency your Authorize.Net account uses, or ask Authorize.Net about an additional account for the other currency.
For developers
errors[0].errorCode "39". Omit currencyCode or send exactly the account's currency.
Frequently asked questions
- Which currencies does Authorize.Net support (code 39)?
- Its code 39 guidance lists AUD, CAD, CHF, DKK, EUR, GBP, NOK, NZD, PLN, SEK, USD and ZAR, with one currency per account.
- Can one Authorize.Net account take several currencies?
- No. Authorize.Net says only one currency can be set for one account.
Sources
- Authorize.Net Response Code Tool (response reason codes) — Authorize.Net
- Authorize.Net response codes (JSON list behind the Response Code Tool) — Authorize.Net
Related
- 49 — The amount is above the maximum transaction amount allowed on your account.
- 5 — The amount field was missing or not a valid number.
- 13 — The API Login ID is wrong, sent to the wrong environment, or the account is inactive.
- 123 — A personal user login was used to connect software; it needs the API Login ID instead.
- 124 — Your processor does not support transactions flagged as recurring.
- 153 — The wallet payment data (such as Apple Pay) could not be processed as sent.