1. Quotation

Step by step of how to create a quotation in Corporate API.

📑 Summary

  • Objective
  • Functionalities
  • Create Quotation
    • Data for Creating a Quote
    • Description of Accepted Purposes
    • Description of Accepted Currencies
  • Accept Quotation
    • Data for Accepting a Quote

Objective


The objective of this module is to exemplify what a quotation is and how to interact with this entity through Corporate API.

Functionalities


Through the quotation module, it is possible to:

Create Quotation Flow


The quote is the first step in creating an international transfer, it is an estimate of the foreign currency value along with the fees and taxes that must be displayed before proceeding to confirm the transfer.

❗️

Quotation Expiration

The expiration time of a quote can change according to the established contract. After this period, the generated quote will expire and the partner will need to request a new quote.

📍 1. Data for Creating a Quote

To create a quote, you need to provide the required parameters:

Field NameIs requiredDescription
directionYesThe direction of the quotation. It can be inbound or outbound.
purposeYesThe purpose for the quote (see list of accepted purposes below).
quotedAmountYesAmount informed for a quotation.
baseCurrencyIsoYesCurrency in ISO format which the client wants to buy.
quotedCurrencyIsoYesCurrency in ISO format which the client wants to sell.

Below you can see an example of a full request for creating an outbound quotation for the Crypto purpose:

curl --request POST \
     --url https://fx-sandbox.remessaonline.com.br/corporate/v1/quote \
     --header 'Authorization: Bearer {{token}}' \
     --header 'Content-Type: application/json' \
     --header 'User-Agent: {partnername}-remessa' \
     --header 'accept: application/json' \
     --header 'x-token: {{x-token}}' \
     --data '
{
  "direction": "OUTBOUND",
  "purpose": "CRYPTO",
  "quotedAmount": "1000",
  "baseCurrencyIso": "BRL",
  "quotedCurrencyIso": "USD"
}

📍 2. Description of Available Purposes

Purpose NameDescriptionDirection
COMEXBuying or selling of commodities in this exchange between parties located in different countries.Inbound or Outbound
PAYMENT_PROCESSINGHandling of financial transactions between parties in different countries.Inbound or Outbound
CAPITAL_INCREASEProcess of raising additional funds by a company through the issuance of new shares or other securities, which may involve investors or entities located in different countries.Inbound or Outbound
CRYPTOThis purpose involves the transaction of foreign currency in order to ultimately trade cryptocurrencies.Inbound or Outbound

📍 3. Description of Accepted Currencies

SymbolCurrency
USDAmerican Dollar
EUREuro
AUDAustralian Dollar
CHFSwiss Franc

Accept Quotation


Accepting a quote is an act of assuring that that quote will be paid and transacted on the same business day it was created. Therefore, Remessa Online will purchase foreign currency to guarantee the exchange.

❗️

Irrevesible Process

Accepting a quotation is an irreversible process. If the partner accepts a quotation, it must not be canceled or reversed. Otherwise, penalty charges and fines may be applied.

📍 1. Data for Accepting a Quote

To accept a quote, you need to provide the required parameters:

Field NameIs requiredDescription
quoteIdYesThe Id of the created quote.
amountNoThe parameter is only applicable to clients using the local quotation flow. In this case, it is mandatory to specify the amount in the foreign currency (e.g. USD) to be applied to the quote.
externalIdNoAn arbitrary string that can be used to identify the accept.
counterpartyIdYesThis field enables the partner to accept multiple quotations with different counterparties.

Below you can see an example of a full request for accepting a quote.

curl --request PUT \
     --url https://fx-sandbox.remessaonline.com.br/corporate/v1/quote/{quoteId}/accept \
     --header 'Authorization: Bearer {{token}}' \
     --header 'Content-Type: application/json' \
     --header 'User-Agent: {partnername}-remessa' \
     --header 'accept: application/json' \
     --header 'x-token: {{x-token}}' \
     --data '
{
  "amount": 1000,
  "externalId": "hg799270-c7dd-4bde-8822-03b1e19e08a4",
  "counterpartyId": "4303711a-62ba-43df-93d4-7h6c1848d8aa"
}