# Create quote collection

Creates a collection of quotes for a proposed payment.
**Tutorials**
* Learn how to [Create a quote](../tutorials/create-a-v2-payment.md#create-a-quote-collection).

Endpoint: POST /v2/quotes/quote-collection
Version: 2025.11
Security: Bearer

## Security:

  - `Bearer` (unknown)
    http bearer JWT

## Request body:

  - `application/json` (unknown)
    Create quote collection request

## Request fields (application/json):

  - `quoteAmount` (number, required)
    The amount for which you wish to receive a collection of quotes.
    Example: 123.45

  - `quoteAmountType` (string, required)
    The type of amount for which you want to get a quote.
    Enum: "SOURCE_AMOUNT", "DESTINATION_AMOUNT"

  - `sourceCurrency` (string, required)
    The currency code of the currency that you are sending.
    Example: USD

  - `destinationCurrency` (string, required)
    The currency code of the currency in which your beneficiary will receive this payment.
    Example: MXN

  - `sourceCountry` (string)
    The country code of the country from where you are sending the funds. This is an ISO 3166-1 alpha-2 code.
    Example: US

  - `destinationCountry` (string)
    The country where the beneficiary is located specified in Alpha-2 Code format as defined in the ISO CountryCode ISO 3166-1 list. If the beneficiary is an individual, then this value is their country of residence. If the beneficiary is an institution, then this value is their the country of incorporation.
    Example: PH

  - `payoutCategory` (string, required)
    The name of the payout category.
    Example: BANK

  - `payinCategory` (string, required)
    The name of the pay in category indicating how this payment will be funded. The values FUNDED and T_PLUS_ONE are deprecated and will be removed in a future release.
    Example: PRE_FUNDING

  - `destinationBlockchainNetwork` (string)
    The name of the blockchain network on which the beneficiary will receive this payment.
    Example: Ethereum

## Response 201:

  - `201` (unknown)
    Creates a collection of quotes

## Response 201 fields (application/json):

  - `quoteCollectionId` (string, required)
    Unique ID that represents this quote collection.
    Example: 11111111-aaaa-2222-bbbb-222222222222

  - `quotes` (array, required)
    List of quotes

  - `quotes.quoteId` (string, required)
    Unique ID that represents this quote.
    Example: 7ea3399c-1234-5678-8d8f-d320ea406630

  - `quotes.quoteStatus` (string, required)
    Enum: "EXPIRED", "ACTIVE"

  - `quotes.quoteAmountType` (string)
    The type of amount for which you want to get a quote.
    Enum: "SOURCE_AMOUNT", "DESTINATION_AMOUNT"

  - `quotes.sourceAmount` (number)
    Amount to be sent by the originator. The value is rounded to the number of decimal
places defined by the ISO 4217 standard for the source currency (for example, 2 for
USD/EUR, 0 for JPY/KRW, 3 for BHD/KWD), using HALF_UP rounding mode.
    Example: 123.45

  - `quotes.destinationAmount` (number)
    Amount to be received by the beneficiary. The value is rounded to the number of decimal
places defined by the ISO 4217 standard for the destination currency (for example, 2 for
USD/EUR, 0 for JPY/KRW, 3 for BHD/KWD), using HALF_UP rounding mode.
    Example: 2438.19

  - `quotes.sourceCurrency` (string, required)
    The currency code of the currency that you are sending.
    Example: USD

  - `quotes.destinationCurrency` (string, required)
    The currency code of the currency in which your beneficiary will receive this payment.
    Example: MXN

  - `quotes.sourceCountry` (string)
    The country where the payment originator is located or incorporated, specified in Alpha-2 Code format as defined in the ISO CountryCode ISO 3166-1 list.
    Example: US

  - `quotes.destinationCountry` (string)
    The country code to which you wish to send the funds. It follows ISO 3166-1 alpha-2 code
    Example: MX

  - `quotes.payoutCategory` (string, required)
    Name of the payout category specified in the quote request.
    Example: BANK

  - `quotes.payinCategory` (string, required)
    The name of payin category specified in the quote request.
    Example: PRE_FUNDING

  - `quotes.adjustedExchangeRate` (object)
    Foreign Exchange (FX) rate used to calculate the quote.

  - `quotes.adjustedExchangeRate.adjustedRate` (number)
    Value of the Foreign Exchange (FX) rate.
    Example: 2

  - `quotes.fees` (array)
    A summary of fees included in this quote.

  - `quotes.fees.totalFee` (number)
    The value of the total fee included in this quote.
    Example: 12.23

  - `quotes.fees.feeCurrency` (string)
    The currency in which fees are charged.
    Example: USD

  - `quotes.fees.feeBreakdown` (array)
    An array of fees that provides a breakdown of how the total fees is calculated for this quote.

  - `quotes.fees.feeBreakdown.calculatedFee` (number)
    Value of the fee when the configured fee unit is applied against the `value`.
    Example: 2.43

  - `quotes.fees.feeBreakdown.feeName` (string)
    The name of the fee.
    Example: Service fee

  - `quotes.fees.feeBreakdown.feeDescription` (string)
    Description of the fee.
    Example: The service fee charged for this transaction.

  - `quotes.taxes` (array)
    A summary of taxes included in this quote.

  - `quotes.taxes.totalTaxes` (number)
    The value of the total taxes included in this quote.
    Example: 5.12

  - `quotes.taxes.taxCurrency` (string)
    The currency in which taxes are charged.
    Example: USD

  - `quotes.taxes.taxBreakdown` (array)
    An array of taxes with details such as tax description, rate, name and tax amount.

  - `quotes.taxes.taxBreakdown.taxAmount` (number)
    tax amount for this tax line item.
    Example: 2.43

  - `quotes.taxes.taxBreakdown.taxName` (string)
    The name of the tax.
    Example: ISS/ VAT/ GST etc

  - `quotes.taxes.taxBreakdown.taxDescription` (string)
    GST service fee tax .
    Example: The service fee tax charged for this transaction.

  - `quotes.taxes.taxBreakdown.taxRate` (number)
    The tax rate applied to calculate the tax amount.
    Example: 5

  - `quotes.createdAt` (string)
    The time when this quote was created, specified in UTC.
    Example: 2023-11-02T18:26:00.000123Z

  - `quotes.expiresAt` (string)
    The time when this quote expires, specified in UTC.
    Example: 2023-11-02T18:26:00.000123Z

  - `quotes.destinationBlockchainNetwork` (string)
    The name of the blockchain network on which the beneficiary will receive this payment.
    Example: Ethereum

## Response 400:

  - `400` (unknown)
    Bad request

## Response 400 fields (application/json):

  - `errors` (array, required)
    List of quote errors

  - `errors.code` (string, required)
    Unique identifier of an error
    Example: SYS_100

  - `errors.title` (string, required)
    Error message providing a brief summary of the error
    Example: Unable to process the request due to an internal server error.

  - `errors.type` (string, required)
    Identifies the problem type
    Example: USER_VALIDATION_ERROR

  - `errors.description` (string, required)
    Provides more technical information
    Example: Customer not found

  - `errors.timestamp` (string, required)
    The time when this error occurred, specified in UTC.
    Example: 2023-11-02T18:26:00.000123Z

  - `status` (integer, required)
    Response status code

## Response 401:

  - `401` (unknown)
    Unauthorized request

## Response 401 fields (application/json):

  - `errors` (array, required)
    List of quote errors

  - `errors.code` (string, required)
    Unique identifier of an error
    Example: SYS_100

  - `errors.title` (string, required)
    Error message providing a brief summary of the error
    Example: Unable to process the request due to an internal server error.

  - `errors.type` (string, required)
    Identifies the problem type
    Example: USER_VALIDATION_ERROR

  - `errors.description` (string, required)
    Provides more technical information
    Example: Customer not found

  - `errors.timestamp` (string, required)
    The time when this error occurred, specified in UTC.
    Example: 2023-11-02T18:26:00.000123Z

  - `status` (integer, required)
    Response status code

## Response 403:

  - `403` (unknown)
    The principal identified by the authorization header doesn't have enough scopes to perform this operation

## Response 403 fields (application/json):

  - `errors` (array, required)
    List of quote errors

  - `errors.code` (string, required)
    Unique identifier of an error
    Example: SYS_100

  - `errors.title` (string, required)
    Error message providing a brief summary of the error
    Example: Unable to process the request due to an internal server error.

  - `errors.type` (string, required)
    Identifies the problem type
    Example: USER_VALIDATION_ERROR

  - `errors.description` (string, required)
    Provides more technical information
    Example: Customer not found

  - `errors.timestamp` (string, required)
    The time when this error occurred, specified in UTC.
    Example: 2023-11-02T18:26:00.000123Z

  - `status` (integer, required)
    Response status code

## Response 500:

  - `500` (unknown)
    Internal server error

## Response 500 fields (application/json):

  - `errors` (array, required)
    List of quote errors

  - `errors.code` (string, required)
    Unique identifier of an error
    Example: SYS_100

  - `errors.title` (string, required)
    Error message providing a brief summary of the error
    Example: Unable to process the request due to an internal server error.

  - `errors.type` (string, required)
    Identifies the problem type
    Example: USER_VALIDATION_ERROR

  - `errors.description` (string, required)
    Provides more technical information
    Example: Customer not found

  - `errors.timestamp` (string, required)
    The time when this error occurred, specified in UTC.
    Example: 2023-11-02T18:26:00.000123Z

  - `status` (integer, required)
    Response status code

