detail field names the specific field and the constraint it violated so you can correct the request without guessing.
The format is:
invalid payment instructions for network '<NETWORK>': <field>: <reason>[; <field>: <reason>]
; . When a validator has not yet been migrated to structured violations, the detail contains only the network name with no field path — look for a value like invalid payment instructions for network 'WIRE' with nothing after it.
Examples
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'WIRE': fiat_network_instructions.wire.routing_details.routing_number_type: is required"
}
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'WIRE': fiat_network_instructions.wire.routing_details.routing_number: invalid ABA routing number checksum"
}
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'WIRE': fiat_network_instructions.wire.intermediary_routing_details.routing_number_type: SWIFT wire transfers require an ABA routing number for the intermediary bank: must be ABA when the beneficiary bank number type is BIC, got SWIFT"
}
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'WIRE': fiat_network_instructions.wire.account_number: must use valid characters only (0-9 A-Z a-z /?:().,&'_+-); fiat_network_instructions.wire.routing_details.bank_name: must not be longer than 35 characters, got 42"
}
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'RTP': fiat_network_instructions.rtp.routing_details.routing_number: invalid ABA routing number checksum"
}
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'RTP': fiat_network_instructions.rtp.fiat_account_owner_address.city: is required; fiat_network_instructions.rtp.fiat_account_owner_address.country: is required"
}
{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "invalid payment instructions for network 'WIRE'"
}
Common field paths
WIRE
| Field | Common reasons |
|---|---|
fiat_network_instructions.wire.routing_details.routing_number_type | is required; must be ABA (domestic) or BIC (international SWIFT), got <TYPE> |
fiat_network_instructions.wire.routing_details.routing_number | routing number must be exactly 9 digits; invalid ABA routing number checksum; invalid BIC code format: expected AAAABBCC or AAAABBCCXXX (...) |
fiat_network_instructions.wire.routing_details.bank_name | is required; must not be longer than 35 characters, got <N> |
fiat_network_instructions.wire.account_number | is required; must not be longer than 35 characters, got <N>; must use valid characters only (0-9 A-Z a-z /?:().,&'_+-) |
fiat_account_owner | is required; must not be longer than 35 characters, got <N> |
fiat_network_instructions.wire.intermediary_routing_details.routing_number_type | must be ABA or BIC when an intermediary bank routing number is given, got <TYPE>; SWIFT wire transfers require an ABA routing number for the intermediary bank: must be ABA when the beneficiary bank number type is BIC, got <TYPE> |
fiat_network_instructions.wire.routing_details.bank_address.country | <COUNTRY_CODE> is a sanctioned country |
RTP
| Field | Common reasons |
|---|---|
fiat_network_instructions.rtp.routing_details.routing_number | is required when beneficiary information is provided; routing number must be exactly 9 digits; invalid ABA routing number checksum |
fiat_network_instructions.rtp.account_number | is required when beneficiary information is provided; account number must be between 1 and 34 characters, got <N>; account number must be alphanumeric |
fiat_account_owner | is required when beneficiary information is provided; cannot exceed 35 characters, got <N> |
fiat_network_instructions.rtp.fiat_account_owner_address.city | is required; cannot exceed 35 characters, got <N> |
fiat_network_instructions.rtp.fiat_account_owner_address.country | is required; is invalid; cannot exceed 3 characters, got <N> |
Questions? Contact Support.