> ## Documentation Index
> Fetch the complete documentation index at: https://docs.paxos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 400 - Invalid Payment Instructions

Returned by [Create Fiat Account](/api-reference/endpoints/fiat-transfers/create-fiat-account) when the submitted payment instructions fail validation. The `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>]
```

Multiple violations are joined by `; `. 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

<CodeGroup>
  ```json WIRE – routing number type required theme={null}
  {
    "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"
  }
  ```

  ```json WIRE – ABA checksum invalid theme={null}
  {
    "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"
  }
  ```

  ```json WIRE – SWIFT transfer missing intermediary ABA theme={null}
  {
    "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"
  }
  ```

  ```json WIRE – multiple violations theme={null}
  {
    "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"
  }
  ```

  ```json RTP – routing number invalid theme={null}
  {
    "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"
  }
  ```

  ```json RTP – address fields required theme={null}
  {
    "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"
  }
  ```

  ```json Fallback – generic (no field breakdown) theme={null}
  {
    "type": "about:blank",
    "title": "Bad Request",
    "status": 400,
    "detail": "invalid payment instructions for network 'WIRE'"
  }
  ```
</CodeGroup>

## 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](https://support.paxos.com).
