Skip to content

Create a USD agent wallet

POST
/dashboard/v1/merchants/{merchantId}/{mode}/card-wallets
curl --request POST \
--url https://api.xaalis.org/dashboard/v1/merchants/example/test/card-wallets \
--header 'Content-Type: application/json' \
--header 'idempotency-key: example' \
--cookie better-auth.session_token=<better-auth.session_token> \
--data '{ "max_intent_amount": 1, "auto_daily_amount": 1, "max_daily_amount": 1, "no_intent_amount": 0, "name": "example", "cardholder_id": "example" }'
merchantId
required
string
mode
required
string
Allowed values: test live
idempotency-key
required

Required retry-safe key; reuse it only for the same operation and request body

string
>= 1 characters <= 255 characters

Required retry-safe key; reuse it only for the same operation and request body

Media typeapplication/json
object
max_intent_amount
required
integer
>= 1 <= 100000000
auto_daily_amount
required
integer
>= 1 <= 100000000
max_daily_amount
required
integer
>= 1 <= 100000000
no_intent_amount
integer
0 <= 100000000
name
required
string
>= 2 characters <= 120 characters
cardholder_id
string
/^ich_[A-Za-z0-9]+$/

USD wallet

Media typeapplication/json
object
id
required
string
object
required
string
Allowed values: agent_wallet
livemode
required
boolean
name
required
string
currency
required
string
Allowed values: XOF USD
status
required
string
Allowed values: active disabled
provider
required
string
Allowed values: wave orange_money mock stripe
max_payout_amount
required
integer
max_daily_amount
required
integer | null
approval_above_limit
required
boolean
approval_max_amount
required
integer | null
allowed_recipient_phones
required
Array<string>
created_at
required
string
updated_at
required
string
Example
{
"object": "agent_wallet",
"currency": "XOF",
"status": "active",
"provider": "wave",
"allowed_recipient_phones": [
"+221771234567"
]
}

Validation error

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Authentication required

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Forbidden

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Not found

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Idempotency conflict or invalid state

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Policy limit or insufficient funds

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Rate limited

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}

Service unavailable

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"details": "example"
}
}