Skip to main content
GET /v1/currencies describes what the platform supports: each currency carries capability flags (can_deposit, can_onramp, …) that are the same for every caller. Some capabilities also depend on the state of the customer you are acting for. Pass the optional customer_id query parameter and the same flags answer a narrower question β€” what can this customer do right now? The capability filters (can_deposit=true, …) are then evaluated against the customer’s view too.

Reading customer_restrictions

When a capability the platform supports is unavailable to the customer, the flag reads false and the row carries a customer_restrictions entry explaining why:
customer_restrictions lists exactly the difference between the platform view and the customer’s view:
  • It appears only when you pass customer_id, and only on rows where a capability the platform supports was removed by the customer’s state.
  • Capabilities the platform itself does not support are never listed β€” a flag that is false in the platform view stays a plain false.
Branch on reason, not on the next_steps copy β€” the code is stable, the wording is not. This mirrors how you branch on failure_reason for failed money movements. See Failure reasons.

Restriction reasons

Branch on reason β€” it is a stable, machine-readable code.