Create a currency
Creates a new currency for the entity. code MUST be a valid ISO
4217 three-letter code. is_base is ignored on create (use
POST /currencies//set-base after creation). Requires the
currencies:write scope.
Authorizations
API key issued per entity via Settings > Developers > API Keys.
Each key carries scopes (e.g. orders:read, products:write).
Bearer token format: Authorization: Bearer ark_live_ent_
Test keys use ark_test_ent_. Both are issued per entity
via Settings > Developers > API Keys.
Headers
Client-generated unique key for idempotent POST/PATCH/DELETE operations. Alias for the Idempotency parameter. Max 255 chars. On retry with the same key, the original response is returned without re-executing the operation. Keys expire after 24 hours.
255Body
Response
Currency created
A currency that the entity transacts in. USD is seeded on entity creation with is_base=true. Wave B multi-currency foundation: exchange_rates link non-base currencies to the base. Soft-delete refuses with HTTP 409 if the row is the entity's base currency; promote a different currency first via POST /currencies/{id}/set-base. Scope: currencies:read / currencies:write / currencies:delete. Rule 23 SSOT: is_base is flipped only by canonical setBaseCurrency (atomically demotes the previous base in the same transaction).
"currency"
ISO 4217 currency code, UPPERCASE 3 letters.
3"USD"
Human-readable currency name. 1..80 chars.
Display symbol. Optional; up to 8 chars.
Display precision. JPY = 0, BHD = 3, most = 2.
True for exactly one currency per entity. Read-only; set via set-base.
Free-form caller metadata. Default {}.

