---
title: "Update a quote"
method: PATCH
path: "/v3/profiles/{profileId}/quotes/{quoteId}"
tags: ["quote"]
---

# Update a quote

`PATCH /v3/profiles/{profileId}/quotes/{quoteId}`

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](/guides/product/send-money/swift-network-transfers) 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.

{% admonition type="info" %}
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.
{% /admonition %}

## Path parameters

- `profileId` integer, required
- `quoteId` string, uuid, required

## Headers

- `X-External-Correlation-Id` string, uuid

## Response `200`

Returns a quote object.

- Quote
  - `id` string, uuid — ID of this quote (GUID format).
  - `sourceCurrency` string — Source (sending) currency code.
  - `targetCurrency` string — Target (receive) currency code.
  - `sourceAmount` number — Amount in source currency to send.
  - `targetAmount` number — Amount in target currency to be received by the recipient.
  - `payOut` string — Mechanism we use to deliver the transfer. Not usually of interest to the user.
  - `preferredPayIn` string — Preferred pay-in method.
  - `rate` number — Exchange rate value used for the conversion.
  - `createdTime` string, date-time — Quote created timestamp.
  - `user` integer — User ID who created the quote.
  - `profile` integer — Personal or business profile ID.
  - `rateType` 'FIXED' | 'FLOATING' — Whether the rate is fixed or floating.
  - `rateExpirationTime` string, date-time — Time the locked rate will expire.
  - `guaranteedTargetAmountAllowed` boolean — Whether guaranteed target amount is allowed.
  - `targetAmountAllowed` boolean — Whether target amount is allowed.
  - `guaranteedTargetAmount` boolean — Whether the target amount is guaranteed.
  - `providedAmountType` 'SOURCE' | 'TARGET' — Whether the quote was created as source or target.
  - `pricingConfiguration` object — Allows for pricing configurations to be overridden by partners on a transfer level.
    - `fee` object
      - `type` string — Identifies the type of fee that will be configured. Options include only `OVERRIDE`.
      - `variable` number — The selected variable percentage (in decimal format) that should be used in the pricingConfiguration.
      - `fixed` number — The selected fixed fee (in source currency) that should be used in the pricingConfiguration.
  - `paymentOptions` object[] — List of the methods a user can pay for the transfer.
    - `disabled` boolean — Whether this option is enabled or not for this quote.
    - `estimatedDelivery` string, date-time — The estimated delivery time for this combination of payIn and payOut methods, assuming payIn is performed now.
    - `formattedEstimatedDelivery` string — A string to display to users for the estimated delivery date.
    - `estimatedDeliveryDelays` object[] — Array of objects for delivery delays to display to users.
      - `reason` string — Reason of the delivery delay.
    - `fee` object — Object containing fee information.
      - `transferwise` number — The fee to be paid by the sender based on the current state of the quote.
      - `payIn` number — The fee for this payment option, based on the product type of the payment option.
      - `discount` number — Any discounts that have been applied to this quote for the user.
      - `partner` number — If you have agreed a custom price, it will be displayed here.
      - `total` number — The total fees to be paid - use this figure when displaying fees on your app.
    - `price` object — Object containing the price information.
      - `priceSetId` integer — ID of the price structure.
      - `total` object — The total fees to be paid - use this figure when displaying fees on your app.
        - `type` string — Type of the pricing element.
        - `label` string — Short text describing the price structure.
        - `value` object — Object containing value elements.
          - `amount` number — Amount to be paid.
          - `currency` string — Currency of the amount to be paid.
          - `label` string — Text version of the price.
        - `explanation` object — Object element giving more details about the price.
      - `items` object[] — Object containing the details of the different elements of the total price.
        - `id` string — ID of this item.
        - `type` string — Type of the pricing item. It could be `DISCOUNT` for example.
        - `label` string — Short text describing the pricing element.
        - `value` object — Object containing value elements.
          - `amount` number — Amount associated to this pricing element. Can be negative for discounts.
          - `currency` string — Currency of the pricing element.
          - `label` string — Text field containing the price and its currency.
        - `explanation` object — Additional information on a price breakdown item.
          - `plainText` string — Text element giving more details about the item.
          - `markdown` string — Formatted textual information.
      - `deferredFee` object — Deferred fee information from a pricingConfiguration override.
        - `amount` number — The amount of fees that has been deferred by a pricingConfiguration override.
        - `currency` string — The currency of the deferred fee amount.
      - `calculatedOn` object
        - `unroundedAmountToConvert` object — The amount, unrounded, that fees were calculated on and built up from.
          - `amount` number
          - `currency` string
    - `sourceAmount` number — sourceAmount when using this payment option.
    - `targetAmount` number — targetAmount when using this payment option.
    - `sourceCurrency` string — Source currency for this payment option.
    - `targetCurrency` string — Target currency for this payment option.
    - `payIn` string — Type of pay in method for this payment option.
    - `payOut` string — Type of pay out method for this payment option.
    - `allowedProfileTypes` string[] — Array of the allowed types of profile to use this payment option.
    - `payInProduct` string — Pay-in product type.
    - `feePercentage` number — Fee percentage for this payment option.
    - `disabledReason` object — Object present if a payment option is disabled.
      - `code` string — Code to denote the reason a payment method is unavailable.
      - `message` string — User friendly message to display when a method is unavailable.
  - `status` 'PENDING' | 'ACCEPTED' | 'FUNDED' | 'EXPIRED' — Current status of this quote.
  - `expirationTime` string, date-time — The time the quote expires.
  - `notices` object[] — Array of messages to display to the user. May be empty (`[]`) if there are no messages.
    - `text` string — The message to display.
    - `link` string, nullable — URL that provides more information to the message. May be `null` if there's no URL.
    - `type` 'WARNING' | 'INFO' | 'BLOCKED' — Type of message. If it is `BLOCKED`, don't allow the quote to be used to create the transfer.

## Other responses

- `429` — Rate limit exceeded. Retry after the number of seconds specified in the `Retry-After` header.

---

[API](https://skmtc.net/wise/apis/platform-api.md) · [All operations](https://skmtc.net/wise/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/wise/platform-api/revisions/4907a1d269ab/schema)
