Skip to main content
APIWebhooksDocumentation
Clarified BUY wallet locking and recipient addresses

BUY wallet destinations

  • Listed the seven providers that automatically lock a submitted BUY wallet in sandbox and production, with no additional lock parameter or integration setting.
  • Clarified that wallet_address must be supplied when creating the transaction, even when it was supplied for quotes.
  • Clarified that new BUYs with a submitted wallet preserve it in recipient_address when a provider omits the destination or returns it blank.
  • Coinify and Wert remain pending verification; integrators will be informed in writing when their locking is ready.
  • Public request and response fields are unchanged.
APIQuotesLimits
Documented and enforced fiat transaction bounds

Fiat amount limits

  • Documented the existing min_amount, max_amount, and per-provider limit fields returned by fiat-currency discovery.
  • Quote and transaction preparation now reject amounts outside the supported fiat range before requesting provider quotes.
  • Provider, payment-method, asset, network, and location-specific limits may be narrower; quote discovery remains authoritative for a complete route.
  • Public request fields, response fields, envelopes, and status behavior are unchanged.
APIQuotesAssets
Added direction-aware cryptocurrency discovery

Crypto discovery

  • Added the optional type=BUY|SELL query parameter to the cryptocurrency catalogue; it defaults to BUY when omitted.
  • Cryptocurrency and network results are now filtered using the selected providers’ current onramp and offramp capabilities.
  • Quote routing now applies the same directional asset capabilities used by catalogue discovery.
  • The cryptocurrency response object structure is unchanged.

Transaction identifiers

  • Standardized partner REST transaction responses and webhook payloads on provider_transaction_id.
  • Removed provider_tx_id from the public Partner API response contract. The internal storage field is unchanged.
  • Standardized REST and webhook fee fields as nullable decimal strings with identical companion currency behavior.

Sandbox guide

  • Added an end-to-end sandbox guide covering account setup, environment-scoped API keys, Stripe checkout testing, webhook-first transaction status handling, fallback reconciliation, signature verification, and common troubleshooting steps.
  • Clarified that is_best represents quote pricing, not sandbox lifecycle support, and that Stripe must be selected explicitly for the documented end-to-end sandbox test.
  • Clarified that Sumsub KYB can be tested in sandbox but does not gate Partner API transactions, provider callbacks, or outgoing webhook delivery.
  • Clarified that fiat_amount is the provider-reported base transaction amount and is not reduced by separately reported fee fields.
  • Corrected webhook verification guidance to include the X-Timestamp header used in the signed timestamp.raw_body value.
APIWebhooksDocumentation
Standardized transaction fields and documented API behavior

Transaction fields

  • Standardized provider_transaction_id as the provider identifier used by REST transaction responses and webhook payloads.
  • Added client_fee and client_fee_currency to webhook payloads, and added orki_fee and orki_fee_currency to REST transaction responses. The partner and Orki fees remain separate values.

API reference

  • Documented the standard and validation error response formats and common HTTP status codes.
  • Added the Partner API rate limit, response headers, and retry guidance.
  • Clarified that the crypto catalogue is direction-neutral, the fiat catalogue defaults to BUY when type is omitted, and quote discovery requires type.
  • Replaced the placeholder support-page description with the current email support channel.
APIWebhooksTransactions
Clarified and hardened webhook destination addresses

Webhook destination addresses

  • Clarified that recipient_address is always included in transaction webhook data and is nullable only when no blockchain recipient applies.
  • Successful BUY processing now preserves the submitted destination when a provider omits the address from its final callback.
  • Corrected provider-specific destination mapping and added signed callback processing for previously incomplete provider paths.
APIWebhooksFees
Added explicit fee currencies to transaction webhooks

Webhook fee reconciliation

  • Added provider_fee_currency, orki_fee_currency, and network_fee_currency alongside the existing webhook fee amounts.
  • Clarified that Orki fees are denominated in USD, while provider and network fee denominations can vary by provider and route.
  • Existing fee amount fields and event names are unchanged.
SandboxWebhooksDocumentation
Clarified end-to-end sandbox lifecycle support

Sandbox lifecycle testing

  • Clarified that end-to-end sandbox behavior depends on the selected provider’s test capabilities.
  • Documented Stripe as a supported path for testing checkout completion, provider callbacks, Orki transaction status updates, and outgoing partner webhook delivery.
  • Added the known Stripe test route: EUR to USDC on Ethereum using a credit or debit card.
APIQuotesTerminal
Partner API logging and NGN quote availability

API request logs

  • Restored request logging for authenticated /api/v1/partner endpoints. Requests that pass API key and partner-access checks now appear in the account’s API Logs view in the Terminal.
  • API logs record the request path, HTTP method, response status code, success or failure state, and timestamp. Request and response bodies are not stored in these logs.
  • Sandbox and production logs are isolated. A request made through sandbox.money.orki.io does not appear in the production environment’s logs, and vice versa.
  • This is an observability update only; partner endpoint request and response structures have not changed.

NGN card quotes

  • Corrected BUY quote validation for Nigerian naira amounts. Valid NGN to BTC on mainnet quote requests using credit_debit_card can now return MoonPay when it is available for the requested amount and route.
  • Provider availability, exchange rates, and transaction limits remain dynamic and are confirmed during quote discovery.
APISandboxDocumentation
Sandbox base URL and API reference corrections

Environments and paths

  • Added the sandbox API base URL: https://sandbox.money.orki.io. Production remains available at https://api.money.orki.io.
  • Standardized partner API documentation on the /api/v1/partner base path in both environments.

API reference

  • Corrected the create-transaction and payment-method response examples.
  • Removed inactive partner quote-selection and separate SELL quote references. Both BUY and SELL quote discovery use GET /api/v1/partner/quotes with the type query parameter.
APIWebhooksProvidersDocumentation
Partner integration reliability and documentation updates

Partner API

  • Standardized authentication guidance and examples on the X-ORKI-API-KEY header. The partner API does not use the Authorization: Bearer scheme.

Quotes and providers

  • Clarified that Orki does not configure a partner-level destination wallet for ramp purchases. The destination is set per transaction and the selected provider delivers the purchased crypto directly to it.
  • Binance BUY quotes require wallet_address. When it is omitted, Binance is returned as unsupported and cannot be selected for transaction creation. The address is also required when creating the Binance BUY transaction. This does not change SELL quotes or BUY quotes from other providers.

Webhooks

  • Added partner_context to the webhook data reference. Client-owned API and widget transactions return the supplied value as data.partner_context, or null when it was omitted.
  • Aligned webhook event metadata with the documented transaction.success and transaction.failed names. Successful payloads use data.status: "success".