Skip to content

Update a quote

Request

You should update a quote using a PATCH call to add a recipient. This will update the saved quote's data based on who and where the money will be sent to.

Updating the quote with a recipient may cause the available payment options, prices and estimated delivery times to change from the original quoted amounts. This is due to the fact that sending some currencies to some destinations costs a different amount based on the payment networks we use, for example sending USD to a country outside the USA uses international rather than domestic payment networks and as such costs more, or sending CAD over the Interac network is a more expensive operation.

When updating a quote the payOut field may change to denote the payment option you should select when sending to this recipient. For example sending USD to a swift_code recipient or CAD to an interac recipient will change payOut to SWIFT or INTERAC respectively. This field defaults to BANK_TRANSFER so it can be used in all cases to help select the correct paymentOption and hence show the correct pricing to users.

If you want to provide more transparency in terms of fees charged when your customers create quote with swift recipient for global currencies, you might consider to set payOut field with SWIFT_OUR value. This will ensure that the recipient receives complete target amount.

In this case, where pricing changes after a user selects recipient, you should show a message to your customer before confirming the transfer. Please see the section on Global Currencies to learn more how and why this works and the messaging you need to display.

Transfer Nature for BRL

When creating or updating a quote, the transfer nature can be set. This is a requirement for transfers to or from BRL and impacts the fees we charge on the quote, specifically the IOF.

Note that IOF is determined based on the transfer nature, sender information, and recipient information. The default IOF will be included in a quote until all relevant information has been included.

Omitting transfer nature will not prevent the transfer from being created or even funded. However, when attempting to process the transfer, it will be blocked and the money will be refunded to the sender.

Security
UserToken
Path
profileIdinteger, (int64)required

Personal or business profile ID.

Example:101
quoteIdstring, (uuid)required

The quote ID (GUID format).

Example:11144c35-9fe8-4c32-b7fd-d05c2a7734bf
Headers
X-External-Correlation-Idstring, (uuid), <= 36 characters

Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Example:f47ac10b-58cc-4372-a567-0e02b2c3d479
Bodyapplication/merge-patch+jsonrequired
targetAccountinteger, (int64)

ID of transfer recipient, found in response from POST v1/accounts (recipient creation).

Example:12345
payOutstring

Optional. Preferred payout method. Default value is BANK_TRANSFER. Examples of other accepted values include BALANCE, SWIFT, SWIFT_OUR, ALIPAY, and INTERAC.

Example:"SWIFT_OUR"
paymentMetadataobject

Optional. Used to pass additional metadata about the intended transfer.

pricingConfigurationobject

Required when configured for your client ID. Includes a pricingConfiguration to be used for pricing calculations with the quote. If previously passed, the existing pricingConfiguration will remain and not be updated.

curl -i -X PATCH \
  https://api.wise.com/v3/profiles/101/quotes/11144c35-9fe8-4c32-b7fd-d05c2a7734bf \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/merge-patch+json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "targetAccount": 12345,
    "payOut": "SWIFT_OUR",
    "paymentMetadata": {
      "transferNature": "MOVING_MONEY_BETWEEN_OWN_ACCOUNTS"
    },
    "pricingConfiguration": {
      "fee": {
        "type": "OVERRIDE",
        "variable": 0.011,
        "fixed": 15.42
      }
    }
  }'

Responses

Returns a quote object.

Headers
X-External-Correlation-Idstring, (uuid), <= 36 characters

Echoed back when X-External-Correlation-Id was included in the request. Learn more.

Example:"f47ac10b-58cc-4372-a567-0e02b2c3d479"
x-trace-idstring

Unique trace identifier assigned by Wise. Useful when contacting support about a specific request.

Example:"fba501b6d453b96789f52338f019341f"
Bodyapplication/json
idstring, (uuid)

ID of this quote (GUID format).

Example:"11144c35-9fe8-4c32-b7fd-d05c2a7734bf"
sourceCurrencystring

Source (sending) currency code.

Example:"GBP"
targetCurrencystring

Target (receive) currency code.

Example:"USD"
sourceAmountnumber

Amount in source currency to send.

Example:100
targetAmountnumber

Amount in target currency to be received by the recipient.

Example:129.24
payOutstring

Mechanism we use to deliver the transfer. Not usually of interest to the user.

Example:"BANK_TRANSFER"
preferredPayInstring

Preferred pay-in method.

Example:"BANK_TRANSFER"
ratenumber

Exchange rate value used for the conversion.

Example:1.30445
createdTimestring, (date-time)

Quote created timestamp.

Example:"2019-04-05T13:18:58Z"
userinteger, (int64)

User ID who created the quote.

Example:55
profileinteger, (int64)

Personal or business profile ID.

Example:101
rateTypestring

Whether the rate is fixed or floating.

Enum:"FIXED""FLOATING"
Example:"FIXED"
rateExpirationTimestring, (date-time)

Time the locked rate will expire.

Example:"2019-04-08T13:18:57Z"
guaranteedTargetAmountAllowedboolean

Whether guaranteed target amount is allowed.

Example:true
targetAmountAllowedboolean

Whether target amount is allowed.

Example:true
guaranteedTargetAmountboolean

Whether the target amount is guaranteed.

Example:false
providedAmountTypestring

Whether the quote was created as source or target.

Enum:"SOURCE""TARGET"
Example:"SOURCE"
pricingConfigurationobject

Allows for pricing configurations to be overridden by partners on a transfer level.

paymentOptionsArray of objects

List of the methods a user can pay for the transfer.

statusstring

Current status of this quote.

Enum:"PENDING""ACCEPTED""FUNDED""EXPIRED"
Example:"PENDING"
expirationTimestring, (date-time)

The time the quote expires.

Example:"2019-04-05T13:48:58Z"
noticesArray of objects

Array of messages to display to the user. May be empty ([]) if there are no messages.

Response
{ "id": "11144c35-9fe8-4c32-b7fd-d05c2a7734bf", "sourceCurrency": "GBP", "targetCurrency": "USD", "sourceAmount": 100, "targetAmount": 129.24, "payOut": "BANK_TRANSFER", "preferredPayIn": "BANK_TRANSFER", "rate": 1.30445, "createdTime": "2019-04-05T13:18:58Z", "user": 55, "profile": 101, "rateType": "FIXED", "rateExpirationTime": "2019-04-08T13:18:57Z", "guaranteedTargetAmountAllowed": true, "targetAmountAllowed": true, "guaranteedTargetAmount": false, "providedAmountType": "SOURCE", "pricingConfiguration": { "fee": { "type": "OVERRIDE", "variable": 0.011, "fixed": 15.42 } }, "paymentOptions": [ { "disabled": false, "estimatedDelivery": "2019-04-08T12:30:00Z", "formattedEstimatedDelivery": "by Apr 8", "estimatedDeliveryDelays": [], "fee": {}, "price": {}, "sourceAmount": 100, "targetAmount": 129.24, "sourceCurrency": "GBP", "targetCurrency": "USD", "payIn": "BANK_TRANSFER", "payOut": "BANK_TRANSFER", "allowedProfileTypes": [], "payInProduct": "CHEAP", "feePercentage": 0.0092, "disabledReason": {} } ], "status": "PENDING", "expirationTime": "2019-04-05T13:48:58Z", "notices": [ { "text": "You can have a maximum of 3 open transfers with a guaranteed rate. After that, they'll be transferred using the live rate. Complete or cancel your other transfers to regain the use of guaranteed rate.", "link": null, "type": "WARNING" } ] }