---
title: "Check account and quote compatibility"
method: POST
path: "/v2/accounts/{accountId}/quotes/{quoteId}/compatibility"
tags: ["recipient"]
---

# Check account and quote compatibility

`POST /v2/accounts/{accountId}/quotes/{quoteId}/compatibility`

Use this endpoint to check the compatibility of a recipient account with a quote before creating a transfer. This validation includes:

- Re-validating the recipient account details
- Checking all required fields are present (e.g., recipient address for USD transfers)
- Verifying account details with the recipient's bank (for supported currencies)

This endpoint is optional but useful to identify potential issues before transfer creation.

{% admonition type="info" %}
The confirmations field is only populated for currencies with recipient verification enabled. If absent, only standard validations apply.
{% /admonition %}

## Path parameters

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

## Headers

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

## Response `200`

Compatibility result including any verification outcomes. See [Verifying Recipient Details](/guides/developer/api-guides/recipient-verification) for details on handling the `confirmations` object.

- object
  - `accountId` integer — Recipient account ID.
  - `quoteId` string — Quote ID.
  - `confirmations` Confirmations — Verification results for the recipient's details. Only populated for currencies with recipient verification enabled (CNY, KRW, INR, IDR, EUR). See the [Recipient verification guides](/guides/product/send-money/recipient-verification) for how to handle these.
    - `acceptedOutcomes` boolean — Whether we've received an explicit customer acceptance.
    - `acceptedAt` string, date-time, nullable — Timestamp indicating time of outcome acceptance, `null` if has not been accepted.
    - `quoteId` string, nullable — If the confirmation check was run as part of a quote compatibility check, then the `quoteId` will be on the result. If `quoteId` is present, then the outcome acceptance will need the `quoteId` to be specified as well.
    - `outcomes` object[] — Array of confirmation outcomes. At the moment it is safe to assume that there is only one element in the outcomes list.
      - `type` string — The type of confirmation. Possible values: `ACCOUNT_EXISTENCE`, `NAME_MATCHING`, `NAME_RESOLUTION`.
      - `timestamp` string, date-time — Timestamp of when the confirmation check was performed.
      - `outcome` string — The actual outcome of the confirmation. Possible values: `SUCCESS`, `PARTIAL_FAILURE`, `FAILURE`, `COULD_NOT_CHECK`.
      - `requiresCustomerAcceptance` boolean — Whether we require customer acceptance. Whether this value is true or false is dependent on the currency and the nature of the confirmation.
      - `fieldsChecked` string[] — Fields we used to confirm the account.
      - `providedName` string — The name that the customer provided when creating the recipient account. Only populated for NAME_MATCHING and NAME_RESOLUTION types for certain outcomes.
      - `resolvedName` string — The name that we resolved during name matching or name resolution.
      - `message` string — Customer facing message about the outcome of the check.
      - `recommendedUpdates` object[] — Shows what are the correct values for some of the fields we've checked.
        - `path` string — The field path to update.
        - `value` string — The recommended value for the field.

## 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)
