fiat_currencies catalog for every product that accepts a fiat leg. OTC deposits and withdrawals, pricing resolve, marketplace orders, remittance, and country defaults all validate against active rows in this table.
Discover active codes
Authenticated clients list active currencies for pickers:Admin catalog management
| Method | Path | Purpose |
|---|---|---|
GET | /api/v1/auth/fiat-currencies/admin | List all rows including inactive |
GET | /api/v1/auth/fiat-currencies/{id} | Fetch one row by UUID |
POST | /api/v1/auth/fiat-currencies | Create a currency |
PATCH | /api/v1/auth/fiat-currencies/{id} | Update display name, fraction digits, sort order, or is_active |
DELETE | /api/v1/auth/fiat-currencies/{id} | Hard-delete when not referenced |
role: admin.
Create
Send nested{ "fiat_currency": { ... } } or flat JSON at the root.
iso_code is normalized to uppercase and must be a three-letter ISO 4217 code. iso_code cannot be changed after create.
Update
Patch at least one field. To retire a currency without breaking history, setis_active to false instead of deleting.
Delete
DELETE removes the row permanently. The API returns 409 when another table references the code (for examplecountries.default_fiat_currency). Use PATCH with is_active: false in that case.
Validation in other APIs
Any request field namedfiat_currency must match an active iso_code in fiat_currencies. Inactive or unknown codes are rejected before business logic runs. Load the catalog with GET /api/v1/auth/fiat-currencies before building OTC, pricing, or order forms.