openapi: 3.0.1
info:
  title: Card Payments
  description: Payments root resource, returns links to available payments actions.
  version: '6'
servers:
  - url: https://try.access.worldpay.com
    description: testing (try)
  - url: https://access.worldpay.com
    description: live
paths:
  /payments/authorizations:
    post:
      tags:
        - Take a one-time payment
      summary: Create an authorization
      description: Take online card payments using our Card Payments API.
      operationId: authorize
      parameters:
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_authorize'
            examples:
              Payment authorization for GBP 2.50:
                description: Payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
              Payment authorization for GBP 2.50 with all optional fields:
                description: Payment authorization for GBP 2.50 with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                      cvc: '123'
                  channel: moto
              Tokenized card payment authorization for GBP 2.50:
                description: Tokenized card payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
              Apple wallet payment authorization for GBP 2.50:
                description: Apple wallet payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+applepay
                      walletToken: someToken
              Apple wallet payment authorization for GBP 2.50 with all optional fields:
                description: >-
                  Apple wallet payment authorization for GBP 2.50 with all
                  optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+applepay
                      walletToken: someToken
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
              Google wallet payment authorization for GBP 2.50:
                description: Google wallet payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+googlepay
                      walletToken: someToken
              Google wallet payment authorization for GBP 2.50 with all optional fields:
                description: >-
                  Google wallet payment authorization for GBP 2.50 with all
                  optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+googlepay
                      walletToken: someToken
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
              Payment authorization for GBP 2.50 using 3DS2 authentication:
                description: >-
                  Payment authorization for GBP 2.50 with using 3DS2
                  authentication
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                  customer:
                    authentication:
                      type: 3DS
                      version: '2'
                      eci: '00'
                      authenticationValue: abc123==
                      transactionId: '123'
      responses:
        '201':
          description: The payment authorization has been successfully created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/payments_authorize_201_response'
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: '#/components/schemas/payments_authorize_201_response'
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Payment authorization for GBP 2.50 with a successful outcome:
                  description: Payment authorization for GBP 2.50 with a successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with a refused outcome:
                  description: Payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
                Payment authorization with all optional fields and a successful outcome:
                  description: >-
                    Payment authorization with all optional fields and a
                    successful outcome
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    exemption:
                      result: honored
                      reason: issuerHonored
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Tokenized card payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Tokenized card payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Apple wallet payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Apple wallet payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Apple wallet payment authorization with all optional fields and a successful outcome:
                  description: >-
                    Apple wallet payment authorization with all optional fields
                    and a successful outcome
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    paymentInstrument:
                      type: card/network+masked
                      card:
                        number:
                          bin: '444433'
                          last4Digits: '1111'
                          dpan: someDPAN
                        countryCode: GB
                        expiryDate:
                          month: 1
                          year: 2020
                        brand: visa
                        fundingType: debit
                        issuer:
                          name: VALID_ISSUER
                        paymentAccountReference: somePAR
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Google wallet payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Google wallet payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Google wallet payment authorization with all optional fields and a successful outcome:
                  description: >-
                    Google wallet payment authorization with all optional fields
                    and a successful outcome
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    paymentInstrument:
                      type: card/network+masked
                      card:
                        number:
                          bin: '444433'
                          last4Digits: '1111'
                          dpan: someDPAN
                        countryCode: GB
                        expiryDate:
                          month: 1
                          year: 2020
                        brand: visa
                        fundingType: debit
                        issuer:
                          name: VALID_ISSUER
                        paymentAccountReference: somePAR
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization for GBP 2.50 using 3DS2 authentication with a successful outcome:
                  description: >-
                    Payment authorization for GBP 2.50 using 3DS2 authentication
                    with a successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/settlements/{linkData}:
    post:
      tags:
        - Manage Payments
      summary: Settle for Full amount
      description: |+
        To receive all the funds from the customer, send us a settle request.

      operationId: settle
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      responses:
        '202':
          description: The payment settlement has been accepted
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              examples:
                Request to fully settle the authorization:
                  description: Request to fully settle the authorization
                  value:
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/full/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:events:
                        href: /payments/events/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/settlements/partials/{linkData}:
    post:
      tags:
        - Manage Payments
      summary: Settle for Partial amount
      description: >+
        To receive a portion of the funds of a payment, send us a partial settle
        request.

      operationId: partialSettlement
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_partialSettle'
            examples:
              Request to partially settle the authorization:
                description: Request to partially settle the authorization
                value:
                  value:
                    amount: 500
                    currency: EUR
                  reference: partial-settle-reference
      responses:
        '202':
          description: The partial settlement has been accepted
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              examples:
                Request to partially settle the authorization:
                  description: Request to partially settle the authorization
                  value:
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/full/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/:linkData
                      payments:cancel:
                        href: /payments/authorizations/cancellations/:linkData
                      payments:events:
                        href: /payments/events/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/settlements/refunds/full/{linkData}:
    post:
      tags:
        - Manage Payments
      summary: Refund Full amount
      description: >+
        Send a refund request to return the full settled amount to your
        customer. 
         Note: No request body is needed for this request.

      operationId: refund
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      responses:
        '202':
          description: The refund request has been accepted
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              examples:
                Request to refund an authorization:
                  description: Request to refund an authorization
                  value:
                    _links:
                      payments:events:
                        href: /payments/events/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/settlements/refunds/partials/{linkData}:
    post:
      tags:
        - Manage Payments
      summary: Refund Partial amount
      description: >+
        Send a partial refund request to return a portion of the settled amount
        to your customer. 
         Send the amount to refund and the authorization currency in the body.

      operationId: partialRefund
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_partialRefund'
            examples:
              Request to perform a partial refund of the settlement:
                description: Request to perform a partial refund of the settlement
                value:
                  value:
                    amount: 10
                    currency: EUR
                  reference: partial-refund-reference
      responses:
        '202':
          description: The partial refund has been accepted
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              examples:
                Request to partially refund an authorization:
                  description: Request to partially refund an authorization
                  value:
                    _links:
                      payments:events:
                        href: /payments/events/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/authorizations/cancellations/{linkData}:
    post:
      tags:
        - Manage Payments
      summary: Cancel Authorization
      description: >+
        If you don’t want to proceed with a payment, you can send a cancel
        request 
         Note: You can only cancel a payment which is authorized. If the payment is settled, you must create a refund.

      operationId: cancel
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      responses:
        '202':
          description: The cancellation request has been accepted
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              examples:
                Request to cancel an authorization:
                  description: Request to cancel an authorization
                  value:
                    _links:
                      payments:events:
                        href: /payments/events/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/authorizations/cardOnFile/{linkData}:
    post:
      tags:
        - Take repeat payments
      summary: Authorize using Card on File with verification
      description: >+
        Use our card on file authorize resource when your customer is initiating
        a payment using stored card details verifying their account first

      operationId: cardOnFileAuthorize
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_cardOnFileAuthorize'
            examples:
              Payment authorization for GBP 2.50:
                description: Payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
              Payment authorization for GBP 2.50 with all optional fields:
                description: Payment authorization for GBP 2.50 with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                      cvc: '123'
                  channel: moto
              Payment authorization for GBP 2.50 using 3DS2 authentication:
                description: >-
                  Payment authorization for GBP 2.50 with using 3DS2
                  authentication
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                  customer:
                    authentication:
                      type: 3DS
                      version: '2'
                      eci: '00'
                      authenticationValue: abc123==
                      transactionId: '123'
              Card checkout payment authorization for GBP 2.50:
                description: Card checkout payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/checkout
                      cvcHref: https://worldpay.com/cvc
                      tokenHref: https://worldpay.com/token
              Apple wallet payment authorization for GBP 2.50:
                description: Apple wallet payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+applepay
                      walletToken: someToken
              Apple wallet payment authorization for GBP 2.50 with all optional fields:
                description: >-
                  Apple wallet payment authorization for GBP 2.50 with all
                  optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+applepay
                      walletToken: someToken
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
              Google wallet payment authorization for GBP 2.50:
                description: Google wallet payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+googlepay
                      walletToken: someToken
              Google wallet payment authorization for GBP 2.50 with all optional fields:
                description: >-
                  Google wallet payment authorization for GBP 2.50 with all
                  optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+googlepay
                      walletToken: someToken
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
      responses:
        '201':
          description: The payment authorization has been successfully created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/payments_cardOnFileAuthorize_201_response
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: >-
                      #/components/schemas/payments_cardOnFileAuthorize_201_response
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Payment authorization for GBP 2.50 with a successful outcome:
                  description: Payment authorization for GBP 2.50 with a successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with a refused outcome:
                  description: Payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
                Payment authorization with all optional fields:
                  description: Payment authorization with all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    exemption:
                      result: honored
                      reason: issuerHonored
                    scheme:
                      reference: someReference
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization for GBP 2.50 with a successful outcome using 3DS2 authentication:
                  description: >-
                    Payment authorization for GBP 2.50 with a successful outcome
                    using 3DS2 authentication
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Card checkout payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Card checkout payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Apple wallet payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Apple wallet payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      tokens:token:
                        href: http://access.worldpay.com/tokens/token
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Google wallet payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Google wallet payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      tokens:token:
                        href: http://access.worldpay.com/tokens/token
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Apple wallet payment authorization with all optional fields:
                  description: Apple wallet payment authorization with all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    paymentInstrument:
                      type: card/network+masked
                      card:
                        number:
                          bin: '444433'
                          last4Digits: '1111'
                          dpan: someDPAN
                        countryCode: GB
                        expiryDate:
                          month: 1
                          year: 2020
                        brand: visa
                        fundingType: debit
                        issuer:
                          name: VALID_ISSUER
                        paymentAccountReference: somePAR
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      tokens:token:
                        href: http://access.worldpay.com/tokens/token
                Google wallet payment authorization with all optional fields:
                  description: Google wallet payment authorization with all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    paymentInstrument:
                      type: card/network+masked
                      card:
                        number:
                          bin: '444433'
                          last4Digits: '1111'
                          dpan: someDPAN
                        countryCode: GB
                        expiryDate:
                          month: 1
                          year: 2020
                        brand: visa
                        fundingType: debit
                        issuer:
                          name: VALID_ISSUER
                        paymentAccountReference: somePAR
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      tokens:token:
                        href: http://access.worldpay.com/tokens/token
  /payments/authorizations/migrateCardOnFile:
    post:
      tags:
        - Take repeat payments
      summary: Authorize using Card on File no verification
      description: >+
        Use our card on file authorize resource when your customer is initiating
        a payment using stored card details (without verifying their account
        first)

      operationId: migrateCardOnFileAuthorize
      parameters:
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_migrateCardOnFileAuthorize'
            examples:
              Payment authorization for GBP 2.50:
                description: Payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
              Payment authorization for GBP 2.50 with all optional fields:
                description: Payment authorization for GBP 2.50 with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                      cvc: '123'
                  channel: moto
              Payment authorization for GBP 2.50 using 3DS2 authentication:
                description: >-
                  Payment authorization for GBP 2.50 with using 3DS2
                  authentication
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                  customer:
                    authentication:
                      type: 3DS
                      version: '2'
                      eci: '00'
                      authenticationValue: abc123==
                      transactionId: '123'
              Tokenized card payment authorization for GBP 2.50:
                description: Tokenized card payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
              Tokenized card payment authorization with all optional fields:
                description: Tokenized card payment authorization with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
                    intent: instalment
                    scheme:
                      reference: '0123456'
                  channel: moto
              Card checkout payment authorization for GBP 2.50:
                description: Card checkout payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/checkout
                      cvcHref: https://worldpay.com/cvc
                      tokenHref: https://worldpay.com/token
              Decrypted Apple Pay authorization for GBP 2.50:
                description: Decrypted Apple Pay authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/networkToken+applepay
                      dpan: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                  customer:
                    authentication:
                      type: card/networkToken
                      authenticationValue: abc123==
              Decrypted Apple Pay authorization with all optional fields:
                description: Decrypted Apple Pay authorization with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/networkToken+applepay
                      dpan: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                    intent: instalment
                    scheme:
                      reference: '0123456'
                  customer:
                    authentication:
                      type: card/networkToken
                      authenticationValue: abc123==
                      eci: '00'
              Apple wallet payment authorization for GBP 2.50:
                description: Apple wallet payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+applepay
                      walletToken: someToken
              Apple wallet payment authorization for GBP 2.50 with all optional fields:
                description: >-
                  Apple wallet payment authorization for GBP 2.50 with all
                  optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+applepay
                      walletToken: someToken
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
              Google wallet payment authorization for GBP 2.50:
                description: Google wallet payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+googlepay
                      walletToken: someToken
              Google wallet payment authorization for GBP 2.50 with all optional fields:
                description: >-
                  Google wallet payment authorization for GBP 2.50 with all
                  optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                        telephone: '0123456789'
                        email: test@email.com
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/wallet+googlepay
                      walletToken: someToken
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
      responses:
        '201':
          description: >-
            The authorization for migrated Card On File has been successfully
            created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/payments_migrateCardOnFileAuthorize_201_response
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: >-
                      #/components/schemas/payments_migrateCardOnFileAuthorize_201_response
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Payment authorization for GBP 2.50 with a successful outcome:
                  description: Payment authorization for GBP 2.50 with a successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with a refused outcome:
                  description: Payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
                Tokenized card payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Tokenized card payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with all optional fields:
                  description: Payment authorization with all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    exemption:
                      result: honored
                      reason: issuerHonored
                    scheme:
                      reference: someReference
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Card checkout payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Card checkout payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization for GBP 2.50 with a successful outcome using 3DS2 authentication:
                  description: >-
                    Payment authorization for GBP 2.50 with a successful outcome
                    using 3DS2 authentication
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Decrypted Apple Pay authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Decrypted Apple Pay authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Decrypted Apple Pay authorization with all optional fields:
                  description: Decrypted Apple Pay authorization with all optional fields
                  value:
                    outcome: authorized
                    scheme:
                      reference: someReference
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Tokenized card payment authorization with all optional fields:
                  description: >-
                    Tokenized card payment authorization with all optional
                    fields
                  value:
                    outcome: authorized
                    scheme:
                      reference: someReference
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      payments:cardOnFileAuthorize:
                        href: /payments/cardOnFile/linkData
                      payments:recurringAuthorize:
                        href: /payments/recurring/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/sales/migrateCardOnFile:
    post:
      tags:
        - Take repeat payments
      summary: Card on File Sale
      description: >+
        Use our card on file sale resource when your customer is initiating a
        payment using stored card details, and you want to instantly trigger the
        settlement process

      operationId: migrateCardOnFileSale
      parameters:
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_migrateCardOnFileSale'
            examples:
              Card sale for GBP 2.50:
                description: Card sale for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
              Card sale with all optional fields:
                description: Card sale with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                      cvc: '123'
                    intent: instalment
                    scheme:
                      reference: '0123456'
                  channel: moto
              Card sale for GBP 2.50 using 3DS2 authentication:
                description: Card sale for GBP 2.50 using 3DS2 authentication
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                  customer:
                    authentication:
                      type: 3DS
                      version: '2'
                      eci: '00'
                      authenticationValue: abc123==
                      transactionId: '123'
              Tokenized card sale for GBP 2.50:
                description: Tokenized card sale for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
              Tokenized card sale with all optional fields:
                description: Tokenized card sale with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
                    intent: instalment
                    scheme:
                      reference: '0123456'
                  channel: moto
              Card checkout sale for GBP 2.50:
                description: Card checkout sale for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/checkout
                      cvcHref: https://worldpay.com/cvc
                      tokenHref: https://worldpay.com/token
              Network token payment sale for GBP 2.50:
                description: >-
                  Network token payment sale for GBP 2.50 with a successful
                  outcome
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/networkToken
                      dpan: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
              Network token payment sale with all optional fields:
                description: Network token payment sale with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/networkToken
                      dpan: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                  customer:
                    authentication:
                      type: card/networkToken
                      authenticationValue: abc123==
                      eci: '00'
      responses:
        '201':
          description: The sale for migrated Card On File has been successfully created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/payments_migrateCardOnFileSale_201_response
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: >-
                      #/components/schemas/payments_migrateCardOnFileSale_201_response
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Sale for GBP 2.50 with a successful outcome:
                  description: Sale for GBP 2.50 with a successful outcome
                  value:
                    outcome: Sent For Settlement
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with a refused outcome:
                  description: Payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
                Tokenized card sale for GBP 2.50 with a successful outcome:
                  description: Tokenized card sale for GBP 2.50 with a successful outcome
                  value:
                    outcome: Sent For Settlement
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with all optional fields:
                  description: Payment authorization with all optional fields
                  value:
                    outcome: Sent For Settlement
                    exemption:
                      result: honored
                      reason: issuerHonored
                    scheme:
                      reference: someReference
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Card checkout sale  for GBP 2.50 with a successful outcome:
                  description: Card checkout sale  for GBP 2.50 with a successful outcome
                  value:
                    outcome: Sent For Settlement
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Card sale for GBP 2.50 with a successful outcome using 3DS2 authentication:
                  description: >-
                    Card sale for GBP 2.50 with a successful outcome using 3DS2
                    authentication
                  value:
                    outcome: Sent For Settlement
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Tokenized card sale with all optional fields:
                  description: Tokenized card sale with all optional fields
                  value:
                    outcome: Sent For Settlement
                    scheme:
                      reference: someReference
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Network token payment sale for GBP 2.50 with a successful outcome:
                  description: >-
                    Network token payment sale for GBP 2.50 with a successful
                    outcome
                  value:
                    outcome: Sent For Settlement
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Network token payment sale with all optional fields:
                  description: Network token payment sale with all optional fields
                  value:
                    outcome: Sent For Settlement
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/sales/reversals/{linkData}:
    post:
      tags:
        - Manage Payments
      summary: Reversal
      description: >+
        Your reversal request is processed as a cancel or refund request. This
        depends on the time passed after your sale request was submitted. For US
        entities the payment is refunded after one day after a successful sale
        request. Any other payment moves to refunded after 15 minutes. 
         Note: No request body is needed for this request.

      operationId: reversal
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      responses:
        '202':
          description: The reversal request has been accepted
          content:
            application/vnd.worldpay.payments-v6+json:
              examples:
                Request to reverse the settlement:
                  description: Request to reverse the settlement
                  value:
                    _links:
                      payments:events:
                        href: /payments/events/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/recurringMandates:
    post:
      tags:
        - Manage Payments
      summary: Recurring Mandate
      description: |+
        Create a recurring mandate using a scheme transaction ID

      operationId: recurringMandate
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_recurringMandate'
            examples:
              Request to create a recurring mandate from a scheme transaction ID:
                description: >-
                  Request to create a recurring mandate from a scheme
                  transaction ID
                value:
                  schemeTransactionId: '123456789'
      responses:
        '201':
          description: Recurring mandate created
  /payments/authorizations/migrateRecurring:
    post:
      tags:
        - Take repeat payments
      summary: Authorize Recurring Payment no verification
      description: >+
        Use our migrate recurring authorize resource when you are initiating a
        payment using your customer's stored card details, without verifying
        their account first

      operationId: migrateRecurringAuthorize
      parameters:
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_migrateRecurringAuthorize'
            examples:
              Recurring payment authorization for GBP 2.50:
                description: Recurring payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                    intent: subscription
              Recurring payment authorization with all optional fields:
                description: Recurring payment authorization with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                    intent: subscription
              Recurring tokenized card payment authorization for GBP 2.50:
                description: Recurring tokenized card payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
                    intent: subscription
      responses:
        '201':
          description: The recurring payment authorization has been successfully created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/payments_recurringAuthorize_201_response
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: >-
                      #/components/schemas/payments_recurringAuthorize_201_response
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Recurring payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Recurring payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Recurring payment authorization with a refused outcome:
                  description: Recurring payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
                Recurring payment authorization with a successfull outcome and all optional fields:
                  description: >-
                    Recurring payment authorization with a successfull outcome
                    and all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Recurring tokenized card payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Recurring tokenized card payment authorization for GBP 2.50
                    with a successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/authorizations/recurring/{linkData}:
    post:
      tags:
        - Take repeat payments
      summary: Authorize Recurring Payment with verification
      description: >+
        Use our recurring authorize resources when you are initiating a payment
        using your customer's stored card details, verifying your customer's
        account first.

      operationId: recurringAuthorize
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_recurringAuthorize'
            examples:
              Recurring payment authorization for GBP 2.50:
                description: Recurring payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                    intent: subscription
              Recurring payment authorization with all optional fields:
                description: Recurring payment authorization with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                    intent: subscription
              Recurring tokenized card payment authorization for GBP 2.50:
                description: Recurring tokenized card payment authorization for GBP 2.50
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                  instruction:
                    narrative:
                      line1: trading name
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/token
                      href: http://worldpay.com
                    intent: subscription
      responses:
        '201':
          description: The recurring payment authorization has been successfully created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/payments_recurringAuthorize_201_response
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: >-
                      #/components/schemas/payments_recurringAuthorize_201_response
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Recurring payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Recurring payment authorization for GBP 2.50 with a
                    successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Recurring payment authorization with a refused outcome:
                  description: Recurring payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
                Recurring payment authorization with a successfull outcome and all optional fields:
                  description: >-
                    Recurring payment authorization with a successfull outcome
                    and all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Recurring tokenized card payment authorization for GBP 2.50 with a successful outcome:
                  description: >-
                    Recurring tokenized card payment authorization for GBP 2.50
                    with a successful outcome
                  value:
                    outcome: authorized
                    _links:
                      payments:cancel:
                        href: /payments/authorizations/cancellations/linkData
                      payments:settle:
                        href: /payments/settlements/linkData
                      payments:partialSettle:
                        href: /payments/settlements/partials/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/sales/recurring/{linkData}:
    post:
      tags:
        - Take repeat payments
      summary: Recurring Sale
      description: >+
        Use our recurring sale resource to authorize and settle merchant
        initiated transactions where you have stored the card details. You must
        verify your customer's account before submitting your first recurring
        payment for authorization.

      operationId: recurringSale
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6+json
        - in: header
          name: Accept
          required: false
          schema:
            type: string
            example: application/vnd.worldpay.payments-v6.hal+json
      requestBody:
        content:
          application/vnd.worldpay.payments-v6+json:
            schema:
              $ref: '#/components/schemas/payments_recurringSale'
            examples:
              Recurring sale with all optional fields:
                description: Recurring sale with all optional fields
                value:
                  transactionReference: transaction-ref
                  merchant:
                    entity: an-entity
                    mcc: '1234'
                    paymentFacilitator:
                      pfId: '12345'
                      isoId: '12345'
                      subMerchant:
                        name: Merchant Plc
                        merchantId: '12345'
                        postalCode: SW1 1AA
                        street: Regent Street
                        city: London
                        countryCode: '123'
                        taxId: '12345'
                        state: St8
                  instruction:
                    debtRepayment: true
                    narrative:
                      line1: trading name
                      line2: order number
                    value:
                      currency: GBP
                      amount: 250
                    paymentInstrument:
                      type: card/plain
                      cardNumber: '4444333322221111'
                      cardExpiryDate:
                        month: 12
                        year: 2024
                      cardHolderName: John Appleseed
                      billingAddress:
                        address1: address line 1
                        address2: address line 2
                        address3: address line 3
                        city: city
                        state: state
                        postalCode: '12345'
                        countryCode: IT
                    intent: subscription
      responses:
        '201':
          description: The recurring payment has been successfully created
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/payments_recurringSale_201_response'
                  - $ref: '#/components/schemas/payments_authorize_201_refusal'
                discriminator:
                  mapping:
                    authorized: '#/components/schemas/payments_recurringSale_201_response'
                    refused: '#/components/schemas/payments_authorize_201_refusal'
                  propertyName: outcome
              examples:
                Payment sale with all optional fields:
                  description: Payment sale with all optional fields
                  value:
                    outcome: authorized
                    issuer:
                      authorizationCode: '012345'
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        detail: postcode
                        risk: not_checked
                    _links:
                      payments:refund:
                        href: /payments/settlements/refunds/:linkData
                      payments:partialRefund:
                        href: /payments/settlements/refunds/partials/:linkData
                      payments:reversal:
                        href: /payments/sales/reversals/linkData
                      payments:events:
                        href: /payments/events/linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
                Payment authorization with a refused outcome:
                  description: Payment authorization with a refused outcome
                  value:
                    outcome: refused
                    code: '50'
                    description: donothonour
                    rawCode: R1
                    refusalAdvice:
                      code: '04'
                    paymentInstrument:
                      type: card/plain+masked
                      card:
                        number:
                          last4Digits: '1111'
                        countryCode: GB
                        brand: visa
                        fundingType: debit
                        category: consumer
                        issuer:
                          name: someIssuerName
                    updatedPaymentInstrument:
                      type: card/networkToken
                      tokenNumber: '1111222233334444'
                    exemption:
                      result: rejected
                      reason: issuerRejected
                    riskFactors:
                      - type: cvc
                        risk: not_matched
                      - type: avs
                        risk: not_checked
                        detail: postcode
  /payments/events/{linkData}:
    get:
      tags:
        - Query a Payment
      summary: Query payment status
      description: >+
        Send a request to find out the current status of your payment after it
        has been authorized using the events action link. 
         Note: It can take up to 15 minutes for a payment event to update.

      operationId: eventQuery
      parameters:
        - name: linkData
          in: path
          description: Action link that's received in your request
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Retrieve the last event of a payment
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                $ref: '#/components/schemas/payments_events_200_response'
              examples:
                Querying a payment event with a transaction reference REF123:
                  description: Querying a payment event with a transaction reference REF123
                  value:
                    lastEvent: Authorized
                    _links:
                      payments:cancel: /payments/authorizations/cancellations/:linkData
                      payments:settle: /payments/settlements/full/:linkData
                      payments:partialSettle: /payments/settlements/partials/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
  /payments/events:
    get:
      tags:
        - Query a Payment
      summary: Query payment status Recovery
      description: >+
        Send a request to find out the current status of your payment after it
        has been authorized using the events action link. 
         This action is only to be used for recovery purposes. Use this action if your authorization requests timed out. The response determines if your authorization request was successful and your next available actions are returned.

      operationId: eventRecovery
      responses:
        '200':
          description: Retrieve the last event of a payment
          content:
            application/vnd.worldpay.payments-v6.hal+json:
              schema:
                $ref: '#/components/schemas/payments_events_recovery_200_response'
              examples:
                Querying a payment event with a transaction reference REF123:
                  description: Querying a payment event with a transaction reference REF123
                  value:
                    lastEvent: Authorized
                    _links:
                      payments:cancel: /payments/authorizations/cancellations/:linkData
                      payments:settle: /payments/settlements/full/:linkData
                      payments:partialSettle: /payments/settlements/partials/:linkData
                      curies:
                        - name: payments
                          href: /rels/payments/{rel}
                          templated: true
