Added

Added Card Top-Up

Users can now fund their wallet directly from an external Visa or Mastercard payment card. Card top-up debits the card using AFT (Account Funding Transaction) rails and credits the wallet with an on-chain token, providing a fast on-ramp alongside the existing Push to Card off-ramp.

What's included

  • Top-up card registration — Register, list, and delete external cards as top-up sources in the PCI-compliant secure environment via POST/GET/DELETE {pci_base_url}/b2b/cards/topup. Registration returns a card_id used to reference the card in top-up requests.
  • EstimatePOST /api/v1/cards/topup/estimate sizes the fiat card debit, fee, and exchange rate for the token amount the user wants to receive.
  • ExecutePOST /api/v1/cards/topup/execute starts the pull from the registered card and returns the transaction id, status, and a three_ds_state when Strong Customer Authentication is required.
  • 3DS handling — Execute responses carry the 3DS flow. frictionless requires no action; challenge returns a url the client opens for the cardholder to authenticate.
  • Activity webhook — Completion is reported via a CardTopup activity (direction: Inbound, source.type: ExternalCarddestination.type: Wallet) on POST {base_url}/v2/webhooks/activities.

Requirements

Card top-up requires the CardTopup capability to be active. Check capability status via GET /api/v2/user before initiating top-ups.

Documentation