Skip to content
Last updated

2026-06-02

Added

  • Embedded Payment Button now available — Apple Pay and Google Pay can now be embedded in web apps (Vanilla JS, React, Vue) via @banxa-official/embedded-checkout-web-component (v0.1.0). Pass a checkoutUrl from POST /{partner}/v2/buy as the source attribute on <banxa-checkout> and the component renders the button and presents the native payment sheet. Provisioning required — contact your Banxa integration contact to enable the button-only setting on your environment before use. → Apple Pay · Google Pay

2026-05-11

Added

  • React Native SDK now available — The Banxa React Native SDK (@banxa-official/react-native-sdk) is now available. Use it alongside the Native API to present native payment sheets for cards, Apple Pay, and Google Pay — payment methods that require PCI-compliant tokenisation via Primer and cannot be handled through the API alone. Bank transfers continue to run directly through the Native API without the SDK. → SDK Reference
  • Sumsub Copy Applicant support — A second Sumsub integration approach is now available alongside Reusable KYC. Copy Applicant retrieves name, DOB, selfie, document, address, and TIN directly from your Sumsub account, satisfying a broader set of eligibility requirements without additional PATCH calls. Copy Applicant is a separate Sumsub product and must be configured by Banxa — contact Banxa to have it enabled on your account. → KYC Token Sharing

2026-05-04

Added

  • KYC status webhooks — Banxa now sends a webhook when a customer's identity verification status changes. The payload includes kyc.status with values PENDING, UNDER_REVIEW, ACTION_REQUIRED, VERIFIED, and REJECTED. Use this to track verification progress without polling GET /eapi/v0/identities/{identityReference} — particularly useful after KYC token sharing, which is processed asynchronously. KYC webhooks are opt-in — contact Banxa to have them enabled on your account. → Webhooks

Changed

  • mobileNumber now optional on KYC token share — Previously required on POST /eapi/v0/identities/share/token. Note: Interac (Canada) requires a mobile number to process payments — for headless ramp flows using Interac, omitting mobileNumber will cause the ramp to fail.

2026-04-09

Added

  • Rate locking addedGET /eapi/v0/quote returns a confirmed rate and a quoteId that can be passed to POST /eapi/v0/ramps to guarantee the price at ramp creation.

2026-04-08

Added

  • kyc.status added to GET identity responseGET /eapi/v0/identities/{identityReference} now includes kyc.status, the verification outcome of the customer's submitted identity documents (selfie + document). VERIFIED indicates that document and liveness checks passed; other values indicate verification is in progress or requires action. See Identity & KYC for the full status reference.
  • EXTRA_VERIFICATION added to customer webhooks — Customer webhook payloads now include EXTRA_VERIFICATION as a KYC status event, triggered when a customer requires enhanced due diligence review. Contact Banxa to have this webhook enabled on your account.

Changed

  • GET /eapi/v0/identities/transactions/limits response updated — The response now includes remainder across each window, showing the customer's remaining transaction capacity (daily, weekly, monthly, and annual).
  • CUSTOMER_BLACKLISTED renamed to ACCOUNT_BLOCKED — Ramp and customer webhook payloads that previously returned CUSTOMER_BLACKLISTED now return ACCOUNT_BLOCKED. Update any status-handling logic that references the old value.
  • KYC eligibility requirements now individually itemised — The eligibility response previously returned a single PERSONAL_DETAILS requirement when any personal data was missing. It now returns individual requirements — NAME, DOB, and ADDRESS — so you can prompt for exactly what is outstanding rather than re-collecting data your customer has already provided.

2026-04-07

Added

  • Headless OTP added — Partner backends can now send and verify one-time passcodes server-to-server without exposing the verification step to the client. Contact your Banxa integration manager to enable. → OTP Email Verification

2026-03-24

Added

  • Basic identity creation — Create a customer identity with personal details to enable lower-tier KYC transactions. → Identity & KYC

2026-03-23

Added

  • Transaction limits — Retrieve applicable limits for a given identity and transaction context. Returns provider limits and customer tier limits across daily, weekly, monthly, and annual windows.

2026-03-16

Changed

  • ACH terms of service acceptance now requiredPOST /eapi/v0/ramps for ACH bank transfer methods now requires explicit terms of service acceptance in the request payload. See the API Reference for the required field.

2026-03-12

Added

  • Ramp history addedGET /eapi/v0/ramps returns paginated ramp history for a given identityReference. Supports filtering by status and transaction type.

Changed

  • Market rates added to price and quote responsesGET /eapi/v0/price and GET /eapi/v0/quote responses now include a marketRate object with crypto-to-fiat and forex reference rates at the time of the quote.

2026-03-04

Changed

  • GET /eapi/v0/identities/{identityReference} response updated — The response now includes account.blocked and account.createdAt, making it possible to check account status and creation timestamp in a single call.

2026-02-04

Added

  • Transaction eligibility — Evaluate whether a transaction can proceed for a given identity, payment method, fiat/crypto pair, and amount. Returns paymentReady: true/false and any outstanding requirements[]. → Interpreting Eligibility

2025-11-20

Changed

  • Ramp creation now supports cryptoAmount — You can now specify the exact amount of crypto to be received (on-ramp) or sent (off-ramp), in addition to the existing fiatAmount. This enables crypto-fixed transactions — for example, "receive exactly 200 USDT" — where the fiat cost is calculated from the crypto side rather than fixed upfront. Previously, only fiat-fixed ramps were supported. Provide either fiatAmount or cryptoAmount (not both), using the same parameter and value from the corresponding price request. → Pricing & Amount Inputs
  • Webhook payload updated — Ramp webhook payloads now include processingFee, networkFee, and transaction_hash fields in the final status notification.

2025-10-31

Added

  • ACH off-ramp bank account details added to payment instructionssourceDepositInstructions for ACH off-ramp now includes achRoutingNumber and achAccountNumber for the destination bank account.