components:
  schemas:
    payments_root_200_response:
      required:
        - _links
      type: object
    card_plain:
      required:
        - type
        - cardNumber
        - cardExpiryDate
      type: object
      properties:
        cardExpiryDate:
          required:
            - month
            - year
          type: object
          description: Contains your customer's card expiry date.
          properties:
            month:
              type: integer
            year:
              type: integer
        type:
          enum:
            - card/plain
          type: string
          description: An identifier for the `paymentInstrument` being used.
        cardNumber:
          type: string
          description: Contains your customer's card number.
        billingAddress:
          required:
            - postalCode
            - countryCode
          type: object
          description: Contains the billing address information.
          properties:
            address1:
              type: string
            address2:
              type: string
            address3:
              type: string
            city:
              type: string
            postalCode:
              type: string
            state:
              type: string
            countryCode:
              type: string
        cardHolderName:
          type: string
          description: The cardholder's name as it appears on their card.
        cvc:
          type: string
          description: >-
            CVC is a unique set of 3 or 4 numbers on the back of the card. Our
            API checks to see if the CVC supplied matches the CVC held by the
            issuing bank.
    card_token:
      required:
        - type
        - href
      type: object
      properties:
        type:
          enum:
            - card/token
          type: string
        href:
          type: string
          description: An `http` address that contains your link to an Access Token
    card_wallet_3:
      required:
        - type
        - walletToken
      type: object
      properties:
        type:
          enum:
            - card/wallet+applepay
            - card/wallet+googlepay
          type: string
        walletToken:
          type: string
        billingAddress:
          required:
            - postalCode
            - countryCode
          type: object
          description: Contains the billing address information.
          properties:
            address1:
              type: string
            address2:
              type: string
            address3:
              type: string
            city:
              type: string
            postalCode:
              type: string
            state:
              type: string
            countryCode:
              type: string
    3DS:
      required:
        - type
        - version
        - eci
      type: object
      properties:
        version:
          enum:
            - '1'
            - '2'
          type: string
          description: The version of 3DS used to process the transaction.
        eci:
          type: string
          description: Electronic Commerce Indicator (ECI).
        type:
          enum:
            - 3DS
          type: string
        authenticationValue:
          type: string
          description: >-
            Required, if authentication.eci value is 01, 02, 05 or 06.  A
            cryptographic value that provides evidence of the outcome of a 3DS
            verification..
        transactionId:
          type: string
          description: >-
            Required, if authentication.eci value is 01, 02, 05 or 06.  A unique
            authentication transaction identifier, generated by the issuer.
    networkToken:
      required:
        - type
        - authenticationValue
      type: object
      properties:
        type:
          enum:
            - card/networkToken
          type: string
        authenticationValue:
          type: string
        eci:
          type: string
    payments_authorize:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        instruction:
          required:
            - value
            - narrative
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            paymentInstrument:
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_wallet_3'
              type: object
              discriminator:
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/wallet: '#/components/schemas/card_wallet_3'
                propertyName: type
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        channel:
          enum:
            - moto
          type: string
          description: >-
            The payment channel indicates the interaction of the cardholder with
            the merchant. Supply a value of moto to process an authorization as
            a Mail Order or Telephone Order (MOTO) transaction. If channel is
            not provided, the authorization will be processed as ecommerce by
            default
        customer:
          type: object
          description: >-
            An object that contains riskProfile and authentication of the
            customer.
          properties:
            riskProfile:
              type: string
              description: >-
                Used to apply the SCA exemption in the payment request and
                update the FraudSight data model to benefit future payments.
            authentication:
              description: >-
                An object containing 3DS or Network Token authnentication of the
                customer
              oneOf:
                - $ref: '#/components/schemas/3DS'
                - $ref: '#/components/schemas/networkToken'
              discriminator:
                propertyName: type
                mapping:
                  3DS: '#/components/schemas/3DS'
                  networkToken: '#/components/schemas/networkToken'
    payments_authorize_201_response:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        scheme:
          required:
            - reference
          type: object
          description: An object containing information returned by the scheme.
          properties:
            reference:
              type: string
    payments_authorize_201_refusal:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        description:
          type: string
          description: Additional context on the refusal.
        rawCode:
          type: string
          description: >-
            If enabled, the returned rawCode contains the unmodified response
            code received either directly from the card scheme or third-party
            acquirers.
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Full details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                category:
                  enum:
                    - commercial
                    - consumer
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        code:
          type: string
          description: Response code for the request.
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        refusalAdvice:
          type: object
          properties:
            code:
              type: string
          required:
            - code
        updatedPaymentInstrument:
          type: object
          properties:
            type:
              type: string
            tokenNumber:
              type: string
          required:
            - type
            - tokenNumber
    payments_cancel_202_response:
      type: object
    payments_settle_202_response:
      type: object
    payments_partialRefund:
      required:
        - value
        - reference
      type: object
      properties:
        value:
          required:
            - amount
            - currency
          type: object
          description: An object that contains information about the value of the payment.
          properties:
            amount:
              type: integer
            currency:
              type: string
        reference:
          type: string
    payments_partialSettle:
      required:
        - value
        - reference
      type: object
      properties:
        value:
          required:
            - amount
            - currency
          type: object
          description: An object that contains information about the value of the payment.
          properties:
            amount:
              type: integer
            currency:
              type: string
        reference:
          type: string
    payments_partialSettle_202_response:
      type: object
    card_checkout:
      required:
        - type
        - tokenHref
      type: object
      properties:
        type:
          enum:
            - card/checkout
          type: string
        tokenHref:
          type: string
        cvcHref:
          type: string
    card_wallet_applepay:
      required:
        - type
        - walletToken
      type: object
      properties:
        type:
          enum:
            - card/wallet+applepay
          type: string
        walletToken:
          type: string
        billingAddress:
          required:
            - postalCode
            - countryCode
          type: object
          description: Contains the billing address information.
          properties:
            postalCode:
              type: string
            countryCode:
              type: string
            city:
              type: string
            address2:
              type: string
            state:
              type: string
            address3:
              type: string
            address1:
              type: string
    card_wallet_googlepay:
      required:
        - type
        - walletToken
      type: object
      properties:
        type:
          enum:
            - card/wallet+googlepay
          type: string
        walletToken:
          type: string
        billingAddress:
          required:
            - postalCode
            - countryCode
          type: object
          description: Contains the billing address information.
          properties:
            postalCode:
              type: string
            countryCode:
              type: string
            city:
              type: string
            address2:
              type: string
            state:
              type: string
            address3:
              type: string
            address1:
              type: string
    payments_cardOnFileAuthorize:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        instruction:
          required:
            - value
            - narrative
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            paymentInstrument:
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_checkout'
                - $ref: '#/components/schemas/card_wallet_applepay'
                - $ref: '#/components/schemas/card_wallet_googlepay'
              type: object
              discriminator:
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/checkout: '#/components/schemas/card_checkout'
                  card/wallet+applepay: '#/components/schemas/card_wallet_applepay'
                  card/wallet+googlepay: '#/components/schemas/card_wallet_googlepay'
                propertyName: type
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
            intent:
              type: string
              description: >-
                A parameter detailing the reason for this particular card on
                file agreement.
              enum:
                - instalment
                - subscription
        customer:
          type: object
          description: >-
            An object that contains riskProfile and authentication of the
            customer.
          properties:
            riskProfile:
              type: string
            authentication:
              description: >-
                An object containing 3DS or Network Token authnentication of the
                customer
              oneOf:
                - $ref: '#/components/schemas/3DS'
                - $ref: '#/components/schemas/networkToken'
              discriminator:
                propertyName: type
    payments_cardOnFileAuthorize_201_response:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Full details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        scheme:
          required:
            - reference
          type: object
          description: An object containing information returned by the scheme.
          properties:
            reference:
              type: string
    card_networkToken_applepay:
      required:
        - type
        - dpan
        - cardExpiryDate
      type: object
      properties:
        dpan:
          type: string
        cardExpiryDate:
          required:
            - month
            - year
          type: object
          properties:
            month:
              type: integer
            year:
              type: integer
        type:
          enum:
            - card/networkToken+applepay
          type: string
        billingAddress:
          required:
            - postalCode
            - countryCode
          type: object
          properties:
            postalCode:
              type: string
            countryCode:
              type: string
            city:
              type: string
            address2:
              type: string
            state:
              type: string
            address3:
              type: string
            address1:
              type: string
        cardHolderName:
          type: string
    payments_migrateCardOnFileAuthorize:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        instruction:
          required:
            - value
            - narrative
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            paymentInstrument:
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_checkout'
                - $ref: '#/components/schemas/card_networkToken_applepay'
              type: object
              discriminator:
                propertyName: type
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/checkout: '#/components/schemas/card_checkout'
                  card/networkToken+applepay: '#/components/schemas/card_networkToken_applepay'
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
            intent:
              type: string
              description: >-
                A parameter detailing the reason for this particular card on
                file agreement.
              enum:
                - instalment
                - subscription
            scheme:
              required:
                - reference
              type: object
              properties:
                reference:
                  type: string
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        channel:
          enum:
            - moto
          type: string
          description: >-
            The payment channel indicates the interaction of the cardholder with
            the merchant. Supply a value of moto to process an authorization as
            a Mail Order or Telephone Order (MOTO) transaction. If channel is
            not provided, the authorization will be processed as ecommerce by
            default
        customer:
          type: object
          description: >-
            An object that contains riskProfile and authentication of the
            customer.
          properties:
            riskProfile:
              type: string
            authentication:
              description: >-
                An object containing 3DS or Network Token authnentication of the
                customer
              oneOf:
                - $ref: '#/components/schemas/3DS'
                - $ref: '#/components/schemas/networkToken'
              discriminator:
                propertyName: type
    payments_migrateCardOnFileAuthorize_201_response:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Full details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        scheme:
          required:
            - reference
          type: object
          description: An object containing information returned by the scheme.
          properties:
            reference:
              type: string
    card_networkToken:
      required:
        - type
        - dpan
        - cardExpiryDate
      type: object
      properties:
        dpan:
          type: string
        cardExpiryDate:
          required:
            - month
            - year
          type: object
          properties:
            month:
              type: integer
            year:
              type: integer
        type:
          enum:
            - card/networkToken
          type: string
        billingAddress:
          required:
            - postalCode
            - countryCode
          type: object
          properties:
            postalCode:
              type: string
            countryCode:
              type: string
            city:
              type: string
            address2:
              type: string
            state:
              type: string
            address3:
              type: string
            address1:
              type: string
        cardHolderName:
          type: string
    payments_migrateCardOnFileSale:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        instruction:
          required:
            - value
            - narrative
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            paymentInstrument:
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_checkout'
                - $ref: '#/components/schemas/card_networkToken'
              type: object
              discriminator:
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/checkout: '#/components/schemas/card_checkout'
                  card/networkToken: '#/components/schemas/card_networkToken'
                propertyName: type
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
            intent:
              type: string
              description: >-
                A parameter detailing the reason for this particular card on
                file agreement.
              enum:
                - instalment
                - subscription
            scheme:
              required:
                - reference
              type: object
              properties:
                reference:
                  type: string
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        channel:
          enum:
            - moto
          type: string
          description: >-
            The payment channel indicates the interaction of the cardholder with
            the merchant. Supply a value of moto to process an authorization as
            a Mail Order or Telephone Order (MOTO) transaction. If channel is
            not provided, the authorization will be processed as ecommerce by
            default
        customer:
          type: object
          description: >-
            An object that contains riskProfile and authentication of the
            customer.
          properties:
            riskProfile:
              type: string
            authentication:
              description: >-
                An object containing 3DS or Network Token authnentication of the
                customer
              oneOf:
                - $ref: '#/components/schemas/3DS'
                - $ref: '#/components/schemas/networkToken'
              discriminator:
                propertyName: type
    payments_migrateCardOnFileSale_201_response:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Full details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        scheme:
          required:
            - reference
          type: object
          description: An object containing information returned by the scheme.
          properties:
            reference:
              type: string
    payments_recurringMandate:
      required:
        - schemeTransactionId
      type: object
      properties:
        schemeTransactionId:
          type: string
    payments_migrateRecurringAuthorize:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        instruction:
          required:
            - value
            - narrative
            - intent
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            intent:
              type: string
              description: >-
                A parameter detailing the reason for this particular card on
                file agreement.
              enum:
                - instalment
                - subscription
            paymentInstrument:
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_networkToken_applepay'
              type: object
              discriminator:
                propertyName: type
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/networkToken+applepay: '#/components/schemas/card_networkToken_applepay'
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
    payments_migrateRecurringAuthorize_202_response:
      type: object
    payments_recurringAuthorize:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        instruction:
          required:
            - value
            - narrative
            - intent
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            intent:
              type: string
              description: >-
                A parameter detailing the reason for this particular card on
                file agreement.
              enum:
                - instalment
                - subscription
            paymentInstrument:
              type: object
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_networkToken_applepay'
              discriminator:
                propertyName: type
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/networkToken+applepay: '#/components/schemas/card_networkToken_applepay'
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
    payments_recurringAuthorize_201_response:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Full details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        scheme:
          required:
            - reference
          type: object
          description: An object containing information returned by the scheme.
          properties:
            reference:
              type: string
    payments_recurringSale:
      required:
        - transactionReference
        - merchant
        - instruction
      type: object
      properties:
        transactionReference:
          type: string
          description: >-
            A unique reference generated by you that is used to identify a
            payment throughout its lifecycle.
        merchant:
          required:
            - entity
          type: object
          description: An object that contains information about the merchant.
          properties:
            entity:
              type: string
              description: >-
                Direct your payment to assist with billing, reporting and
                reconciliation. This is mandatory for authentication and
                queries.
            mcc:
              type: string
              description: >-
                You can apply a merchant category code `mcc` to an individual
                request. You can only provide an mcc if we have enabled the
                dynamic mcc feature during boarding. If enabled but not
                provided, merchant.mcc defaults to a configured value.
            paymentFacilitator:
              required:
                - pfId
                - subMerchant
              type: object
              description: >-
                An object containing Payment Facilitator information. This
                information is required for every authorization <b>only if you
                are a Payment Facilitator.</b>
              properties:
                pfId:
                  type: string
                subMerchant:
                  required:
                    - merchantId
                    - name
                    - street
                    - city
                    - countryCode
                    - postalCode
                  type: object
                  properties:
                    city:
                      type: string
                    name:
                      type: string
                    postalCode:
                      type: string
                    merchantId:
                      type: string
                    countryCode:
                      type: string
                    street:
                      type: string
                    telephone:
                      type: string
                    taxId:
                      type: string
                    email:
                      type: string
                    state:
                      type: string
                isoId:
                  type: string
        instruction:
          required:
            - value
            - narrative
            - intent
            - paymentInstrument
          type: object
          description: An object that contains all information related to the payment.
          properties:
            narrative:
              required:
                - line1
              type: object
              description: >-
                The text that appears on your customer's statement. Used to
                identify the merchant.
              properties:
                line1:
                  type: string
                  description: >-
                    The first line of the narrative which appears on your
                    customer's statement (24 characters max. If character is not
                    supported it is replaced with a space).
                line2:
                  type: string
                  description: >-
                    Additional details about the payment e.g. order number,
                    telephone number.
            intent:
              type: string
              description: >-
                A parameter detailing the reason for this particular card on
                file agreement.
              enum:
                - instalment
                - subscription
            paymentInstrument:
              oneOf:
                - $ref: '#/components/schemas/card_plain'
                - $ref: '#/components/schemas/card_token'
                - $ref: '#/components/schemas/card_networkToken_applepay'
              type: object
              discriminator:
                propertyName: type
                mapping:
                  card/plain: '#/components/schemas/card_plain'
                  card/token: '#/components/schemas/card_token'
                  card/networkToken+applepay: '#/components/schemas/card_networkToken_applepay'
            value:
              required:
                - amount
                - currency
              type: object
              description: >-
                An object that contains information about the value of the
                payment.
              properties:
                amount:
                  type: integer
                  description: >-
                    The payment amount. This is a whole number with an exponent
                    e.g. if exponent is two, 250 is 2.50.
                currency:
                  type: string
                  description: The three digit currency code.
            debtRepayment:
              type: boolean
              description: >-
                DRI is a flag which identifies a payment as being for the
                purpose of repaying a debt.
    payments_recurringSale_201_response:
      required:
        - outcome
      type: object
      properties:
        outcome:
          type: string
          description: Outcome of the request.
        exemption:
          required:
            - result
            - reason
          type: object
          description: >-
            An exemption result and reason if a risk profile was included in
            your authorization request.
          properties:
            result:
              type: string
            reason:
              type: string
        issuer:
          required:
            - authorizationCode
          type: object
          description: An object containing information returned by the issuer.
          properties:
            authorizationCode:
              type: string
        paymentInstrument:
          type: object
          description: Full details of the paymentInstrument used.
          properties:
            type:
              type: string
            card:
              type: object
              properties:
                number:
                  type: object
                  properties:
                    bin:
                      type: string
                    last4Digits:
                      type: string
                    dpan:
                      type: string
                issuer:
                  type: object
                  properties:
                    name:
                      type: string
                paymentAccountReference:
                  type: string
                countryCode:
                  type: string
                fundingType:
                  type: string
                brand:
                  type: string
                expiryDate:
                  type: object
                  properties:
                    month:
                      type: integer
                    year:
                      type: integer
        riskFactors:
          required:
            - type
            - risk
          type: array
          items:
            required:
              - type
              - risk
            type: object
            properties:
              type:
                enum:
                  - avs
                  - cvc
                  - riskProfile
                type: string
              risk:
                enum:
                  - not_checked
                  - not_matched
                  - not_supplied
                  - verificationFailed
                type: string
              detail:
                enum:
                  - address
                  - postcode
                type: string
          description: >-
            Any risk factors which have been identified for the authorization.
            This section will not appear if no risks are identified.
        scheme:
          required:
            - reference
          type: object
          properties:
            reference:
              type: string
    payments_events_200_response:
      required:
        - lastEvent
      type: object
      properties:
        lastEvent:
          type: string
    payments_events_recovery_200_response:
      required:
        - lastEvent
      type: object
      properties:
        lastEvent:
          type: string
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
security:
  - BasicAuth: []
tags:
  - name: Take a one-time payment
    description: >-
      To take a payment, you must first create an authorization request. Your
      response contains links to your next available actions.
  - name: Take repeat payments
    description: Take a payment using a stored credential
  - name: Manage Payments
    description: Cancel, settle, refund or reverse payments
  - name: Query a Payment
    description: >-
      Send a request to find out the current status of your payment after it has
      been authorized.
