Skip to main content
POST
Fund Card

Overview

Add funds to a card from your business wallet. A funding fee may apply based on your pricing configuration.
Funding is asynchronous. A successful (2xx) response means the request was accepted and is pending confirmation from the card provider — it does not mean the card has been funded, and the provider may still reject it. Do not treat the response as final. Use the card.funded (confirmed — balance added) and card.funding_failed (rejected — no balance added) webhooks as the source of truth. Supply a unique reference to reconcile the webhook with your request.

Path Parameters

Request Body

Idempotency

When you supply a reference, it is single-use. Retrying a fund with the same reference returns the original result instead of funding the card again, so a client retry or accidental double-submit can never double-charge.
A reference is final once it resolves — both success and FAILED are terminal. If a fund resolves to FAILED, sending the same reference again does not re-run it; it returns 409 REFERENCE_ALREADY_FAILED. To genuinely retry a failed fund, send a new reference. This stops one reference from ending up with two operations in two different states.

Example Usage

Error Responses

A funding fee (CARD_FUNDING_FEE) may apply. Use the Get Pricing endpoint to retrieve your current rates.

Authorizations

Authorization
string
header
required

JWT access token obtained from /auth/token

Path Parameters

cardId
string
required

Body

application/json
amount
number
required

Amount to fund in USD (min $5)

Required range: x >= 5
reference
string

Your unique reference for this operation. Defaults to cardId if not provided.

Maximum string length: 100

Response

Card funded successfully

success
boolean
Example:

true

status
integer
Example:

200

message
string
data
object
meta
object