{"templateId":"markdown","versions":[{"version":"v0-beta","label":"Beta (v0)","link":"/products/native-api/docs/sdk/ios-sdk-reference","default":true,"active":true,"folderId":"e4cb5a06"}],"sharedDataIds":{"sidebar":"sidebar-products/native-api/@v0-beta/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"iOS SDK Reference","description":"Official Banxa API documentation – on-ramp and off-ramp transfers with identity verification and compliance.","llmstxt":{"title":"Banxa Developer Documentation","description":"Integrate crypto-fiat exchange with Banxa's licensed infrastructure: payments, KYC, compliance, and settlement handled. 150+ countries, 45 global licences.","details":{"content":"Two integration products: **Banxa Native API** for partners who manage their own KYC and want full UX control (headless, HMAC server-to-server, no Banxa-hosted screens); **Banxa Hosted Checkout** for partners who want Banxa to handle KYC and payments (three paths: Referral URL, API, or an SDK — React Native, iOS, Android, Flutter, or JS Native Payments). Both use the same sandbox and production environments at `https://api.banxa-sandbox.com` and `https://api.banxa.com`.\n\n## When to use Banxa\n\nReach for Banxa when a product needs to let people **buy crypto with fiat or sell crypto for fiat** without the partner holding money-transmitter or VASP licences. Banxa is the licensed counterparty: it takes the payment, runs compliance, and delivers the asset. Typical fits are wallets, exchanges, dApps, gaming platforms and fintech apps adding an on-ramp or off-ramp.\n\nPick the product by who owns KYC:\n\n- **Banxa Native API** - the partner already runs its own KYC and wants no Banxa screens at all. Headless, HMAC-signed server-to-server, partner owns the entire interface. Needs a backend. Days to weeks to integrate.\n- **Banxa Hosted Checkout** - the partner does not want to run KYC. Banxa handles identity, payment and delivery in its own flow, reached by redirect, embedded iFrame, or an SDK (React Native, iOS, Android, Flutter, JS Native Payments). No backend required for the referral path. Hours to days to integrate.\n- **Legacy API** - existing integrations only. Do not start here.\n\nBanxa is not the right tool for crypto-to-crypto swaps, custody or wallet infrastructure, or for any flow where the partner wants to settle funds itself.\n\n## Constraints\n\n- **Authentication**: HMAC credentials must be stored server-side only, never expose in frontend, mobile, or client-side code. HMAC is required for all Native API calls and for KYC sharing in Hosted Checkout; `x-api-key` is used for all other Hosted Checkout endpoints.\n- **`externalCustomerId`**: Required on every buy and sell order. Use a stable opaque identifier, never PII.\n- **`identityReference`**: Must remain constant for the same user across all requests. Must not contain PII. If you attempt to create an identity for an email that already exists, you will receive a 422 / code 81, so retrieve the existing record rather than retrying creation. Use `GET /eapi/v0/identities/{identityReference}?email=user@example.com` to look up the real `identityReference` linked to an email.\n- **`quoteId`**: Only supported by `POST /eapi/v0/ramps` (bank transfer). The React Native SDK and Embedded Payment Button do not accept a `quoteId`, so use indicative pricing (`GET /eapi/v0/price`) for SDK and Embedded Payment Button flows.\n- **Quotes**: Indicative prices are not rate-locked, so refresh close to order creation to minimise rate drift. Locked quotes (`GET /eapi/v0/quote`) expire after approximately 3 minutes and are only valid for bank transfer ramp creation.\n- **Eligibility gate**: Never create a ramp or invoke the SDK when `paymentReady` is `false`. Always check eligibility and satisfy all requirements before payment execution.\n- **Webhooks**: Verify all inbound webhook signatures with HMAC-SHA256 before processing. Return HTTP 200 immediately and process asynchronously.\n- **Product selection**: Banxa Native is for partners who manage their own KYC. Banxa Hosted Checkout is for partners who do not do KYC. These are separate products with separate flows: do not mix endpoints across products.\n- **SDK scope**: The React Native SDK has no `banxa.customerIdentity` module. Identity and KYC are handled through the Native API only. `primerCallbacks` and `primerSettings` are Native context only and must not be referenced in Hosted Checkout integrations.\n- **Payment method naming**: Never use \"eAPI\" or \"EAPI\" as a product name. The correct name is \"Banxa Native API\". The URL path prefix `/eapi/` is correct and should not be changed.\n"}}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"ios-sdk-reference","__idx":0},"children":["iOS SDK Reference"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For the complete documentation index, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://docs.banxa.com/llms.txt"},"children":["llms.txt"]},". Append ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".md"]}," to any page URL for its markdown version."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The Banxa iOS SDK (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BanxaPaymentSDK"]},") is the payment execution layer of Banxa Native for native iOS apps. It is the Swift counterpart to the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/sdk/sdk-reference"},"children":["React Native SDK"]},": used alongside the Native API to present the native payment sheet for cards, Apple Pay, and Google Pay, the payment methods that cannot be handled through the API alone due to PCI requirements."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Bank transfers are handled directly by the Native API and do not involve the SDK. For the end-to-end integration walkthrough, see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/guides/foundations"},"children":["Integration Guide"]},"."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"which-parts-are-relevant-for-banxa-native","__idx":1},"children":["Which parts are relevant for Banxa Native"]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Your backend still owns orchestration"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In a Banxa Native integration your backend handles pricing, identity, and eligibility through the Native API. The SDK's role is limited to payment execution: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startPayment(request:controller:)"]}," and the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BanxaPaymentSDKDelegate"]}," callbacks."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The SDK also ships configuration helpers (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchCountries"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchFiats"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchCrypto"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchPaymentMethods"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchQuotes"]},"). Prefer the equivalent Native API endpoints for those, so that configuration and pricing stay on one authenticated surface. The helpers are documented below for completeness."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"requirements","__idx":2},"children":["Requirements"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Requirement"},"children":["Requirement"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Version"},"children":["Version"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["iOS"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["13.1 and above"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Xcode"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16 and above"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Swift"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["6.0 and above"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You also need a Banxa partner account, which supplies the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apiKey"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["partnerID"]}," used to configure the SDK."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"installation","__idx":3},"children":["Installation"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"swift-package-manager","__idx":4},"children":["Swift Package Manager"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Add the package to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Package.swift"]},":"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"dependencies: [\n    .package(url: \"https://github.com/BanxaOfficial/ios-payment-sdk\", from: \"1.0.0\")\n]\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Then add ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BanxaPaymentSDK"]}," to your target:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":".target(\n    name: \"YourApp\",\n    dependencies: [\n        .product(name: \"BanxaPaymentSDK\", package: \"ios-payment-sdk\")\n    ]\n)\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"through-xcode","__idx":5},"children":["Through Xcode"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["File, Add Package Dependencies"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter the repository URL."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["BanxaPaymentSDK"]}," and add it to your app target."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The SDK transitively pulls in the payment provider SDK (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[">= 2.49.0"]},"). You do not import or reference it directly."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"configuration","__idx":6},"children":["Configuration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Configure the SDK once at app launch, for example in your ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["App"]}," entry point or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AppDelegate"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"import BanxaPaymentSDK\n\nlet config = BanxaConfig(\n    apiKey: \"YOUR_API_KEY\",\n    partnerID: \"your-partner-id\",\n    environment: .sandbox            // .sandbox or .production\n)\n\nBanxaPaymentSDK.shared.configure(config: config)\nBanxaPaymentSDK.shared.delegate = self\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"banxaconfig","__idx":7},"children":["BanxaConfig"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apiKey"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Your Banxa API key from the merchant dashboard."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["partnerID"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Your partner identifier."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["environment"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Environment"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".sandbox"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".production"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Calling any SDK method before ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["configure(config:)"]}," fails with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["APIError.sdkNotConfigured"]},". Blank credentials fail with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["APIError.missingCredentials"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"environments","__idx":8},"children":["Environments"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Environment"},"children":["Environment"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Host"},"children":["Host"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".sandbox"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://api.banxa-sandbox.com"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".production"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://api.banxa.com"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Sandbox and production credentials are separate and are not interchangeable."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"starting-a-payment","__idx":9},"children":["Starting a payment"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Build a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CreateOrderRequest"]}," and call ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startPayment(request:controller:)"]},". Pass the view controller that should host the checkout presentation."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"let request = CreateOrderRequest(\n    crypto: \"ETH\",\n    fiat: \"EUR\",\n    fiatAmount: \"40\",\n    walletAddress: \"0x0000000000000000000000000000000000000000\",\n    email: \"user@example.com\",\n    redirectURL: \"your-app-scheme://banxa-return\",\n    paymentMethodID: \"debit-credit-card\"\n)\n\nBanxaPaymentSDK.shared.startPayment(request: request, controller: self)\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startPayment"]}," runs the full pipeline in one call: it checks eligibility, creates the order, and presents the native payment sheet when a payment token is available. Results arrive on the delegate, not as a return value."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Gate on eligibility before you call startPayment"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Call ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /eapi/v0/eligibility"]}," from your backend and confirm ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paymentReady: true"]}," before invoking the SDK. The SDK performs its own internal eligibility check, but it does not expose the result or the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["requirements[]"]}," array to your app, so it cannot tell your user what is outstanding. Without the backend check you have no way to drive the KYC remediation loop."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/how-it-works/interpreting-eligibility"},"children":["Interpreting Eligibility"]},"."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The SDK does not accept a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["quoteId"]},". Use indicative pricing from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /eapi/v0/price"]}," and re-price close to the point of payment to reduce rate drift."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"handling-callbacks","__idx":10},"children":["Handling callbacks"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Conform to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BanxaPaymentSDKDelegate"]},". All callback types are Banxa-owned: you never import or reference the underlying payment provider SDK. Every method has a default no-op implementation, so implement only what you need."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"import BanxaPaymentSDK\n\nextension MyViewController: BanxaPaymentSDKDelegate {\n\n    func banxaDidCompleteCheckout(_ result: BanxaCheckoutResult) {\n        // Payment succeeded.\n        print(\"Paid:\", result.paymentId ?? result.rawQuery ?? \"-\")\n    }\n\n    func banxaDidFail(error: Error) {\n        // Any failure: API, validation, network, decoding, or checkout error.\n        // Banxa-originated failures are APIError.\n        print(\"Failed:\", error.localizedDescription)\n    }\n\n    func banxaDidDismiss() {\n        // The customer closed the checkout UI without completing.\n    }\n}\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All delegate callbacks are delivered on the main actor."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Callback"},"children":["Callback"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fires when"},"children":["Fires when"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["banxaDidCompleteCheckout(_:)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The customer completed payment."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["banxaDidFail(error:)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Any Banxa, network, validation, or checkout failure."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["banxaDidDismiss()"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The customer closed the checkout UI without completing."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"banxacheckoutresult","__idx":11},"children":["BanxaCheckoutResult"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Populated when"},"children":["Populated when"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paymentId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The native payment sheet was used."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["orderId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The native payment sheet was used."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The native payment sheet was used."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rawQuery"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The fallback flow was used. Contains the terminal success URL query string."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Delegate callbacks are a UI signal, not the authoritative order state. Confirm the final state from ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/transaction-lifecycle/webhooks"},"children":["webhooks"]}," before you credit a customer."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"models","__idx":12},"children":["Models"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"createorderrequest","__idx":13},"children":["CreateOrderRequest"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["crypto"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Crypto asset symbol, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ETH"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fiat"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Fiat currency code, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fiatAmount"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Fiat amount as a string."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paymentMethodID"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Banxa payment method id, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["debit-credit-card"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apple-pay"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["walletAddress"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Destination wallet address."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Customer email address."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["redirectURL"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["URL the customer returns to after the fallback flow."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Your order id."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["blockchain"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Explicit blockchain network."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cryptoAmount"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Crypto amount when ordering by crypto value."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["walletAddressTag"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Tag or memo for chains that require it."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["subPartnerID"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Sub-partner identifier."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["metadata"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Opaque metadata string."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["externalCustomerID"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Your customer identifier. Pass the same value you use as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["identityReference"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["externalOrderID"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Your order reference."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["discountCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String?"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Promotion or discount code."]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"paymentMethodID is optional in the type, required in practice"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paymentMethodID"]}," is declared as an optional in the Swift signature, but Banxa requires a value. Omitting it fails at payment execution rather than at compile time, so the compiler will not catch it for you. Always pass an id returned by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchPaymentMethods"]}," or by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /eapi/v0/payment-methods/{transactionType}"]},"."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"A missing memo can permanently lose funds"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["XRP, XLM, EOS, and ATOM require a memo or tag. Pass it as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["walletAddressTag"]},". An on-ramp to one of these chains without the memo can be unrecoverable."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"url-scheme","__idx":14},"children":["URL scheme"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If you use redirect-based payment methods, register a URL scheme in your ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Info.plist"]}," and use the same scheme for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["redirectURL"]}," on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CreateOrderRequest"]},"."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"configuration-endpoints","__idx":15},"children":["Configuration endpoints"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["These helpers are ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["async throws"]}," and require a configured SDK. In a Banxa Native integration, prefer the equivalent Native API endpoints so that configuration stays on the HMAC-authenticated surface."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"countries","__idx":16},"children":["Countries"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"let countries = try await BanxaPaymentSDK.shared.fetchCountries()\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fields"},"children":["Fields"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Country"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["states: [CountryState]?"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CountryState"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"fiats","__idx":17},"children":["Fiats"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"let fiats = try await BanxaPaymentSDK.shared.fetchFiats(orderType: .buy)\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fields"},"children":["Fields"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["OrderType"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".buy"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".sell"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Fiat"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["symbol?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["supportedPaymentMethods: [FiatPaymentMethod]?"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["FiatPaymentMethod"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["minimum?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["maximum?"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"crypto","__idx":18},"children":["Crypto"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"let assets = try await BanxaPaymentSDK.shared.fetchCrypto(orderType: .buy)\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fields"},"children":["Fields"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Cryptocurrency"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["blockchains: [CryptoBlockchain]?"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CryptoBlockchain"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["isDefaultBlockchain?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["address?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["network?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["minimum?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unsupportedCountries: [String: [String]]?"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"payment-methods","__idx":19},"children":["Payment methods"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"let methods = try await BanxaPaymentSDK.shared.fetchPaymentMethods(orderType: .buy)\nlet usdOnly = try await BanxaPaymentSDK.shared.fetchPaymentMethods(orderType: .buy, fiat: \"USD\")\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fields"},"children":["Fields"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PaymentMethod"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["supportedFiats: [String]?"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"quotes","__idx":20},"children":["Quotes"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"swift","header":{"controls":{"copy":{}}},"source":"let request = QuoteRequest(\n    paymentMethodID: \"debit-credit-card\",\n    crypto: \"ETH\",\n    blockchain: \"ETH\",\n    fiat: \"USD\",\n    fiatAmount: \"200\"\n)\nlet quotes = try await BanxaPaymentSDK.shared.fetchQuotes(orderType: .buy, request: request)\n","lang":"swift"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fields"},"children":["Fields"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["QuoteRequest"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paymentMethodID"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["crypto"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["blockchain"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fiat"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fiatAmount?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cryptoAmount?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["externalCustomerID?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ipAddress?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["discountCode?"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Quote"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paymentMethodID?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cryptoAmount?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fiatAmount?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["processingFee?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["networkFee?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["discount: QuoteDiscount?"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["QuoteDiscount"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["originalQuote: QuoteOriginalAmounts?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["discountCode?"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["QuoteOriginalAmounts"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["originalCryptoAmount?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["originalNetworkFee?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["originalProcessingFee?"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["originalFiatAmount?"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Provide either ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fiatAmount"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cryptoAmount"]},". If both are set, Banxa uses ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cryptoAmount"]},". Quotes carry no quote id and are not accepted by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startPayment"]},". Do not cache them: call immediately before showing a price."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"error-handling","__idx":21},"children":["Error handling"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Failures are surfaced through ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["banxaDidFail(error:)"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["APIError"]},". Each case provides a human-readable ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errorDescription"]},"."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Case"},"children":["Case"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".invalidURL"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The endpoint URL could not be built."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".serverError(Int)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Non-2xx HTTP response."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".unauthorized"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["401"]}," from Banxa. Check ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apiKey"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".decodingFailed(String)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The response payload failed to decode."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".networkUnavailable"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No network connectivity."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".missingCredentials([String])"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apiKey"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["partnerID"]}," was blank in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BanxaConfig"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".sdkNotConfigured"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["startPayment"]}," was called before ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["configure(config:)"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".checkoutFailed(String?)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The checkout reached the failure URL. The payload is the raw query string."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".unknown(String)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Any other unexpected error."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Show user-facing messages only from validated error fields. Do not expose raw error strings that may include internal detail."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"not-available-in-the-sdk","__idx":22},"children":["Not available in the SDK"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Capability"},"children":["Capability"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Use instead"},"children":["Use instead"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Identity creation, KYC sharing, document sharing"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Native API. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/how-it-works/identity-kyc"},"children":["Identity and KYC"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Eligibility result and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["requirements[]"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /eapi/v0/eligibility"]}," from your backend"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Locked pricing (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["quoteId"]},")"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bank transfer ramps only. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/how-it-works/quotes-and-pricing"},"children":["Quotes and Pricing"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Order lookup and reconciliation"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/transaction-lifecycle/webhooks"},"children":["Webhooks"]}," and the Native API"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Off-ramp (sell)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Native API. The SDK covers on-ramp payment execution only"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Payment sheet theming"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Not exposed on iOS. Available on Android"]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"payment-methods-and-supported-fiats","__idx":23},"children":["Payment methods and supported fiats"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Availability varies by partner, region, and order type. Treat ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fetchPaymentMethods"]}," or the Native API configuration endpoints as the source of truth. The table below is a static reference."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Payment method id"},"children":["Payment method id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Supported fiats"},"children":["Supported fiats"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["debit-credit-card"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AED"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ARS"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AUD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BRL"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CAD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CHF"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CZK"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DKK"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GBP"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["HKD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["IDR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["INR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["JPY"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["KRW"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["MXN"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["MYR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NGN"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NOK"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NZD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PHP"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PLN"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["QAR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["RUB"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SAR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SEK"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SGD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["THB"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TRY"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TWD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["USD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["VND"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ZAR"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apple-pay"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AUD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GBP"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["USD"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["google-pay"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AUD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["USD"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payid-bank-transfer"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AUD"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pix"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BRL"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["zar-bank-transfer"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ZAR"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pse"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["COP"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["khipu"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CLP"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["interac-bank-transfer"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CAD"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["klarna-paynow"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ideal-bank-transfer"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AUD"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sepa-bank-transfer"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EUR"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["gbp-bank-transfer"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GBP"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spei"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["MXN"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"next-steps","__idx":24},"children":["Next steps"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/guides/foundations"},"children":["Integration Guide"]},": end-to-end walkthrough."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/guides/apple-pay"},"children":["Apple Pay"]},": entitlements and platform setup."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/guides/cards"},"children":["Cards"]},": 3D Secure setup."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/native-api/docs/how-it-works/interpreting-eligibility"},"children":["Interpreting Eligibility"]},": the requirements dictionary and remediation loop."]}]}]},"headings":[{"value":"iOS SDK Reference","id":"ios-sdk-reference","depth":1},{"value":"Which parts are relevant for Banxa Native","id":"which-parts-are-relevant-for-banxa-native","depth":2},{"value":"Requirements","id":"requirements","depth":2},{"value":"Installation","id":"installation","depth":2},{"value":"Swift Package Manager","id":"swift-package-manager","depth":3},{"value":"Through Xcode","id":"through-xcode","depth":3},{"value":"Configuration","id":"configuration","depth":2},{"value":"BanxaConfig","id":"banxaconfig","depth":3},{"value":"Environments","id":"environments","depth":3},{"value":"Starting a payment","id":"starting-a-payment","depth":2},{"value":"Handling callbacks","id":"handling-callbacks","depth":2},{"value":"BanxaCheckoutResult","id":"banxacheckoutresult","depth":3},{"value":"Models","id":"models","depth":2},{"value":"CreateOrderRequest","id":"createorderrequest","depth":3},{"value":"URL scheme","id":"url-scheme","depth":2},{"value":"Configuration endpoints","id":"configuration-endpoints","depth":2},{"value":"Countries","id":"countries","depth":3},{"value":"Fiats","id":"fiats","depth":3},{"value":"Crypto","id":"crypto","depth":3},{"value":"Payment methods","id":"payment-methods","depth":3},{"value":"Quotes","id":"quotes","depth":3},{"value":"Error handling","id":"error-handling","depth":2},{"value":"Not available in the SDK","id":"not-available-in-the-sdk","depth":2},{"value":"Payment methods and supported fiats","id":"payment-methods-and-supported-fiats","depth":2},{"value":"Next steps","id":"next-steps","depth":2}],"frontmatter":{"title":"iOS SDK Reference","description":"Complete reference for the Banxa iOS SDK, the payment execution layer of Banxa Native on iOS, covering configuration, payment start, delegate callbacks, models, and error handling.","seo":{"title":"iOS SDK Reference"}},"lastModified":"2026-08-20T06:59:29.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/native-api/docs/sdk/ios-sdk-reference","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}