{
  "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": "Test (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.\n\n",
        "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.\n\n",
        "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. \n Note: No request body is needed for this request.\n\n",
        "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. \n Send the amount to refund and the authorization currency in the body.\n\n",
        "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 \n Note: You can only cancel a payment which is authorized. If the payment is settled, you must create a refund.\n\n",
        "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\n\n",
        "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)\n\n",
        "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\n\n",
        "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. \n Note: No request body is needed for this request.\n\n",
        "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\n\n",
        "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\n\n",
        "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.\n\n",
        "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.\n\n",
        "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. \n Note: It can take up to 15 minutes for a payment event to update.\n\n",
        "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. \n 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.\n\n",
        "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": {
      "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 authentication 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_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"
          }
        }
      },
      "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 authentication 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 authentication 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 authentication 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_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."
    }
  ]
}