pub struct IneligibleWalletAuthorizationAddress {
pub address: BlockchainAddress,
pub code: IneligibleWalletAuthorizationAddressCode,
pub funds_required: Vec<WalletAuthorizationFundsRequirement>,
pub message: String,
}Expand description
A requested payer wallet address that has no eligible authorization option for this payment session, along with a machine- and human-readable reason.
JSON schema
{
"title": "Ineligible Wallet Authorization Address",
"description": "A requested payer wallet address that has no eligible authorization option for this payment session, along with a machine- and human-readable reason.",
"examples": [
{
"address": "0xDeF9876543210FeDcBa9876543210FedcBa987654",
"code": "insufficient_funds",
"fundsRequired": [
{
"asset": "usdc",
"currentBalance": "0.40",
"network": "base",
"requiredBalance": "1.00"
},
{
"asset": "usdc",
"currentBalance": "0.00",
"network": "ethereum",
"requiredBalance": "1.00"
}
],
"message": "The payer does not have sufficient funds."
}
],
"type": "object",
"required": [
"address",
"code",
"message"
],
"properties": {
"address": {
"description": "The requested payer wallet address that has no eligible authorization option.",
"examples": [
"0xDeF9876543210FeDcBa9876543210FedcBa987654"
],
"allOf": [
{
"$ref": "#/components/schemas/BlockchainAddress"
}
]
},
"code": {
"description": "A machine-readable code indicating why this address has no eligible authorization option. The enum is closed — any value the server returns must be listed below. Adding a new code is a deliberate, coordinated API change; clients receiving an undocumented value should treat it as a server violating the spec.",
"examples": [
"insufficient_funds"
],
"type": "string",
"enum": [
"insufficient_funds",
"superseded_by_preferred_option"
],
"x-enum-descriptions": [
"The address does not hold enough of the session asset on a supported source network to cover the session amount.",
"The address was superseded because a preferred funding option was selected instead."
]
},
"fundsRequired": {
"description": "The funding options for this address, one entry per (network, asset) combination the payer could fund to become eligible. Only present when `code` is `insufficient_funds`, and honors the request's `network` and `asset` filters. May be an empty array.",
"examples": [
[
{
"asset": "usdc",
"currentBalance": "0.40",
"network": "base",
"requiredBalance": "1.00"
},
{
"asset": "usdc",
"currentBalance": "0.00",
"network": "ethereum",
"requiredBalance": "1.00"
}
]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/WalletAuthorizationFundsRequirement"
}
},
"message": {
"description": "A human-readable, English-language description of why this address has no eligible authorization option. Suitable for surfacing in product UIs — does not contain personally identifiable information or internal infrastructure details. Clients that need localized strings should dispatch on `code` and provide their own translations.",
"examples": [
"The payer does not have sufficient funds."
],
"type": "string"
}
}
}Fields§
§address: BlockchainAddressThe requested payer wallet address that has no eligible authorization option.
code: IneligibleWalletAuthorizationAddressCodeA machine-readable code indicating why this address has no eligible authorization option. The enum is closed — any value the server returns must be listed below. Adding a new code is a deliberate, coordinated API change; clients receiving an undocumented value should treat it as a server violating the spec.
funds_required: Vec<WalletAuthorizationFundsRequirement>The funding options for this address, one entry per (network, asset) combination the payer could fund to become eligible. Only present when code is insufficient_funds, and honors the request’s network and asset filters. May be an empty array.
message: StringA human-readable, English-language description of why this address has no eligible authorization option. Suitable for surfacing in product UIs — does not contain personally identifiable information or internal infrastructure details. Clients that need localized strings should dispatch on code and provide their own translations.