> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.mangopay.com/api-reference/quotes/view-quote/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mangopay.com/_mcp/server. # View a Quote GET https://api.sandbox.mangopay.com/v2.01/{ClientId}/conversions/quote/{QuoteId} View a Quote Reference: https://docs.mangopay.com/api-reference/quotes/view-quote ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. If your platform is using a [proxy](/guides/sca/proxy-management) to take SCA-triggering action on behalf of users, you also need to integrate [mTLS authentication](/guides/sca/platform) and use the `api-mtls` base URL. ## Servers - `https://api.sandbox.mangopay.com` (Sandbox, default) - `https://api.mangopay.com` (Production) - `https://api-mtls.sandbox.mangopay.com` (mTLS Sandbox) - `https://api-mtls.mangopay.com` (mTLS Production) ## Request ### Path parameters - `ClientId` (string, required) — Platform's API account identifier, associated with the API key. - `QuoteId` (string, required) ## Response ### 200 Success - `Id` (string, optional) — Max length: 128 characters (see [data formats](/api-reference/overview/data-formats) for details) The unique identifier of the object. - `CreationDate` (integer, optional) — Unix timestamp (UTC) of the date and time the object was created. - `ExpirationDate` (integer, optional) — Unix timestamp (UTC) of the date and time the quote expires and can no longer be used. - `Status` (string, optional) — **Returned values:** `ACTIVE`, `EXPIRED` The status of the quote: - `ACTIVE` – The quote can be used to execute a quoted conversion. - `EXPIRED` – The quote can't be used because the `ExpirationDate` is passed. - `DebitedFunds` (ViewAQuoteResponseDebitedFunds, optional) — Information about the debited funds. - `CreditedFunds` (ViewAQuoteResponseCreditedFunds, optional) — Information about the credited funds. - `Fees` (Fees_ConversionResponse, optional) — Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet). **Note:** The fees currency must match the debited funds currency. - `ConversionRateResponse` (ConversionRateResponse, optional) — Information about the `MarketRate` used to convert funds and other indicative rates. - `RequestedFees` (RequestedFees_Conversion, optional) — Information about the `Fees` sent in the request. - `MarginsResponse` (MarginsResponse, optional) — Information about the margins calculated for the transaction. - `Tag` (string, optional) — Max. length: 255 characters Custom data that you can add to this object, such as unique identifiers in your system. To store multiple values, you can serialize them into a single string, for example a JSON object: `"{\"id_1\":AB123,\"id_2\":DE456}"`. - `Duration` (integer, optional) — **Allowed values:** `300`, `3600` The time in seconds during which the quote is active and can be used for conversions. By default, quotes are available for a duration of 5 or 60 minutes, as agreed between Mangopay and the platform. ## Types ### ViewAQuoteResponseDebitedFunds Information about the debited funds. - `Currency` (string, optional) — **Allowed values:** The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings). The currency of the amount. - `Amount` (integer, optional) — An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`). During a conversion, (`DebitedFunds.Amount` - `Fees`) * `MarketRate` = `CreditedFunds.Amount`. ### ViewAQuoteResponseCreditedFunds Information about the credited funds. - `Currency` (string, optional) — **Allowed values:** The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings). The currency of the amount. - `Amount` (integer, optional) — An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`). During a conversion, `CreditedFunds.Amount` = (`DebitedFunds.Amount` - `Fees`) * `MarketRate`. ### Fees_ConversionResponse Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet). **Note:** The fees currency must match the debited funds currency. - `Currency` (string, optional) — **Allowed values:** The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings). The currency of the amount. - `Amount` (integer, optional) — The amount of the currency in its minor unit. For example, EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`. ### ConversionRateResponse Information about the `MarketRate` used to convert funds and other indicative rates. - `ClientRate` (double, optional) — Max. 7 decimal places The indicative rate including Mangopay's markup, used during the billing cycle: `ClientRate` = `MarketRate` * (1 - `MarginsResponse.Mangopay`). The `MarginsResponse.Mangopay.Amount` gives the amount of debited currency that will be billed by Mangopay to your platform for the transaction. The `ClientRate` fluctuates in line with the `MarketRate`. - `MarketRate` (double, optional) — Max. 7 decimal places The rate used to convert funds during the conversion: (`DebitedFunds.Amount` - `Fees`) * `MarketRate` = `CreditedFunds.Amount`. The market rate fluctuates in line with FX market dynamics and is common to all platforms for the currency pair. - `FinalRate` (double, optional) — Max. 7 decimal places The indicative rate including the `UserMargin`, if your platform defined it in the request or the quote: `FinalRate` = `ClientRate` * (1 - `MarginsResponse.User`). The `MarginsResponse.User.Amount` gives the amount of debited currency that your platform could bill to the user for the transaction. If no `UserMargin` was included, the `FinalRate` is the same as the `ClientRate`. ### RequestedFees_Conversion Information about the `Fees` sent in the request. - `Type` (string, optional) — **Allowed values:** `PERCENTAGE`, `FIXED` **Default value:** `FIXED` The type of the `Value`. - `Value` (integer, optional) — The value to be used for the `Type`: - `PERCENTAGE` – In quantities of 0.1% (e.g. `150` equals 1.5%), the percentage of `DebitedFunds.Amount` deducted as fees. - `FIXED` – The amount deducted from `DebitedFunds.Amount` as fees, as an amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`). - `Currency` (string, optional) — **Allowed values:** The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings). The currency of the fees, which must match the debited currency. ### MarginsResponse Information about the margins calculated for the transaction. - `Mangopay` (MarginsResponseMangopay, optional) — The margin used by Mangopay to bill your platform (which is defined during contracting). - `User` (MarginsResponseUser, optional) — The margin your platform could use to bill the user, as calculated by `UserMargin` in the request or quote (otherwise `null` if not set). ### MarginsResponseMangopay The margin used by Mangopay to bill your platform (which is defined during contracting). - `Type` (string, optional) — **Response value:** `PERCENTAGE` The type of the `Value`, which for Mangopay is always `PERCENTAGE`. - `Value` (double, optional) — The value to be used for the `Type`. Mangopay's markup is expressed as a percentage (to convert to decimal, divide by 100). - `Amount` (integer, optional) — The amount of debited currency that Mangopay will charge your platform for the transaction during the billing cycle. ### MarginsResponseUser The margin your platform could use to bill the user, as calculated by `UserMargin` in the request or quote (otherwise `null` if not set). - `Type` (string, optional) — **Response values:** `PERCENTAGE`, `PIP` The type of the `Value`. - `Value` (double, optional) — The value to be used for the `Type`: - `PERCENTAGE` – The quantities of 1% used to calculate the user margin. - `PIP` – The quantities of `0.0001` (one pip) used to calculate the user margin. - `Amount` (integer, optional) — The amount of debited currency that your platform could bill to the user for the transaction. ## Examples ### Active **Response** ```json { "Id": "cvrquote_01J3G082JEQRQ4WGJPSVF5GPS7", "CreationDate": 1721745279, "ExpirationDate": 1721745579, "Status": "ACTIVE", "DebitedFunds": { "Currency": "GBP", "Amount": 1000 }, "CreditedFunds": { "Currency": "USD", "Amount": 1163 }, "Fees": { "Currency": "GBP", "Amount": 100 }, "ConversionRateResponse": { "ClientRate": 1.2793195, "MarketRate": 1.29172 }, "Tag": "Created using the Mangopay API Postman collection" } ``` **SDK Code** ```java Active import com.google.gson.GsonBuilder; import com.mangopay.MangoPayApi; import com.mangopay.entities.ConversionQuote; public class ViewQuote { public static void main(String[] args) throws Exception { MangoPayApi mangopay = new MangoPayApi(); mangopay.getConfig().setClientId("your-client-id"); mangopay.getConfig().setClientPassword("your-api-key"); ConversionQuote quote = mangopay.getConversionsApi().getConversionQuote("cvrquote_01HTFARNTMH993KYYNC8MZ2KH8"); Gson prettyPrint = new GsonBuilder().setPrettyPrinting().create(); String prettyJson = prettyPrint.toJson(quote); System.out.println(prettyJson); } } ``` ```csharp Active using MangoPay.SDK; using Newtonsoft.Json; class Program { static async Task Main(string[] args) { MangoPayApi api = new MangoPayApi(); api.Config.ClientId = "your-client-id"; api.Config.ClientPassword = "your-api-key"; var quoteId = "cvrquote_01J53JS92WDW6D0VY5136YTGJ7"; var viewQuote = await api.Conversions.GetConversionQuote(quoteId); string prettyPrint = JsonConvert.SerializeObject(viewQuote, Formatting.Indented); Console.WriteLine(prettyPrint); } } ``` ```php Active Config->ClientId = 'client-id'; $api->Config->ClientPassword = 'api-key'; $api->Config->TemporaryFolder = '../tmp/'; $api->Config->DebugMode = false; try { $response = $api->Conversions->GetConversionQuote("cvrquote_01JE9135DQRED1CX6FNXDNVSDD"); print_r($response); } catch(MGPResponseException $e) { print_r($e); } catch(MGPException $e) { print_r($e); } ``` ### Expired **Response** ```json { "Id": "cvrquote_01J3G082JEQRQ4WGJPSVF5GPS7", "CreationDate": 1721745279, "ExpirationDate": 1721745579, "Status": "EXPIRED", "DebitedFunds": { "Currency": "GBP", "Amount": 1000 }, "CreditedFunds": { "Currency": "USD", "Amount": 1163 }, "Fees": { "Currency": "GBP", "Amount": 100 }, "ConversionRateResponse": { "ClientRate": 1.2793195, "MarketRate": 1.29172 }, "Tag": "Created using the Mangopay API Postman collection" } ``` **SDK Code** ```java Expired import com.google.gson.GsonBuilder; import com.mangopay.MangoPayApi; import com.mangopay.entities.ConversionQuote; public class ViewQuote { public static void main(String[] args) throws Exception { MangoPayApi mangopay = new MangoPayApi(); mangopay.getConfig().setClientId("your-client-id"); mangopay.getConfig().setClientPassword("your-api-key"); ConversionQuote quote = mangopay.getConversionsApi().getConversionQuote("cvrquote_01HTFARNTMH993KYYNC8MZ2KH8"); Gson prettyPrint = new GsonBuilder().setPrettyPrinting().create(); String prettyJson = prettyPrint.toJson(quote); System.out.println(prettyJson); } } ``` ```csharp Expired using MangoPay.SDK; using Newtonsoft.Json; class Program { static async Task Main(string[] args) { MangoPayApi api = new MangoPayApi(); api.Config.ClientId = "your-client-id"; api.Config.ClientPassword = "your-api-key"; var quoteId = "cvrquote_01J53JS92WDW6D0VY5136YTGJ7"; var viewQuote = await api.Conversions.GetConversionQuote(quoteId); string prettyPrint = JsonConvert.SerializeObject(viewQuote, Formatting.Indented); Console.WriteLine(prettyPrint); } } ``` ```php Expired Config->ClientId = 'client-id'; $api->Config->ClientPassword = 'api-key'; $api->Config->TemporaryFolder = '../tmp/'; $api->Config->DebugMode = false; try { $response = $api->Conversions->GetConversionQuote("cvrquote_01JE9135DQRED1CX6FNXDNVSDD"); print_r($response); } catch(MGPResponseException $e) { print_r($e); } catch(MGPException $e) { print_r($e); } ```