title: QuotesPostRequest
type: object
description: The object sent in the POST /quotes request.
properties:
  quoteId:
    type: string
    description: >-
      Common ID between the FSPs for the quote object, decided by the Payer FSP.
      The ID should be reused for resends of the same quote for a transaction. A
      new ID should be generated for each new quote for a transaction.
    example: b51ec534-ee48-4575-b6a9-ead2955b8069
  transactionId:
    type: string
    description: >-
      Common ID (decided by the Payer FSP) between the FSPs for the future
      transaction object. The actual transaction will be created as part of a
      successful transfer process. The ID should be reused for resends of the
      same quote for a transaction. A new ID should be generated for each new
      quote for a transaction.
    example: a8323bc6-c228-4df2-ae82-e5a997baf899
  transactionRequestId:
    type: string
    description: Identifies an optional previously-sent transaction request.
    example: a8323bc6-c228-4df2-ae82-e5a997baf890
  payee:
    $ref: ./Party.yaml
    description: Information about the Payee in the proposed financial transaction.
  payer:
    properties:
      partyIdInfo:
        properties:
          partyIdType:
            type: string
            description: >-
              Information about the Payer in the proposed financial transaction.
              Type of the identifier.
            example: PERSONAL_ID
          partyIdentifier:
            type: string
            description: >-
              Information about the Payer in the proposed financial transaction.
              An indentifier for the Party.
            example: 16135551212
          partySubIdOrType:
            type: string
            description: >-
              Information about the Payer in the proposed financial transaction.
              A sub-identifier or sub-type for the Party.
            example: PASSPORT
          fspId:
            type: string
            description: FSP ID (if known).
            example: 1234
      merchantClassificationCode:
        type: string
        description: >-
          Used in the context of Payee Information, where the Payee happens to
          be a merchant accepting merchant payments.
        example: 1234
      name:
        type: string
        description: 'Display name of the Party, could be a real name or a nick name.'
        example: Lars Bergqvist
      personalInfo:
        properties:
          complexName:
            properties:
              firstName:
                type: string
                description: Party’s first name.
                example: Lars
              middleName:
                type: string
                description: Party’s middle name.
                example: Per
              lastName:
                type: string
                description: Party’s last name.
                example: Bergqvist
          dateOfBirth:
            type: string
            description: Date of birth for the Party.
            example: '1977-07-17'
  amountType:
    type: string
    description: 'SEND for send amount, RECEIVE for receive amount.'
    example: SEND
  amount:
    properties:
      currency:
        type: string
        description: Currency of the amount.
        example: USD
      amount:
        type: string
        description: Amount of money.
        example: 123.45
  fees:
    properties:
      currency:
        type: string
        description: Currency of the amount.
        example: USD
      amount:
        type: string
        description: Amount of money.
        example: 1.25
  transactionType:
    $ref: ./TransactionType.yaml
    description: Type of transaction for which the quote is requested.
  geoCode:
    $ref: ./GeoCode.yaml
    description: >-
      Longitude and Latitude of the initiating Party. Can be used to detect
      fraud.
  note:
    type: string
    description: A memo that will be attached to the transaction.
    example: Free-text memo.
  expiration:
    type: string
    description: >-
      Expiration is optional. It can be set to get a quick failure in case the
      peer FSP takes too long to respond. Also, it may be beneficial for
      Consumer, Agent, and Merchant to know that their request has a time limit.
    example: '2016-05-24T08:38:08.699-04:00'
  extensionList:
    $ref: ./ExtensionList.yaml
    description: 'Optional extension, specific to deployment.'
required:
  - quoteId
  - transactionId
  - payee
  - payer
  - amountType
  - amount
  - transactionType
