Versioning

Breaking changes

See Breaking changes in API reference.

Change log

Unreleased

  • Added the optional transaction.payment_method_details.pin_retry_limit_exceeded response field for BankAxept PIN retry-limit outcomes. When it is true, transaction.receipt_details_customer includes the required cardholder text.
  • Expanded the accepted characters in transaction.receipt_details_customer and transaction.receipt_details_merchant from printable ASCII to U+0020–U+007E and U+00A0–U+00FF. API responses remain UTF-8 JSON.

2026-08-20

  • Fixed the API documentation rendering the spec incorrectly.
    • Some response fields were previously shown as optional in the rendered API documentation page even though they were required in the spec.
    • This is a backwards compatible change, as the affected fields are all response fields and only go from optional to required.

2026-04-14

  • Relaxed transaction.payment_method_details.authorization_code validation from ^[0-9A-Z]{6}$ to ^[0-9A-Za-z]{6}$.
    • This was done to support issuer authorization codes that contain lowercase letters.
    • Clients with strict response validation should update their validation rule for transaction.payment_method_details.authorization_code accordingly.

2026-03-11

  • Added transaction.dcc.exchange_rate_precise to expose DCC exchange rate with higher precision than transaction.dcc.exchange_rate supports.
    • Clients should use transaction.dcc.exchange_rate_precise over transaction.dcc.exchange_rate since it is safer.
    • The transaction.dcc.exchange_rate will be replaced with transaction.dcc.exchange_rate_precise in the next major version update.