{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-platform/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Quotes","llmstxt":{"title":"Glomopay developer documentation","description":"Cross-border payments APIs, organised by product. Each product section carries both the explanation of its objects and the job-shaped integration guides that set them up.","details":{"content":"How to use these docs:\n\n- Get started is the front door. It carries a routing table from\n  \"what are you building\" to the page that builds it, plus how to get\n  API keys.\n- The product sections - Payin, Payout, Multi-currency accounts,\n  Verification, Request for Information (RFI) - each hold two kinds of page.\n  Pages titled as a noun (\"Subscriptions\", \"Bank Transfer\") explain what\n  an object is. Pages titled as a job (\"Set up recurring subscriptions\",\n  \"Collect LRS remittances from India\") are complete integration flows\n  and live one level under the object they set up. Match a user's goal\n  against the job-shaped titles first.\n- Reports and Identity and Access Management are the two subjects with no\n  API counterpart. There are no endpoints for reports, users, roles or\n  invites; both pages document the merchant dashboard. A dashboard\n  procedure for something the API also does (a refund, a payout) is NOT\n  here - it stays in the product that owns it.\n- API reference is generated from OpenAPI and carries endpoint detail.\n- The OpenAPI description itself is published as a single self-contained\n  document at /openapi.yaml, and the same document as JSON at\n  /openapi.json. Every $ref is resolved into it, so one fetch is the\n  whole contract: 61 paths, 81 operations, 68 schemas - the same\n  endpoints the API reference pages render. Fetch that instead of\n  reading the 129 pages under /api-reference/.\n- Developer resources covers what every integration touches and no single\n  product owns: auth, errors, pagination, rate limits, webhooks,\n  versioning, supported countries, quotes, and the client SDKs.\n"},"sections":[{"title":"Get started","description":"The front door. The routing table from a merchant's goal to the flow that delivers it, how to obtain API keys, and the platform glossary.","includeFiles":["**/get-started/**"]},{"title":"Payin","description":"Collecting money: customers, orders, checkout, payment links, payment methods (cards, bank transfer, pay via bank), refunds, disputes, purpose codes, fee models, custom fields, subscriptions, and resident India remittance under LRS. Includes the flows that set each up - bank transfers, subscriptions, LRS remittances, and server-to-server card payments.","includeFiles":["**/payin/**"]},{"title":"Payout","description":"Sending money: the payout life cycle, queued payouts, creating and cancelling a payout, rails, beneficiaries, purpose codes, and the action required state.","includeFiles":["**/payout/**"]},{"title":"Multi-currency accounts","description":"Holding money: balances, balance conversion, adding balance, withdrawing balance, and the settlement holiday calendar - the Indian and US bank and FX holidays on which settlement to the merchant's bank account, and money movement generally, is affected.","includeFiles":["**/multi-currency-account/**"]},{"title":"Verification","description":"Proving who someone is and that an account is theirs: KYC, bank account validation, and third-party verification (TPV) with the flow that verifies a payer's bank account.","includeFiles":["**/verification/**"]},{"title":"Request for Information (RFI)","description":"Responding to a compliance request for information, per object - payment link, order, payment, payout - plus compliance reviews and RFIs raised on already-successful payments.","includeFiles":["**/request-for-information/**"]},{"title":"Reports","description":"The downloadable and scheduled reports a merchant pulls from the dashboard for reconciliation, compliance and treasury: payment, subscription, settlement breakup, balance statement and KYC reports, plus scheduling one for recurring email delivery. Dashboard only - there is no reports API.","includeFiles":["**/reports/**"]},{"title":"Identity and Access Management","description":"Administering who can use a merchant account: one set of credentials across multiple MIDs, switching between them without logging out, the Admin / Member / Sales Partner roles and what each may see and do, and inviting a new member. Dashboard only - there is no users, roles or invites API.","includeFiles":["**/access-management/**"]},{"title":"API reference","description":"Endpoint reference generated from the Glomopay OpenAPI description.","includeFiles":["**/api-reference/**"]},{"title":"Developer resources","description":"What every integration touches and no single product owns: auth, errors, pagination, rate limits, webhooks, versioning, API validations, security, supported countries, quotes, and the client SDKs - React Native, Flutter, Android and the Unified Web SDK, with per-version references and changelogs. Reports and Identity and Access Management used to be listed here and are now their own sections.","includeFiles":["**/platform/**"]}]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"quotes","__idx":0},"children":["Quotes"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A quote locks in the terms of a transfer for a fixed period from creation. Use the returned quote ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," when creating a payin or payout to guarantee the quoted terms."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /quotes"]}," endpoint prices both payouts and payins."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"why-use-quotes","__idx":1},"children":["Why use quotes"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The primary purpose of a quote is to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["lock in pricing before funds move"]},". A quote freezes the terms of a transfer at the moment it is generated, and those terms stay guaranteed until the quote's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["expires_at"]},". Binding a quote to a payin or payout guarantees that the FX rate, fees, payment method and amounts shown to you are exactly what will be applied at execution — no surprises between pricing and settlement."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A quote locks the following until it expires:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["FX rate"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fx_rate"]},") — the exchange rate for the currency pair is fixed; it will not drift with the market."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payment method"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payment_method"]},") — the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["subtype"]}," and derived ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rail"]}," are pinned to the quoted option."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Pricing"]}," — the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["source_amount"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["destination_amount"]}," and the full ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fees"]}," breakdown (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["txn_fee"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fx_fee"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["referral_fee"]}," for payins) are fixed."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Without a quote, these terms are computed at request time and can vary with live market rates. By passing the quote ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["quote_id"]}," when initiating the movement of funds:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payins (payment links and orders)"]}," — the locked rate, fees and payment method are what the customer sees on the checkout page."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payouts"]}," — the locked rate, fees and payment method are what is applied to the payout at execution."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A quote is valid only until its ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["expires_at"]}," (shown in the response). Once it expires or has already been consumed, you must mint a fresh quote."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-quotes-work","__idx":2},"children":["How quotes work"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Request a quote"]}," — Provide the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["resource"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payout"]},"), the currency pair, an amount, and a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payment_method"]},". Specify either the source amount or destination amount (not both)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Review available options"]}," — For a payout, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["local_transfer"]}," to an INR destination returns one quote per rail (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["upi"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["imps"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["neft"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rtgs"]},"); ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["swift_transfer"]}," returns a single SWIFT quote. Each quote in the response carries its own ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payment_method.rail"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Use the quote"]}," — Provide the quote ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["quote_id"]}," in the relevant request: payins (payment links and orders) and payouts."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"key-details","__idx":3},"children":["Key details"]},{"$$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":"Detail"},"children":["Detail"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Value"},"children":["Value"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Quote validity"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A fixed period from creation"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Resource"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payout"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payin"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Amount specification"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Either ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["source_amount"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["destination_amount"]},", not both"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Amounts format"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["In cents"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payment method"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bank_transfer"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pay_via_bank"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pay_via_bank"]}," supports only ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["local_transfer"]},")"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Subtype"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["local_transfer"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["swift_transfer"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payment rails (derived)"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["upi"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["imps"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["neft"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rtgs"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["swift"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"example-request","__idx":4},"children":["Example request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -X POST https://api.glomopay.com/api/v1/quotes \\\n  -H \"Authorization: Bearer <your_token>\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"resource\": \"payout\",\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"INR\",\n    \"source_amount\": 10000,\n    \"payment_method\": {\n      \"type\": \"bank_transfer\",\n      \"subtype\": \"swift_transfer\"\n    }\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"example-response","__idx":5},"children":["Example response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"quotes\": [\n    {\n      \"id\": \"quote_3m4n5o6p7q\",\n      \"resource\": \"payout\",\n      \"expires_at\": \"2026-06-12T08:16:50Z\",\n      \"payment_method\": {\n        \"type\": \"bank_transfer\",\n        \"subtype\": \"swift_transfer\",\n        \"rail\": \"swift\"\n      },\n      \"source_currency\": \"USD\",\n      \"destination_currency\": \"INR\",\n      \"fx_rate\": 90.0,\n      \"source_amount\": 10000,\n      \"destination_amount\": 882000,\n      \"fees\": {\n        \"txn_fee\": {\n          \"currency\": \"USD\",\n          \"amount\": 100\n        },\n        \"fx_fee\": {\n          \"currency\": \"USD\",\n          \"amount\": 100\n        }\n      }\n    }\n  ]\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"fees-breakdown","__idx":6},"children":["Fees breakdown"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each quote includes a detailed fee breakdown:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transaction fee (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["txn_fee"]},")"]}," — Fixed fee charged per transaction."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["FX fee (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fx_fee"]},")"]}," — Fee applied on top of the exchange rate for currency conversion."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Referral fee (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["referral_fee"]},")"]}," — Payin only; present when a referral ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["price_id"]}," was applied."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All fees are expressed in the smallest unit of the fee currency."]}]},"headings":[{"value":"Quotes","id":"quotes","depth":1},{"value":"Why use quotes","id":"why-use-quotes","depth":2},{"value":"How quotes work","id":"how-quotes-work","depth":2},{"value":"Key details","id":"key-details","depth":2},{"value":"Example request","id":"example-request","depth":2},{"value":"Example response","id":"example-response","depth":2},{"value":"Fees breakdown","id":"fees-breakdown","depth":2}],"frontmatter":{"title":"Quotes","seo":{"title":"Quotes"}},"lastModified":"2026-09-22T05:15:29.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/platform/quote","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}