{
  "openapi": "3.0.1",
  "info": {
    "title": "PayPal eComm API",
    "description": "PayPal eComm APIs",
    "version": "1.6.0"
  },
  "servers": [
    {
      "url": "https://emea.gsc.verifone.cloud/oidc/paypal-ecom",
      "description": "EMEA Production"
    },
    {
      "url": "https://us.gsc.verifone.cloud/oidc/paypal-ecom",
      "description": "Americas Production"
    },
    {
      "url": "https://nz.gsc.verifone.cloud/oidc/paypal-ecom",
      "description": "New Zealand"
    },
    {
      "url": "https://cst.test-gsc.vfims.com/oidc/paypal-ecom",
      "description": "Global Sandbox"
    },
    {
      "url": "https://uscst.gb.gsc.cficloud/oidc/paypal-ecom",
      "description": "Americas Sandbox"
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "tags": [],
  "paths": {
    "/transactions": {
      "post": {
        "tags": ["Transactions"],
        "summary": "Create transaction",
        "operationId": "postTransactions",
        "parameters": [
          {
            "name": "paypalFraudId",
            "in": "header",
            "description": "PayPal Fraud Id",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction. <br/><b>Required</b> when billingAgreementId is passed in the payload",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model26"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model28"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/transactions/{id}": {
      "patch": {
        "tags": ["Transactions"],
        "summary": "Update transaction",
        "operationId": "patchTransactionsId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Transaction UUID from create transaction API",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/updateTransaction"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/transactions/risk/context": {
      "post": {
        "tags": ["Transactions"],
        "summary": "Set transaction context",
        "operationId": "postTransactionsRiskContext",
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model44"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model45"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/transactions/{id}/void": {
      "post": {
        "tags": ["Transactions"],
        "summary": "Cancel authorisation",
        "operationId": "postTransactionsIdVoid",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Transaction UUID from create transaction API",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/{id}/authorize": {
      "post": {
        "tags": ["Transactions"],
        "summary": "Authorize transaction",
        "operationId": "postTransactionsIdAuthorize",
        "parameters": [
          {
            "name": "paypalFraudId",
            "in": "header",
            "description": "PayPal Fraud Id",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "Transaction UUID from create transaction API",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model46"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model47"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/transactions/{id}/capture": {
      "post": {
        "tags": ["Transactions"],
        "summary": "Capture transaction",
        "operationId": "postTransactionsIdCapture",
        "parameters": [
          {
            "name": "paypalFraudId",
            "in": "header",
            "description": "PayPal Fraud Id",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "Transaction UUID from create transaction API",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model49"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model50"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/transactions/{id}/refund": {
      "post": {
        "tags": ["Transactions"],
        "summary": "Refund transaction",
        "operationId": "postTransactionsIdRefund",
        "parameters": [
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "Transaction UUID from create transaction API",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model52"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model53"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/billingAgreement/{agreementId}": {
      "get": {
        "tags": ["Billing Agreement"],
        "summary": "Get agreement details",
        "operationId": "getBillingagreementAgreementid",
        "parameters": [
          {
            "name": "agreementId",
            "in": "path",
            "description": "PayPal billing agreement id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model8"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      }
    },
    "/billingAgreement/token/{tokenId}": {
      "get": {
        "tags": ["Billing Agreement"],
        "summary": "Show token details",
        "operationId": "getBillingagreementTokenTokenid",
        "parameters": [
          {
            "name": "tokenId",
            "in": "path",
            "description": "The ID of the agreement token for which to show details.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model17"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      }
    },
    "/billingAgreement/create": {
      "post": {
        "tags": ["Billing Agreement"],
        "summary": "Create billing agreement using token",
        "operationId": "postBillingagreementCreate",
        "parameters": [
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model29"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model30"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/billingAgreement/initiate": {
      "post": {
        "tags": ["Billing Agreement"],
        "summary": "Initiate billing agreement",
        "operationId": "postBillingagreementInitiate",
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model32"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model33"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/billingAgreement/{agreementId}/cancel": {
      "post": {
        "tags": ["Billing Agreement"],
        "summary": "Cancel agreement details",
        "operationId": "postBillingagreementAgreementidCancel",
        "parameters": [
          {
            "name": "agreementId",
            "in": "path",
            "description": "PayPal billing agreement id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model38"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/products": {
      "get": {
        "tags": ["Products"],
        "summary": "List products",
        "operationId": "getProducts",
        "parameters": [
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The number of items to return in the response.",
            "schema": {
              "maximum": 20,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "A non-zero integer which is the start index of the entire list of items that are returned in the response. So, the combination of page=1 and page_size=20 returns the first 20 items. The combination of page=2 and page_size=20 returns the next 20 items.",
            "schema": {
              "maximum": 100000,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "name": "totalRequired",
            "in": "query",
            "description": "Indicates whether to show the total items and total pages in the response.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model7"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": ["Products"],
        "summary": "Create product",
        "operationId": "postProducts",
        "parameters": [
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model18"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model10"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/products/{id}": {
      "get": {
        "tags": ["Products"],
        "summary": "Get product details",
        "operationId": "getProductsId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The product ID.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model10"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": ["Products"],
        "summary": "Update product",
        "operationId": "patchProductsId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The product ID.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model54"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/billingPlans": {
      "get": {
        "tags": ["Billing Plans"],
        "summary": "List billing plans",
        "operationId": "getBillingplans",
        "parameters": [
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "Filters the response by a Product ID.",
            "schema": {
              "maxLength": 50,
              "minLength": 6,
              "type": "string"
            }
          },
          {
            "name": "ids",
            "in": "query",
            "description": "Filters the response by list of plan IDs.",
            "schema": {
              "maxLength": 270,
              "minLength": 6,
              "type": "string"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The number of items to return in the response.",
            "schema": {
              "maximum": 20,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "A non-zero integer which is the start index of the entire list of items to return in the response.",
            "schema": {
              "maximum": 100000,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "name": "totalRequired",
            "in": "query",
            "description": "Indicates whether to show the total count in the response.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model4"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      }
    },
    "/billingPlans/{planId}/activate": {
      "put": {
        "tags": ["Billing Plans"],
        "summary": "Activate billing plans",
        "operationId": "putBillingplansPlanidActivate",
        "parameters": [
          {
            "name": "planId",
            "in": "path",
            "description": "PayPal billing plan Id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model38"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/billingPlans/{planId}/deactivate": {
      "put": {
        "tags": ["Billing Plans"],
        "summary": "Deactivate billing plans",
        "operationId": "putBillingplansPlanidDeactivate",
        "parameters": [
          {
            "name": "planId",
            "in": "path",
            "description": "PayPal billing plan Id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model38"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "bod"
      }
    },
    "/billingPlans/{planId}": {
      "get": {
        "tags": ["Billing Plans"],
        "summary": "Get billing plan",
        "operationId": "getBillingplansPlanid",
        "parameters": [
          {
            "name": "planId",
            "in": "path",
            "description": "PayPal billing plan Id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model9"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": ["Billing Plans"],
        "summary": "Update billing plans",
        "operationId": "putBillingplansPlanid",
        "parameters": [
          {
            "name": "planId",
            "in": "path",
            "description": "PayPal billing plan Id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model61"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/billingPlans/create": {
      "post": {
        "tags": ["Billing Plans"],
        "summary": "Create billing plan",
        "operationId": "postBillingplansCreate",
        "parameters": [
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model36"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model37"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions": {
      "post": {
        "tags": ["Subscriptions"],
        "summary": "Create subscription",
        "operationId": "postSubscriptions",
        "parameters": [
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model20"
              }
            }
          },
          "required": false
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model21"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions/{id}": {
      "get": {
        "tags": ["Subscriptions"],
        "summary": "Subscription Details",
        "operationId": "getSubscriptionsId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentProviderContract",
            "in": "query",
            "description": "PayPal Payment Provider Contract UUID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model16"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": ["Subscriptions"],
        "summary": "Update subscription",
        "operationId": "patchSubscriptionsId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model59"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions/{id}/revise": {
      "post": {
        "tags": ["Subscriptions"],
        "summary": "Revise subscription",
        "operationId": "postSubscriptionsIdRevise",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model39"
              }
            }
          },
          "required": false
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions/{id}/cancel": {
      "post": {
        "tags": ["Subscriptions"],
        "summary": "Cancel subscription",
        "operationId": "postSubscriptionsIdCancel",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model40"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions/{id}/capture": {
      "post": {
        "tags": ["Subscriptions"],
        "summary": "Capture authorized payment on subscription",
        "operationId": "postSubscriptionsIdCapture",
        "parameters": [
          {
            "name": "x-vfi-api-idempotencyKey",
            "in": "header",
            "description": "A value you specify that uniquely identifies the transaction. If you're unsure whether a particular transaction succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the transaction.",
            "schema": {
              "type": "string",
              "x-format": {
                "guid": true
              }
            },
            "x-format": {
              "guid": true
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model41"
              }
            }
          },
          "required": false
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {}
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions/{id}/activate": {
      "post": {
        "tags": ["Subscriptions"],
        "summary": "Activate subscription",
        "operationId": "postSubscriptionsIdActivate",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model42"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    },
    "/subscriptions/{id}/suspend": {
      "post": {
        "tags": ["Subscriptions"],
        "summary": "Suspend subscription",
        "operationId": "postSubscriptionsIdSuspend",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {
                "$ref": "#/components/schemas/Model43"
              }
            }
          },
          "required": false
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {}
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Model5"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "body"
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "type": "http"
      }
    },
    "schemas": {
      "fixedPrice": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          },
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          }
        },
        "description": "The fixed amount to charge for the subscription"
      },
      "amount": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          },
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          }
        }
      },
      "Model1": {
        "required": ["amount", "startingQuantity"],
        "type": "object",
        "properties": {
          "startingQuantity": {
            "type": "string",
            "description": "The starting quantity for the tier."
          },
          "endingQuantity": {
            "type": "string",
            "description": "The ending quantity for the tier. Optional for the last tier."
          },
          "amount": {
            "$ref": "#/components/schemas/amount"
          }
        }
      },
      "tiers": {
        "type": "array",
        "description": "An array of pricing tiers which are used for billing volume/tiered plans.",
        "items": {
          "$ref": "#/components/schemas/Model1"
        }
      },
      "pricingScheme": {
        "type": "object",
        "properties": {
          "version": {
            "maximum": 999,
            "type": "number",
            "description": "The version of the pricing scheme."
          },
          "fixedPrice": {
            "$ref": "#/components/schemas/fixedPrice"
          },
          "pricingModel": {
            "type": "string",
            "description": "The pricing model for tiered plan",
            "enum": ["VOLUME", "TIERED"]
          },
          "tiers": {
            "$ref": "#/components/schemas/tiers"
          }
        },
        "description": "The active pricing scheme for this billing cycle."
      },
      "frequency": {
        "required": ["intervalUnit"],
        "type": "object",
        "properties": {
          "intervalUnit": {
            "type": "string",
            "description": "The interval at which the subscription is charged or billed.",
            "enum": ["DAY", "WEEK", "MONTH", "YEAR"]
          },
          "intervalCount": {
            "type": "number",
            "description": "The number of intervals after which a subscriber is billed."
          }
        }
      },
      "Model2": {
        "required": ["frequency", "sequence", "tenureType"],
        "type": "object",
        "properties": {
          "pricingScheme": {
            "$ref": "#/components/schemas/pricingScheme"
          },
          "frequency": {
            "$ref": "#/components/schemas/frequency"
          },
          "tenureType": {
            "type": "string",
            "description": "The interval at which the subscription is charged or billed.",
            "enum": ["REGULAR", "TRIAL"]
          },
          "sequence": {
            "type": "number",
            "description": "The order in which this cycle is to run among other billing cycles."
          },
          "totalCycles": {
            "type": "number",
            "description": "The number of times this billing cycle gets executed."
          }
        }
      },
      "billingCycles": {
        "minItems": 1,
        "type": "array",
        "description": "An array of billing cycles for trial billing and regular billing",
        "items": {
          "$ref": "#/components/schemas/Model2"
        }
      },
      "setupFee": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          },
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          }
        },
        "description": "The initial set-up fee for the service."
      },
      "paymentPreferences": {
        "type": "object",
        "properties": {
          "autoBillOutstanding": {
            "type": "boolean",
            "description": "Indicates whether to automatically bill the outstanding amount in the next billing cycle."
          },
          "setupFee": {
            "$ref": "#/components/schemas/setupFee"
          },
          "setupFeeFailureAction": {
            "type": "string",
            "description": "The action to take on the subscription if the initial payment for the setup fails.",
            "enum": ["CONTINUE", "CANCEL"]
          },
          "paymentFailureThreshold": {
            "type": "number",
            "description": "The maximum number of payment failures before a subscription is suspended."
          }
        },
        "description": "The payment preferences for a subscription."
      },
      "taxes": {
        "required": ["percentage"],
        "type": "object",
        "properties": {
          "percentage": {
            "type": "string",
            "description": "The tax percentage on the billing amount."
          },
          "inclusive": {
            "type": "boolean",
            "description": "Indicates whether the tax was already included in the billing amount."
          }
        },
        "description": "The tax details."
      },
      "Model3": {
        "required": [
          "billingCycles",
          "createTime",
          "name",
          "paymentPreferences"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 6,
            "type": "string",
            "description": "Filters the response by a Product ID."
          },
          "name": {
            "maxLength": 127,
            "type": "string",
            "description": "The plan name"
          },
          "billingCycles": {
            "$ref": "#/components/schemas/billingCycles"
          },
          "paymentPreferences": {
            "$ref": "#/components/schemas/paymentPreferences"
          },
          "status": {
            "type": "string",
            "description": "The initial state of the plan",
            "enum": ["ACTIVE", "INACTIVE", "CREATED"]
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "The detailed description of the plan."
          },
          "taxes": {
            "$ref": "#/components/schemas/taxes"
          },
          "quantitySupported": {
            "type": "boolean",
            "description": "Indicates whether you can subscribe to this plan by providing a quantity for the goods or service."
          },
          "createTime": {
            "type": "string",
            "description": "The date and time when the billing plan was created.",
            "format": "date"
          },
          "updateTime": {
            "type": "string",
            "description": "The date and time when the billing plan was updated.",
            "format": "date"
          }
        }
      },
      "plans": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/Model3"
        }
      },
      "Model4": {
        "type": "object",
        "properties": {
          "plans": {
            "$ref": "#/components/schemas/plans"
          },
          "totalItems": {
            "type": "number",
            "description": "The total number of items."
          },
          "totalPages": {
            "type": "number",
            "description": "The total number of pages."
          }
        }
      },
      "details": {
        "type": "object"
      },
      "Model5": {
        "required": ["code", "message"],
        "type": "object",
        "properties": {
          "code": {
            "type": "number",
            "description": "A 3-digit code which uniquely identify an error."
          },
          "details": {
            "$ref": "#/components/schemas/details"
          },
          "message": {
            "type": "string",
            "description": "A description of the error."
          },
          "timestamp": {
            "type": "string",
            "description": "Error timestamp",
            "format": "date"
          }
        }
      },
      "Model6": {
        "required": ["createdAt", "name", "type", "updatedAt"],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 6,
            "type": "string",
            "description": "The ID of the product. You can specify the SKU for the product. If you omit the ID, the system generates it. System-generated IDs have the PROD- prefix"
          },
          "name": {
            "maxLength": 127,
            "minLength": 1,
            "type": "string",
            "description": "The product name"
          },
          "description": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "The product description"
          },
          "type": {
            "type": "string",
            "description": "The product type. Indicates whether the product is physical or tangible goods, or a service",
            "example": "PHYSICAL",
            "enum": ["PHYSICAL", "DIGITAL", "SERVICE"]
          },
          "category": {
            "type": "string",
            "description": "The product category",
            "example": "AUTO_RENTALS",
            "enum": [
              "AC_REFRIGERATION_REPAIR",
              "ACADEMIC_SOFTWARE",
              "ACCESSORIES",
              "ACCOUNTING",
              "ADULT",
              "ADVERTISING",
              "AFFILIATED_AUTO_RENTAL",
              "AGENCIES",
              "AGGREGATORS",
              "AGRICULTURAL_COOPERATIVE_FOR_MAIL_ORDER",
              "AIR_CARRIERS_AIRLINES",
              "AIRLINES",
              "AIRPORTS_FLYING_FIELDS",
              "ALCOHOLIC_BEVERAGES",
              "AMUSEMENT_PARKS_CARNIVALS",
              "ANIMATION",
              "ANTIQUES",
              "APPLIANCES",
              "AQUARIAMS_SEAQUARIUMS_DOLPHINARIUMS",
              "ARCHITECTURAL_ENGINEERING_AND_SURVEYING_SERVICES",
              "ART_AND_CRAFT_SUPPLIES",
              "ART_DEALERS_AND_GALLERIES",
              "ARTIFACTS_GRAVE_RELATED_AND_NATIVE_AMERICAN_CRAFTS",
              "ARTS_AND_CRAFTS",
              "ARTS_CRAFTS_AND_COLLECTIBLES",
              "AUDIO_BOOKS",
              "AUTO_ASSOCIATIONS_CLUBS",
              "AUTO_DEALER_USED_ONLY",
              "AUTO_RENTALS",
              "AUTO_SERVICE",
              "AUTOMATED_FUEL_DISPENSERS",
              "AUTOMOBILE_ASSOCIATIONS",
              "AUTOMOTIVE",
              "AUTOMOTIVE_REPAIR_SHOPS_NON_DEALER",
              "AUTOMOTIVE_TOP_AND_BODY_SHOPS",
              "AVIATION",
              "BABIES_CLOTHING_AND_SUPPLIES",
              "BABY",
              "BANDS_ORCHESTRAS_ENTERTAINERS",
              "BARBIES",
              "BATH_AND_BODY",
              "BATTERIES",
              "BEAN_BABIES",
              "BEAUTY",
              "BEAUTY_AND_FRAGRANCES",
              "BED_AND_BATH",
              "BICYCLE_SHOPS_SALES_AND_SERVICE",
              "BICYCLES_AND_ACCESSORIES",
              "BILLIARD_POOL_ESTABLISHMENTS",
              "BOAT_DEALERS",
              "BOAT_RENTALS_AND_LEASING",
              "BOATING_SAILING_AND_ACCESSORIES",
              "BOOKS",
              "BOOKS_AND_MAGAZINES",
              "BOOKS_MANUSCRIPTS",
              "BOOKS_PERIODICALS_AND_NEWSPAPERS",
              "BOWLING_ALLEYS",
              "BULLETIN_BOARD",
              "BUS_LINE",
              "BUS_LINES_CHARTERS_TOUR_BUSES",
              "BUSINESS",
              "BUSINESS_AND_SECRETARIAL_SCHOOLS",
              "BUYING_AND_SHOPPING_SERVICES_AND_CLUBS",
              "CABLE_SATELLITE_AND_OTHER_PAY_TELEVISION_AND_RADIO_SERVICES",
              "CABLE_SATELLITE_AND_OTHER_PAY_TV_AND_RADIO",
              "CAMERA_AND_PHOTOGRAPHIC_SUPPLIES",
              "CAMERAS",
              "CAMERAS_AND_PHOTOGRAPHY",
              "CAMPER_RECREATIONAL_AND_UTILITY_TRAILER_DEALERS",
              "CAMPING_AND_OUTDOORS",
              "CAMPING_AND_SURVIVAL",
              "CAR_AND_TRUCK_DEALERS",
              "CAR_AND_TRUCK_DEALERS_USED_ONLY",
              "CAR_AUDIO_AND_ELECTRONICS",
              "CAR_RENTAL_AGENCY",
              "CATALOG_MERCHANT",
              "CATALOG_RETAIL_MERCHANT",
              "CATERING_SERVICES",
              "CHARITY",
              "CHECK_CASHIER",
              "CHILD_CARE_SERVICES",
              "CHILDREN_BOOKS",
              "CHIROPODISTS_PODIATRISTS",
              "CHIROPRACTORS",
              "CIGAR_STORES_AND_STANDS",
              "CIVIC_SOCIAL_FRATERNAL_ASSOCIATIONS",
              "CIVIL_SOCIAL_FRAT_ASSOCIATIONS",
              "CLOTHING",
              "CLOTHING_ACCESSORIES_AND_SHOES",
              "CLOTHING_RENTAL",
              "COFFEE_AND_TEA",
              "COIN_OPERATED_BANKS_AND_CASINOS",
              "COLLECTIBLES",
              "COLLECTION_AGENCY",
              "COLLEGES_AND_UNIVERSITIES",
              "COMMERCIAL_EQUIPMENT",
              "COMMERCIAL_FOOTWEAR",
              "COMMERCIAL_PHOTOGRAPHY",
              "COMMERCIAL_PHOTOGRAPHY_ART_AND_GRAPHICS",
              "COMMERCIAL_SPORTS_PROFESSIONA",
              "COMMODITIES_AND_FUTURES_EXCHANGE",
              "COMPUTER_AND_DATA_PROCESSING_SERVICES",
              "COMPUTER_HARDWARE_AND_SOFTWARE",
              "COMPUTER_MAINTENANCE_REPAIR_AND_SERVICES_NOT_ELSEWHERE_CLAS",
              "CONSTRUCTION",
              "CONSTRUCTION_MATERIALS_NOT_ELSEWHERE_CLASSIFIED",
              "CONSULTING_SERVICES",
              "CONSUMER_CREDIT_REPORTING_AGENCIES",
              "CONVALESCENT_HOMES",
              "COSMETIC_STORES",
              "COUNSELING_SERVICES_DEBT_MARRIAGE_PERSONAL",
              "COUNTERFEIT_CURRENCY_AND_STAMPS",
              "COUNTERFEIT_ITEMS",
              "COUNTRY_CLUBS",
              "COURIER_SERVICES",
              "COURIER_SERVICES_AIR_AND_GROUND_AND_FREIGHT_FORWARDERS",
              "COURT_COSTS_ALIMNY_CHILD_SUPT",
              "COURT_COSTS_INCLUDING_ALIMONY_AND_CHILD_SUPPORT_COURTS_OF_LAW",
              "CREDIT_CARDS",
              "CREDIT_UNION",
              "CULTURE_AND_RELIGION",
              "DAIRY_PRODUCTS_STORES",
              "DANCE_HALLS_STUDIOS_AND_SCHOOLS",
              "DECORATIVE",
              "DENTAL",
              "DENTISTS_AND_ORTHODONTISTS",
              "DEPARTMENT_STORES",
              "DESKTOP_PCS",
              "DEVICES",
              "DIECAST_TOYS_VEHICLES",
              "DIGITAL_GAMES",
              "DIGITAL_MEDIA_BOOKS_MOVIES_MUSIC",
              "DIRECT_MARKETING",
              "DIRECT_MARKETING_CATALOG_MERCHANT",
              "DIRECT_MARKETING_INBOUND_TELE",
              "DIRECT_MARKETING_OUTBOUND_TELE",
              "DIRECT_MARKETING_SUBSCRIPTION",
              "DISCOUNT_STORES",
              "DOOR_TO_DOOR_SALES",
              "DRAPERY_WINDOW_COVERING_AND_UPHOLSTERY",
              "DRINKING_PLACES",
              "DRUGSTORE",
              "DURABLE_GOODS",
              "ECOMMERCE_DEVELOPMENT",
              "ECOMMERCE_SERVICES",
              "EDUCATIONAL_AND_TEXTBOOKS",
              "ELECTRIC_RAZOR_STORES",
              "ELECTRICAL_AND_SMALL_APPLIANCE_REPAIR",
              "ELECTRICAL_CONTRACTORS",
              "ELECTRICAL_PARTS_AND_EQUIPMENT",
              "ELECTRONIC_CASH",
              "ELEMENTARY_AND_SECONDARY_SCHOOLS",
              "EMPLOYMENT",
              "ENTERTAINERS",
              "ENTERTAINMENT_AND_MEDIA",
              "EQUIP_TOOL_FURNITURE_AND_APPLIANCE_RENTAL_AND_LEASING",
              "ESCROW",
              "EVENT_AND_WEDDING_PLANNING",
              "EXERCISE_AND_FITNESS",
              "EXERCISE_EQUIPMENT",
              "EXTERMINATING_AND_DISINFECTING_SERVICES",
              "FABRICS_AND_SEWING",
              "FAMILY_CLOTHING_STORES",
              "FASHION_JEWELRY",
              "FAST_FOOD_RESTAURANTS",
              "FICTION_AND_NONFICTION",
              "FINANCE_COMPANY",
              "FINANCIAL_AND_INVESTMENT_ADVICE",
              "FINANCIAL_INSTITUTIONS_MERCHANDISE_AND_SERVICES",
              "FIREARM_ACCESSORIES",
              "FIREARMS_WEAPONS_AND_KNIVES",
              "FIREPLACE_AND_FIREPLACE_SCREENS",
              "FIREWORKS",
              "FISHING",
              "FLORISTS",
              "FLOWERS",
              "FOOD_DRINK_AND_NUTRITION",
              "FOOD_PRODUCTS",
              "FOOD_RETAIL_AND_SERVICE",
              "FRAGRANCES_AND_PERFUMES",
              "FREEZER_AND_LOCKER_MEAT_PROVISIONERS",
              "FUEL_DEALERS_FUEL_OIL_WOOD_AND_COAL",
              "FUEL_DEALERS_NON_AUTOMOTIVE",
              "FUNERAL_SERVICES_AND_CREMATORIES",
              "FURNISHING_AND_DECORATING",
              "FURNITURE",
              "FURRIERS_AND_FUR_SHOPS",
              "GADGETS_AND_OTHER_ELECTRONICS",
              "GAMBLING",
              "GAME_SOFTWARE",
              "GAMES",
              "GARDEN_SUPPLIES",
              "GENERAL",
              "GENERAL_CONTRACTORS",
              "GENERAL_GOVERNMENT",
              "GENERAL_SOFTWARE",
              "GENERAL_TELECOM",
              "GIFTS_AND_FLOWERS",
              "GLASS_PAINT_AND_WALLPAPER_STORES",
              "GLASSWARE_CRYSTAL_STORES",
              "GOVERNMENT",
              "GOVERNMENT_IDS_AND_LICENSES",
              "GOVERNMENT_LICENSED_ON_LINE_CASINOS_ON_LINE_GAMBLING",
              "GOVERNMENT_OWNED_LOTTERIES",
              "GOVERNMENT_SERVICES",
              "GRAPHIC_AND_COMMERCIAL_DESIGN",
              "GREETING_CARDS",
              "GROCERY_STORES_AND_SUPERMARKETS",
              "HARDWARE_AND_TOOLS",
              "HARDWARE_EQUIPMENT_AND_SUPPLIES",
              "HAZARDOUS_RESTRICTED_AND_PERISHABLE_ITEMS",
              "HEALTH_AND_BEAUTY_SPAS",
              "HEALTH_AND_NUTRITION",
              "HEALTH_AND_PERSONAL_CARE",
              "HEARING_AIDS_SALES_AND_SUPPLIES",
              "HEATING_PLUMBING_AC",
              "HIGH_RISK_MERCHANT",
              "HIRING_SERVICES",
              "HOBBIES_TOYS_AND_GAMES",
              "HOME_AND_GARDEN",
              "HOME_AUDIO",
              "HOME_DECOR",
              "HOME_ELECTRONICS",
              "HOSPITALS",
              "HOTELS_MOTELS_INNS_RESORTS",
              "HOUSEWARES",
              "HUMAN_PARTS_AND_REMAINS",
              "HUMOROUS_GIFTS_AND_NOVELTIES",
              "HUNTING",
              "IDS_LICENSES_AND_PASSPORTS",
              "ILLEGAL_DRUGS_AND_PARAPHERNALIA",
              "INDUSTRIAL",
              "INDUSTRIAL_AND_MANUFACTURING_SUPPLIES",
              "INSURANCE_AUTO_AND_HOME",
              "INSURANCE_DIRECT",
              "INSURANCE_LIFE_AND_ANNUITY",
              "INSURANCE_SALES_UNDERWRITING",
              "INSURANCE_UNDERWRITING_PREMIUMS",
              "INTERNET_AND_NETWORK_SERVICES",
              "INTRA_COMPANY_PURCHASES",
              "LABORATORIES_DENTAL_MEDICAL",
              "LANDSCAPING",
              "LANDSCAPING_AND_HORTICULTURAL_SERVICES",
              "LAUNDRY_CLEANING_SERVICES",
              "LEGAL",
              "LEGAL_SERVICES_AND_ATTORNEYS",
              "LOCAL_DELIVERY_SERVICE",
              "LOCKSMITH",
              "LODGING_AND_ACCOMMODATIONS",
              "LOTTERY_AND_CONTESTS",
              "LUGGAGE_AND_LEATHER_GOODS",
              "LUMBER_AND_BUILDING_MATERIALS",
              "MAGAZINES",
              "MAINTENANCE_AND_REPAIR_SERVICES",
              "MAKEUP_AND_COSMETICS",
              "MANUAL_CASH_DISBURSEMENTS",
              "MASSAGE_PARLORS",
              "MEDICAL",
              "MEDICAL_AND_PHARMACEUTICAL",
              "MEDICAL_CARE",
              "MEDICAL_EQUIPMENT_AND_SUPPLIES",
              "MEDICAL_SERVICES",
              "MEETING_PLANNERS",
              "MEMBERSHIP_CLUBS_AND_ORGANIZATIONS",
              "MEMBERSHIP_COUNTRY_CLUBS_GOLF",
              "MEMORABILIA",
              "MEN_AND_BOY_CLOTHING_AND_ACCESSORY_STORES",
              "MEN_CLOTHING",
              "MERCHANDISE",
              "METAPHYSICAL",
              "MILITARIA",
              "MILITARY_AND_CIVIL_SERVICE_UNIFORMS",
              "MISC",
              "MISCELLANEOUS_GENERAL_SERVICES",
              "MISCELLANEOUS_REPAIR_SHOPS_AND_RELATED_SERVICES",
              "MODEL_KITS",
              "MONEY_TRANSFER_MEMBER_FINANCIAL_INSTITUTION",
              "MONEY_TRANSFER_MERCHANT",
              "MOTION_PICTURE_THEATERS",
              "MOTOR_FREIGHT_CARRIERS_AND_TRUCKING",
              "MOTOR_HOME_AND_RECREATIONAL_VEHICLE_RENTAL",
              "MOTOR_HOMES_DEALERS",
              "MOTOR_VEHICLE_SUPPLIES_AND_NEW_PARTS",
              "MOTORCYCLE_DEALERS",
              "MOTORCYCLES",
              "MOVIE",
              "MOVIE_TICKETS",
              "MOVING_AND_STORAGE",
              "MULTI_LEVEL_MARKETING",
              "MUSIC_CDS_CASSETTES_AND_ALBUMS",
              "MUSIC_STORE_INSTRUMENTS_AND_SHEET_MUSIC",
              "NETWORKING",
              "NEW_AGE",
              "NEW_PARTS_AND_SUPPLIES_MOTOR_VEHICLE",
              "NEWS_DEALERS_AND_NEWSTANDS",
              "NON_DURABLE_GOODS",
              "NON_FICTION",
              "NON_PROFIT_POLITICAL_AND_RELIGION",
              "NONPROFIT",
              "NOVELTIES",
              "OEM_SOFTWARE",
              "OFFICE_SUPPLIES_AND_EQUIPMENT",
              "ONLINE_DATING",
              "ONLINE_GAMING",
              "ONLINE_GAMING_CURRENCY",
              "ONLINE_SERVICES",
              "OOUTBOUND_TELEMARKETING_MERCH",
              "OPHTHALMOLOGISTS_OPTOMETRIST",
              "OPTICIANS_AND_DISPENSING",
              "ORTHOPEDIC_GOODS_PROSTHETICS",
              "OSTEOPATHS",
              "OTHER",
              "PACKAGE_TOUR_OPERATORS",
              "PAINTBALL",
              "PAINTS_VARNISHES_AND_SUPPLIES",
              "PARKING_LOTS_AND_GARAGES",
              "PARTS_AND_ACCESSORIES",
              "PAWN_SHOPS",
              "PAYCHECK_LENDER_OR_CASH_ADVANCE",
              "PERIPHERALS",
              "PERSONALIZED_GIFTS",
              "PET_SHOPS_PET_FOOD_AND_SUPPLIES",
              "PETROLEUM_AND_PETROLEUM_PRODUCTS",
              "PETS_AND_ANIMALS",
              "PHOTOFINISHING_LABORATORIES_PHOTO_DEVELOPING",
              "PHOTOGRAPHIC_STUDIOS_PORTRAITS",
              "PHOTOGRAPHY",
              "PHYSICAL_GOOD",
              "PICTURE_VIDEO_PRODUCTION",
              "PIECE_GOODS_NOTIONS_AND_OTHER_DRY_GOODS",
              "PLANTS_AND_SEEDS",
              "PLUMBING_AND_HEATING_EQUIPMENTS_AND_SUPPLIES",
              "POLICE_RELATED_ITEMS",
              "POLITICAL_ORGANIZATIONS",
              "POSTAL_SERVICES_GOVERNMENT_ONLY",
              "POSTERS",
              "PREPAID_AND_STORED_VALUE_CARDS",
              "PRESCRIPTION_DRUGS",
              "PROMOTIONAL_ITEMS",
              "PUBLIC_WAREHOUSING_AND_STORAGE",
              "PUBLISHING_AND_PRINTING",
              "PUBLISHING_SERVICES",
              "RADAR_DECTORS",
              "RADIO_TELEVISION_AND_STEREO_REPAIR",
              "REAL_ESTATE",
              "REAL_ESTATE_AGENT",
              "REAL_ESTATE_AGENTS_AND_MANAGERS_RENTALS",
              "RELIGION_AND_SPIRITUALITY_FOR_PROFIT",
              "RELIGIOUS",
              "RELIGIOUS_ORGANIZATIONS",
              "REMITTANCE",
              "RENTAL_PROPERTY_MANAGEMENT",
              "RESIDENTIAL",
              "RETAIL",
              "RETAIL_FINE_JEWELRY_AND_WATCHES",
              "REUPHOLSTERY_AND_FURNITURE_REPAIR",
              "RINGS",
              "ROOFING_SIDING_SHEET_METAL",
              "RUGS_AND_CARPETS",
              "SCHOOLS_AND_COLLEGES",
              "SCIENCE_FICTION",
              "SCRAPBOOKING",
              "SCULPTURES",
              "SECURITIES_BROKERS_AND_DEALERS",
              "SECURITY_AND_SURVEILLANCE",
              "SECURITY_AND_SURVEILLANCE_EQUIPMENT",
              "SECURITY_BROKERS_AND_DEALERS",
              "SEMINARS",
              "SERVICE_STATIONS",
              "SERVICES",
              "SEWING_NEEDLEWORK_FABRIC_AND_PIECE_GOODS_STORES",
              "SHIPPING_AND_PACKING",
              "SHOE_REPAIR_HAT_CLEANING",
              "SHOE_STORES",
              "SHOES",
              "SNOWMOBILE_DEALERS",
              "SOFTWARE",
              "SPECIALTY_AND_MISC",
              "SPECIALTY_CLEANING_POLISHING_AND_SANITATION_PREPARATIONS",
              "SPECIALTY_OR_RARE_PETS",
              "SPORT_GAMES_AND_TOYS",
              "SPORTING_AND_RECREATIONAL_CAMPS",
              "SPORTING_GOODS",
              "SPORTS_AND_OUTDOORS",
              "SPORTS_AND_RECREATION",
              "STAMP_AND_COIN",
              "STATIONARY_PRINTING_AND_WRITING_PAPER",
              "STENOGRAPHIC_AND_SECRETARIAL_SUPPORT_SERVICES",
              "STOCKS_BONDS_SECURITIES_AND_RELATED_CERTIFICATES",
              "STORED_VALUE_CARDS",
              "SUPPLIES",
              "SUPPLIES_AND_TOYS",
              "SURVEILLANCE_EQUIPMENT",
              "SWIMMING_POOLS_AND_SPAS",
              "SWIMMING_POOLS_SALES_SUPPLIES_SERVICES",
              "TAILORS_AND_ALTERATIONS",
              "TAX_PAYMENTS",
              "TAX_PAYMENTS_GOVERNMENT_AGENCIES",
              "TAXICABS_AND_LIMOUSINES",
              "TELECOMMUNICATION_SERVICES",
              "TELEPHONE_CARDS",
              "TELEPHONE_EQUIPMENT",
              "TELEPHONE_SERVICES",
              "THEATER",
              "TIRE_RETREADING_AND_REPAIR",
              "TOLL_OR_BRIDGE_FEES",
              "TOOLS_AND_EQUIPMENT",
              "TOURIST_ATTRACTIONS_AND_EXHIBITS",
              "TOWING_SERVICE",
              "TOYS_AND_GAMES",
              "TRADE_AND_VOCATIONAL_SCHOOLS",
              "TRADEMARK_INFRINGEMENT",
              "TRAILER_PARKS_AND_CAMPGROUNDS",
              "TRAINING_SERVICES",
              "TRANSPORTATION_SERVICES",
              "TRAVEL",
              "TRUCK_AND_UTILITY_TRAILER_RENTALS",
              "TRUCK_STOP",
              "TYPESETTING_PLATE_MAKING_AND_RELATED_SERVICES",
              "USED_MERCHANDISE_AND_SECONDHAND_STORES",
              "USED_PARTS_MOTOR_VEHICLE",
              "UTILITIES",
              "UTILITIES_ELECTRIC_GAS_WATER_SANITARY",
              "VARIETY_STORES",
              "VEHICLE_SALES",
              "VEHICLE_SERVICE_AND_ACCESSORIES",
              "VIDEO_EQUIPMENT",
              "VIDEO_GAME_ARCADES_ESTABLISH",
              "VIDEO_GAMES_AND_SYSTEMS",
              "VIDEO_TAPE_RENTAL_STORES",
              "VINTAGE_AND_COLLECTIBLE_VEHICLES",
              "VINTAGE_AND_COLLECTIBLES",
              "VITAMINS_AND_SUPPLEMENTS",
              "VOCATIONAL_AND_TRADE_SCHOOLS",
              "WATCH_CLOCK_AND_JEWELRY_REPAIR",
              "WEB_HOSTING_AND_DESIGN",
              "WELDING_REPAIR",
              "WHOLESALE_CLUBS",
              "WHOLESALE_FLORIST_SUPPLIERS",
              "WHOLESALE_PRESCRIPTION_DRUGS",
              "WILDLIFE_PRODUCTS",
              "WIRE_TRANSFER",
              "WIRE_TRANSFER_AND_MONEY_ORDER",
              "WOMEN_ACCESSORY_SPECIALITY",
              "WOMEN_CLOTHING"
            ]
          },
          "createdAt": {
            "type": "string",
            "description": "Product creation date (ISO-8601)",
            "format": "date"
          },
          "updatedAt": {
            "type": "string",
            "description": "Product last update date (ISO-8601)",
            "format": "date"
          },
          "imageUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The home page URL for the product",
            "x-format": {
              "uri": true
            }
          },
          "homeUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The image URL for the product",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "products": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/Model6"
        }
      },
      "Model7": {
        "required": ["products"],
        "type": "object",
        "properties": {
          "totalItems": {
            "type": "integer"
          },
          "totalPages": {
            "type": "integer"
          },
          "products": {
            "$ref": "#/components/schemas/products"
          }
        }
      },
      "payeeInfo": {
        "required": ["email"],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address that is associated with the payee's PayPal account.",
            "x-format": {
              "email": true
            }
          }
        }
      },
      "merchant": {
        "type": "object",
        "properties": {
          "payeeInfo": {
            "$ref": "#/components/schemas/payeeInfo"
          }
        }
      },
      "billingAddress": {
        "required": ["country", "postalCode"],
        "type": "object",
        "properties": {
          "country": {
            "maxLength": 2,
            "minLength": 2,
            "pattern": "^([A-Z]{2}|C2)$",
            "type": "string",
            "description": "The two-character ISO 3166-1 code that identifies the country or region."
          },
          "postalCode": {
            "maxLength": 60,
            "type": "string",
            "description": "The postal code, which is the zip code or equivalent.  Typically required for countries with a postal code or an equivalent."
          },
          "countrySubdivision": {
            "maxLength": 300,
            "type": "string",
            "description": "The highest level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision."
          },
          "city": {
            "maxLength": 120,
            "type": "string",
            "description": "A city, town, or village. Smaller than admin_area_level_1"
          },
          "addressLine2": {
            "maxLength": 300,
            "type": "string",
            "description": "The second line of the address. For example, suite or apartment number."
          },
          "addressLine1": {
            "maxLength": 300,
            "type": "string",
            "description": "The first line of the address. For example, number or street.  For example, 173 Drury Lane. Required for data entry and compliance and risk checks. Must contain the full address."
          }
        },
        "description": "Shipping Address details"
      },
      "payerInfo": {
        "required": ["email", "payerId"],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The payer's email address.",
            "x-format": {
              "email": true
            }
          },
          "suffix": {
            "type": "string",
            "description": "The payer's name suffix."
          },
          "firstName": {
            "type": "string",
            "description": "The payer's first name."
          },
          "lastName": {
            "type": "string",
            "description": "The payer's last name."
          },
          "payerId": {
            "type": "string",
            "description": "The PayPal-assigned payer ID."
          },
          "phone": {
            "type": "string",
            "description": "The payer's phone number."
          },
          "billingAddress": {
            "$ref": "#/components/schemas/billingAddress"
          }
        }
      },
      "payer": {
        "type": "object",
        "properties": {
          "payerInfo": {
            "$ref": "#/components/schemas/payerInfo"
          }
        }
      },
      "shippingAddress": {
        "required": [
          "addressLine1",
          "city",
          "country",
          "countrySubdivision",
          "postalCode"
        ],
        "type": "object",
        "properties": {
          "fullName": {
            "type": "string",
            "description": "Full Name"
          },
          "addressLine1": {
            "maxLength": 300,
            "type": "string",
            "description": "The first line of the address. For example, number or street.  For example, 173 Drury Lane. Required for data entry and compliance and risk checks. Must contain the full address."
          },
          "addressLine2": {
            "maxLength": 300,
            "type": "string",
            "description": "The second line of the address. For example, suite or apartment number."
          },
          "city": {
            "maxLength": 120,
            "type": "string",
            "description": "A city, town, or village. Smaller than admin_area_level_1"
          },
          "countrySubdivision": {
            "maxLength": 300,
            "type": "string",
            "description": "The highest level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision."
          },
          "country": {
            "maxLength": 2,
            "minLength": 2,
            "pattern": "^([A-Z]{2}|C2)$",
            "type": "string",
            "description": "The two-character ISO 3166-1 code that identifies the country or region."
          },
          "postalCode": {
            "maxLength": 60,
            "type": "string",
            "description": "The postal code, which is the zip code or equivalent.  Typically required for countries with a postal code or an equivalent."
          }
        }
      },
      "allowedCountries": {
        "type": "array",
        "description": "An array of legally accepted customer country codes",
        "items": {
          "maxLength": 2,
          "minLength": 2,
          "pattern": "^([A-Z]{2}|C2)$",
          "type": "string",
          "description": "The two-character ISO 3166-1 code that identifies the country or region."
        }
      },
      "merchantPreferences": {
        "type": "object",
        "properties": {
          "collectShippingAddress": {
            "type": "string",
            "description": "Indicates whether to skip the collection of the shipping address from the customer during the agreement sign-up phase."
          },
          "enableAddressChange": {
            "type": "string",
            "description": "Indicates whether to show the shipping address but prevent the customer from editing it."
          },
          "experienceId": {
            "type": "string",
            "description": "The ID of the experience profile to apply during the agreement approval UI flow."
          },
          "externalSelectedFundingInstrumentType": {
            "type": "string",
            "description": "The type of financial instrument (FI) that the merchant wants to promote."
          },
          "allowedCountries": {
            "$ref": "#/components/schemas/allowedCountries"
          }
        }
      },
      "plan": {
        "type": "object",
        "properties": {
          "merchantPreferences": {
            "$ref": "#/components/schemas/merchantPreferences"
          }
        }
      },
      "Model8": {
        "required": ["createTime", "id", "state"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the agreement."
          },
          "state": {
            "type": "string",
            "description": "The state of the agreement."
          },
          "description": {
            "type": "string",
            "description": "The description of the agreement."
          },
          "merchant": {
            "$ref": "#/components/schemas/merchant"
          },
          "payer": {
            "$ref": "#/components/schemas/payer"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/shippingAddress"
          },
          "plan": {
            "$ref": "#/components/schemas/plan"
          },
          "createTime": {
            "type": "string",
            "description": "The date and time when the agreement was created."
          },
          "updateTime": {
            "type": "string",
            "description": "The date and time when the agreement was updated."
          }
        }
      },
      "Model9": {
        "required": ["billingCycles", "createTime", "name", "productId"],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 6,
            "type": "string",
            "description": "Filters the response by a Product ID."
          },
          "productId": {
            "type": "string",
            "description": "PayPal catalog product id"
          },
          "name": {
            "maxLength": 127,
            "type": "string",
            "description": "The plan name"
          },
          "billingCycles": {
            "$ref": "#/components/schemas/billingCycles"
          },
          "paymentPreferences": {
            "$ref": "#/components/schemas/paymentPreferences"
          },
          "status": {
            "type": "string",
            "description": "The initial state of the plan",
            "enum": ["ACTIVE", "INACTIVE", "CREATED"]
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "The detailed description of the plan."
          },
          "taxes": {
            "$ref": "#/components/schemas/taxes"
          },
          "quantitySupported": {
            "type": "boolean",
            "description": "Indicates whether you can subscribe to this plan by providing a quantity for the goods or service."
          },
          "createTime": {
            "type": "string",
            "description": "The date and time when the billing plan was created.",
            "format": "date"
          },
          "updateTime": {
            "type": "string",
            "description": "The date and time when the billing plan was updated.",
            "format": "date"
          }
        }
      },
      "Model10": {
        "required": ["createdAt", "name", "type", "updatedAt"],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 6,
            "type": "string",
            "description": "The ID of the product. You can specify the SKU for the product. If you omit the ID, the system generates it. System-generated IDs have the PROD- prefix"
          },
          "name": {
            "maxLength": 127,
            "minLength": 1,
            "type": "string",
            "description": "The product name"
          },
          "description": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "The product description"
          },
          "type": {
            "type": "string",
            "description": "The product type. Indicates whether the product is physical or tangible goods, or a service",
            "example": "PHYSICAL",
            "enum": ["PHYSICAL", "DIGITAL", "SERVICE"]
          },
          "category": {
            "type": "string",
            "description": "The product category",
            "example": "AUTO_RENTALS",
            "enum": [
              "AC_REFRIGERATION_REPAIR",
              "ACADEMIC_SOFTWARE",
              "ACCESSORIES",
              "ACCOUNTING",
              "ADULT",
              "ADVERTISING",
              "AFFILIATED_AUTO_RENTAL",
              "AGENCIES",
              "AGGREGATORS",
              "AGRICULTURAL_COOPERATIVE_FOR_MAIL_ORDER",
              "AIR_CARRIERS_AIRLINES",
              "AIRLINES",
              "AIRPORTS_FLYING_FIELDS",
              "ALCOHOLIC_BEVERAGES",
              "AMUSEMENT_PARKS_CARNIVALS",
              "ANIMATION",
              "ANTIQUES",
              "APPLIANCES",
              "AQUARIAMS_SEAQUARIUMS_DOLPHINARIUMS",
              "ARCHITECTURAL_ENGINEERING_AND_SURVEYING_SERVICES",
              "ART_AND_CRAFT_SUPPLIES",
              "ART_DEALERS_AND_GALLERIES",
              "ARTIFACTS_GRAVE_RELATED_AND_NATIVE_AMERICAN_CRAFTS",
              "ARTS_AND_CRAFTS",
              "ARTS_CRAFTS_AND_COLLECTIBLES",
              "AUDIO_BOOKS",
              "AUTO_ASSOCIATIONS_CLUBS",
              "AUTO_DEALER_USED_ONLY",
              "AUTO_RENTALS",
              "AUTO_SERVICE",
              "AUTOMATED_FUEL_DISPENSERS",
              "AUTOMOBILE_ASSOCIATIONS",
              "AUTOMOTIVE",
              "AUTOMOTIVE_REPAIR_SHOPS_NON_DEALER",
              "AUTOMOTIVE_TOP_AND_BODY_SHOPS",
              "AVIATION",
              "BABIES_CLOTHING_AND_SUPPLIES",
              "BABY",
              "BANDS_ORCHESTRAS_ENTERTAINERS",
              "BARBIES",
              "BATH_AND_BODY",
              "BATTERIES",
              "BEAN_BABIES",
              "BEAUTY",
              "BEAUTY_AND_FRAGRANCES",
              "BED_AND_BATH",
              "BICYCLE_SHOPS_SALES_AND_SERVICE",
              "BICYCLES_AND_ACCESSORIES",
              "BILLIARD_POOL_ESTABLISHMENTS",
              "BOAT_DEALERS",
              "BOAT_RENTALS_AND_LEASING",
              "BOATING_SAILING_AND_ACCESSORIES",
              "BOOKS",
              "BOOKS_AND_MAGAZINES",
              "BOOKS_MANUSCRIPTS",
              "BOOKS_PERIODICALS_AND_NEWSPAPERS",
              "BOWLING_ALLEYS",
              "BULLETIN_BOARD",
              "BUS_LINE",
              "BUS_LINES_CHARTERS_TOUR_BUSES",
              "BUSINESS",
              "BUSINESS_AND_SECRETARIAL_SCHOOLS",
              "BUYING_AND_SHOPPING_SERVICES_AND_CLUBS",
              "CABLE_SATELLITE_AND_OTHER_PAY_TELEVISION_AND_RADIO_SERVICES",
              "CABLE_SATELLITE_AND_OTHER_PAY_TV_AND_RADIO",
              "CAMERA_AND_PHOTOGRAPHIC_SUPPLIES",
              "CAMERAS",
              "CAMERAS_AND_PHOTOGRAPHY",
              "CAMPER_RECREATIONAL_AND_UTILITY_TRAILER_DEALERS",
              "CAMPING_AND_OUTDOORS",
              "CAMPING_AND_SURVIVAL",
              "CAR_AND_TRUCK_DEALERS",
              "CAR_AND_TRUCK_DEALERS_USED_ONLY",
              "CAR_AUDIO_AND_ELECTRONICS",
              "CAR_RENTAL_AGENCY",
              "CATALOG_MERCHANT",
              "CATALOG_RETAIL_MERCHANT",
              "CATERING_SERVICES",
              "CHARITY",
              "CHECK_CASHIER",
              "CHILD_CARE_SERVICES",
              "CHILDREN_BOOKS",
              "CHIROPODISTS_PODIATRISTS",
              "CHIROPRACTORS",
              "CIGAR_STORES_AND_STANDS",
              "CIVIC_SOCIAL_FRATERNAL_ASSOCIATIONS",
              "CIVIL_SOCIAL_FRAT_ASSOCIATIONS",
              "CLOTHING",
              "CLOTHING_ACCESSORIES_AND_SHOES",
              "CLOTHING_RENTAL",
              "COFFEE_AND_TEA",
              "COIN_OPERATED_BANKS_AND_CASINOS",
              "COLLECTIBLES",
              "COLLECTION_AGENCY",
              "COLLEGES_AND_UNIVERSITIES",
              "COMMERCIAL_EQUIPMENT",
              "COMMERCIAL_FOOTWEAR",
              "COMMERCIAL_PHOTOGRAPHY",
              "COMMERCIAL_PHOTOGRAPHY_ART_AND_GRAPHICS",
              "COMMERCIAL_SPORTS_PROFESSIONA",
              "COMMODITIES_AND_FUTURES_EXCHANGE",
              "COMPUTER_AND_DATA_PROCESSING_SERVICES",
              "COMPUTER_HARDWARE_AND_SOFTWARE",
              "COMPUTER_MAINTENANCE_REPAIR_AND_SERVICES_NOT_ELSEWHERE_CLAS",
              "CONSTRUCTION",
              "CONSTRUCTION_MATERIALS_NOT_ELSEWHERE_CLASSIFIED",
              "CONSULTING_SERVICES",
              "CONSUMER_CREDIT_REPORTING_AGENCIES",
              "CONVALESCENT_HOMES",
              "COSMETIC_STORES",
              "COUNSELING_SERVICES_DEBT_MARRIAGE_PERSONAL",
              "COUNTERFEIT_CURRENCY_AND_STAMPS",
              "COUNTERFEIT_ITEMS",
              "COUNTRY_CLUBS",
              "COURIER_SERVICES",
              "COURIER_SERVICES_AIR_AND_GROUND_AND_FREIGHT_FORWARDERS",
              "COURT_COSTS_ALIMNY_CHILD_SUPT",
              "COURT_COSTS_INCLUDING_ALIMONY_AND_CHILD_SUPPORT_COURTS_OF_LAW",
              "CREDIT_CARDS",
              "CREDIT_UNION",
              "CULTURE_AND_RELIGION",
              "DAIRY_PRODUCTS_STORES",
              "DANCE_HALLS_STUDIOS_AND_SCHOOLS",
              "DECORATIVE",
              "DENTAL",
              "DENTISTS_AND_ORTHODONTISTS",
              "DEPARTMENT_STORES",
              "DESKTOP_PCS",
              "DEVICES",
              "DIECAST_TOYS_VEHICLES",
              "DIGITAL_GAMES",
              "DIGITAL_MEDIA_BOOKS_MOVIES_MUSIC",
              "DIRECT_MARKETING",
              "DIRECT_MARKETING_CATALOG_MERCHANT",
              "DIRECT_MARKETING_INBOUND_TELE",
              "DIRECT_MARKETING_OUTBOUND_TELE",
              "DIRECT_MARKETING_SUBSCRIPTION",
              "DISCOUNT_STORES",
              "DOOR_TO_DOOR_SALES",
              "DRAPERY_WINDOW_COVERING_AND_UPHOLSTERY",
              "DRINKING_PLACES",
              "DRUGSTORE",
              "DURABLE_GOODS",
              "ECOMMERCE_DEVELOPMENT",
              "ECOMMERCE_SERVICES",
              "EDUCATIONAL_AND_TEXTBOOKS",
              "ELECTRIC_RAZOR_STORES",
              "ELECTRICAL_AND_SMALL_APPLIANCE_REPAIR",
              "ELECTRICAL_CONTRACTORS",
              "ELECTRICAL_PARTS_AND_EQUIPMENT",
              "ELECTRONIC_CASH",
              "ELEMENTARY_AND_SECONDARY_SCHOOLS",
              "EMPLOYMENT",
              "ENTERTAINERS",
              "ENTERTAINMENT_AND_MEDIA",
              "EQUIP_TOOL_FURNITURE_AND_APPLIANCE_RENTAL_AND_LEASING",
              "ESCROW",
              "EVENT_AND_WEDDING_PLANNING",
              "EXERCISE_AND_FITNESS",
              "EXERCISE_EQUIPMENT",
              "EXTERMINATING_AND_DISINFECTING_SERVICES",
              "FABRICS_AND_SEWING",
              "FAMILY_CLOTHING_STORES",
              "FASHION_JEWELRY",
              "FAST_FOOD_RESTAURANTS",
              "FICTION_AND_NONFICTION",
              "FINANCE_COMPANY",
              "FINANCIAL_AND_INVESTMENT_ADVICE",
              "FINANCIAL_INSTITUTIONS_MERCHANDISE_AND_SERVICES",
              "FIREARM_ACCESSORIES",
              "FIREARMS_WEAPONS_AND_KNIVES",
              "FIREPLACE_AND_FIREPLACE_SCREENS",
              "FIREWORKS",
              "FISHING",
              "FLORISTS",
              "FLOWERS",
              "FOOD_DRINK_AND_NUTRITION",
              "FOOD_PRODUCTS",
              "FOOD_RETAIL_AND_SERVICE",
              "FRAGRANCES_AND_PERFUMES",
              "FREEZER_AND_LOCKER_MEAT_PROVISIONERS",
              "FUEL_DEALERS_FUEL_OIL_WOOD_AND_COAL",
              "FUEL_DEALERS_NON_AUTOMOTIVE",
              "FUNERAL_SERVICES_AND_CREMATORIES",
              "FURNISHING_AND_DECORATING",
              "FURNITURE",
              "FURRIERS_AND_FUR_SHOPS",
              "GADGETS_AND_OTHER_ELECTRONICS",
              "GAMBLING",
              "GAME_SOFTWARE",
              "GAMES",
              "GARDEN_SUPPLIES",
              "GENERAL",
              "GENERAL_CONTRACTORS",
              "GENERAL_GOVERNMENT",
              "GENERAL_SOFTWARE",
              "GENERAL_TELECOM",
              "GIFTS_AND_FLOWERS",
              "GLASS_PAINT_AND_WALLPAPER_STORES",
              "GLASSWARE_CRYSTAL_STORES",
              "GOVERNMENT",
              "GOVERNMENT_IDS_AND_LICENSES",
              "GOVERNMENT_LICENSED_ON_LINE_CASINOS_ON_LINE_GAMBLING",
              "GOVERNMENT_OWNED_LOTTERIES",
              "GOVERNMENT_SERVICES",
              "GRAPHIC_AND_COMMERCIAL_DESIGN",
              "GREETING_CARDS",
              "GROCERY_STORES_AND_SUPERMARKETS",
              "HARDWARE_AND_TOOLS",
              "HARDWARE_EQUIPMENT_AND_SUPPLIES",
              "HAZARDOUS_RESTRICTED_AND_PERISHABLE_ITEMS",
              "HEALTH_AND_BEAUTY_SPAS",
              "HEALTH_AND_NUTRITION",
              "HEALTH_AND_PERSONAL_CARE",
              "HEARING_AIDS_SALES_AND_SUPPLIES",
              "HEATING_PLUMBING_AC",
              "HIGH_RISK_MERCHANT",
              "HIRING_SERVICES",
              "HOBBIES_TOYS_AND_GAMES",
              "HOME_AND_GARDEN",
              "HOME_AUDIO",
              "HOME_DECOR",
              "HOME_ELECTRONICS",
              "HOSPITALS",
              "HOTELS_MOTELS_INNS_RESORTS",
              "HOUSEWARES",
              "HUMAN_PARTS_AND_REMAINS",
              "HUMOROUS_GIFTS_AND_NOVELTIES",
              "HUNTING",
              "IDS_LICENSES_AND_PASSPORTS",
              "ILLEGAL_DRUGS_AND_PARAPHERNALIA",
              "INDUSTRIAL",
              "INDUSTRIAL_AND_MANUFACTURING_SUPPLIES",
              "INSURANCE_AUTO_AND_HOME",
              "INSURANCE_DIRECT",
              "INSURANCE_LIFE_AND_ANNUITY",
              "INSURANCE_SALES_UNDERWRITING",
              "INSURANCE_UNDERWRITING_PREMIUMS",
              "INTERNET_AND_NETWORK_SERVICES",
              "INTRA_COMPANY_PURCHASES",
              "LABORATORIES_DENTAL_MEDICAL",
              "LANDSCAPING",
              "LANDSCAPING_AND_HORTICULTURAL_SERVICES",
              "LAUNDRY_CLEANING_SERVICES",
              "LEGAL",
              "LEGAL_SERVICES_AND_ATTORNEYS",
              "LOCAL_DELIVERY_SERVICE",
              "LOCKSMITH",
              "LODGING_AND_ACCOMMODATIONS",
              "LOTTERY_AND_CONTESTS",
              "LUGGAGE_AND_LEATHER_GOODS",
              "LUMBER_AND_BUILDING_MATERIALS",
              "MAGAZINES",
              "MAINTENANCE_AND_REPAIR_SERVICES",
              "MAKEUP_AND_COSMETICS",
              "MANUAL_CASH_DISBURSEMENTS",
              "MASSAGE_PARLORS",
              "MEDICAL",
              "MEDICAL_AND_PHARMACEUTICAL",
              "MEDICAL_CARE",
              "MEDICAL_EQUIPMENT_AND_SUPPLIES",
              "MEDICAL_SERVICES",
              "MEETING_PLANNERS",
              "MEMBERSHIP_CLUBS_AND_ORGANIZATIONS",
              "MEMBERSHIP_COUNTRY_CLUBS_GOLF",
              "MEMORABILIA",
              "MEN_AND_BOY_CLOTHING_AND_ACCESSORY_STORES",
              "MEN_CLOTHING",
              "MERCHANDISE",
              "METAPHYSICAL",
              "MILITARIA",
              "MILITARY_AND_CIVIL_SERVICE_UNIFORMS",
              "MISC",
              "MISCELLANEOUS_GENERAL_SERVICES",
              "MISCELLANEOUS_REPAIR_SHOPS_AND_RELATED_SERVICES",
              "MODEL_KITS",
              "MONEY_TRANSFER_MEMBER_FINANCIAL_INSTITUTION",
              "MONEY_TRANSFER_MERCHANT",
              "MOTION_PICTURE_THEATERS",
              "MOTOR_FREIGHT_CARRIERS_AND_TRUCKING",
              "MOTOR_HOME_AND_RECREATIONAL_VEHICLE_RENTAL",
              "MOTOR_HOMES_DEALERS",
              "MOTOR_VEHICLE_SUPPLIES_AND_NEW_PARTS",
              "MOTORCYCLE_DEALERS",
              "MOTORCYCLES",
              "MOVIE",
              "MOVIE_TICKETS",
              "MOVING_AND_STORAGE",
              "MULTI_LEVEL_MARKETING",
              "MUSIC_CDS_CASSETTES_AND_ALBUMS",
              "MUSIC_STORE_INSTRUMENTS_AND_SHEET_MUSIC",
              "NETWORKING",
              "NEW_AGE",
              "NEW_PARTS_AND_SUPPLIES_MOTOR_VEHICLE",
              "NEWS_DEALERS_AND_NEWSTANDS",
              "NON_DURABLE_GOODS",
              "NON_FICTION",
              "NON_PROFIT_POLITICAL_AND_RELIGION",
              "NONPROFIT",
              "NOVELTIES",
              "OEM_SOFTWARE",
              "OFFICE_SUPPLIES_AND_EQUIPMENT",
              "ONLINE_DATING",
              "ONLINE_GAMING",
              "ONLINE_GAMING_CURRENCY",
              "ONLINE_SERVICES",
              "OOUTBOUND_TELEMARKETING_MERCH",
              "OPHTHALMOLOGISTS_OPTOMETRIST",
              "OPTICIANS_AND_DISPENSING",
              "ORTHOPEDIC_GOODS_PROSTHETICS",
              "OSTEOPATHS",
              "OTHER",
              "PACKAGE_TOUR_OPERATORS",
              "PAINTBALL",
              "PAINTS_VARNISHES_AND_SUPPLIES",
              "PARKING_LOTS_AND_GARAGES",
              "PARTS_AND_ACCESSORIES",
              "PAWN_SHOPS",
              "PAYCHECK_LENDER_OR_CASH_ADVANCE",
              "PERIPHERALS",
              "PERSONALIZED_GIFTS",
              "PET_SHOPS_PET_FOOD_AND_SUPPLIES",
              "PETROLEUM_AND_PETROLEUM_PRODUCTS",
              "PETS_AND_ANIMALS",
              "PHOTOFINISHING_LABORATORIES_PHOTO_DEVELOPING",
              "PHOTOGRAPHIC_STUDIOS_PORTRAITS",
              "PHOTOGRAPHY",
              "PHYSICAL_GOOD",
              "PICTURE_VIDEO_PRODUCTION",
              "PIECE_GOODS_NOTIONS_AND_OTHER_DRY_GOODS",
              "PLANTS_AND_SEEDS",
              "PLUMBING_AND_HEATING_EQUIPMENTS_AND_SUPPLIES",
              "POLICE_RELATED_ITEMS",
              "POLITICAL_ORGANIZATIONS",
              "POSTAL_SERVICES_GOVERNMENT_ONLY",
              "POSTERS",
              "PREPAID_AND_STORED_VALUE_CARDS",
              "PRESCRIPTION_DRUGS",
              "PROMOTIONAL_ITEMS",
              "PUBLIC_WAREHOUSING_AND_STORAGE",
              "PUBLISHING_AND_PRINTING",
              "PUBLISHING_SERVICES",
              "RADAR_DECTORS",
              "RADIO_TELEVISION_AND_STEREO_REPAIR",
              "REAL_ESTATE",
              "REAL_ESTATE_AGENT",
              "REAL_ESTATE_AGENTS_AND_MANAGERS_RENTALS",
              "RELIGION_AND_SPIRITUALITY_FOR_PROFIT",
              "RELIGIOUS",
              "RELIGIOUS_ORGANIZATIONS",
              "REMITTANCE",
              "RENTAL_PROPERTY_MANAGEMENT",
              "RESIDENTIAL",
              "RETAIL",
              "RETAIL_FINE_JEWELRY_AND_WATCHES",
              "REUPHOLSTERY_AND_FURNITURE_REPAIR",
              "RINGS",
              "ROOFING_SIDING_SHEET_METAL",
              "RUGS_AND_CARPETS",
              "SCHOOLS_AND_COLLEGES",
              "SCIENCE_FICTION",
              "SCRAPBOOKING",
              "SCULPTURES",
              "SECURITIES_BROKERS_AND_DEALERS",
              "SECURITY_AND_SURVEILLANCE",
              "SECURITY_AND_SURVEILLANCE_EQUIPMENT",
              "SECURITY_BROKERS_AND_DEALERS",
              "SEMINARS",
              "SERVICE_STATIONS",
              "SERVICES",
              "SEWING_NEEDLEWORK_FABRIC_AND_PIECE_GOODS_STORES",
              "SHIPPING_AND_PACKING",
              "SHOE_REPAIR_HAT_CLEANING",
              "SHOE_STORES",
              "SHOES",
              "SNOWMOBILE_DEALERS",
              "SOFTWARE",
              "SPECIALTY_AND_MISC",
              "SPECIALTY_CLEANING_POLISHING_AND_SANITATION_PREPARATIONS",
              "SPECIALTY_OR_RARE_PETS",
              "SPORT_GAMES_AND_TOYS",
              "SPORTING_AND_RECREATIONAL_CAMPS",
              "SPORTING_GOODS",
              "SPORTS_AND_OUTDOORS",
              "SPORTS_AND_RECREATION",
              "STAMP_AND_COIN",
              "STATIONARY_PRINTING_AND_WRITING_PAPER",
              "STENOGRAPHIC_AND_SECRETARIAL_SUPPORT_SERVICES",
              "STOCKS_BONDS_SECURITIES_AND_RELATED_CERTIFICATES",
              "STORED_VALUE_CARDS",
              "SUPPLIES",
              "SUPPLIES_AND_TOYS",
              "SURVEILLANCE_EQUIPMENT",
              "SWIMMING_POOLS_AND_SPAS",
              "SWIMMING_POOLS_SALES_SUPPLIES_SERVICES",
              "TAILORS_AND_ALTERATIONS",
              "TAX_PAYMENTS",
              "TAX_PAYMENTS_GOVERNMENT_AGENCIES",
              "TAXICABS_AND_LIMOUSINES",
              "TELECOMMUNICATION_SERVICES",
              "TELEPHONE_CARDS",
              "TELEPHONE_EQUIPMENT",
              "TELEPHONE_SERVICES",
              "THEATER",
              "TIRE_RETREADING_AND_REPAIR",
              "TOLL_OR_BRIDGE_FEES",
              "TOOLS_AND_EQUIPMENT",
              "TOURIST_ATTRACTIONS_AND_EXHIBITS",
              "TOWING_SERVICE",
              "TOYS_AND_GAMES",
              "TRADE_AND_VOCATIONAL_SCHOOLS",
              "TRADEMARK_INFRINGEMENT",
              "TRAILER_PARKS_AND_CAMPGROUNDS",
              "TRAINING_SERVICES",
              "TRANSPORTATION_SERVICES",
              "TRAVEL",
              "TRUCK_AND_UTILITY_TRAILER_RENTALS",
              "TRUCK_STOP",
              "TYPESETTING_PLATE_MAKING_AND_RELATED_SERVICES",
              "USED_MERCHANDISE_AND_SECONDHAND_STORES",
              "USED_PARTS_MOTOR_VEHICLE",
              "UTILITIES",
              "UTILITIES_ELECTRIC_GAS_WATER_SANITARY",
              "VARIETY_STORES",
              "VEHICLE_SALES",
              "VEHICLE_SERVICE_AND_ACCESSORIES",
              "VIDEO_EQUIPMENT",
              "VIDEO_GAME_ARCADES_ESTABLISH",
              "VIDEO_GAMES_AND_SYSTEMS",
              "VIDEO_TAPE_RENTAL_STORES",
              "VINTAGE_AND_COLLECTIBLE_VEHICLES",
              "VINTAGE_AND_COLLECTIBLES",
              "VITAMINS_AND_SUPPLEMENTS",
              "VOCATIONAL_AND_TRADE_SCHOOLS",
              "WATCH_CLOCK_AND_JEWELRY_REPAIR",
              "WEB_HOSTING_AND_DESIGN",
              "WELDING_REPAIR",
              "WHOLESALE_CLUBS",
              "WHOLESALE_FLORIST_SUPPLIERS",
              "WHOLESALE_PRESCRIPTION_DRUGS",
              "WILDLIFE_PRODUCTS",
              "WIRE_TRANSFER",
              "WIRE_TRANSFER_AND_MONEY_ORDER",
              "WOMEN_ACCESSORY_SPECIALITY",
              "WOMEN_CLOTHING"
            ]
          },
          "imageUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The home page URL for the product",
            "x-format": {
              "uri": true
            }
          },
          "homeUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The image URL for the product",
            "x-format": {
              "uri": true
            }
          },
          "createdAt": {
            "type": "string",
            "description": "Product creation date (ISO-8601)",
            "format": "date"
          },
          "updatedAt": {
            "type": "string",
            "description": "Product last update date (ISO-8601)",
            "format": "date"
          }
        }
      },
      "shippingAmount": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "The currency and amount for a financial transaction, such as a balance or payment due"
      },
      "name": {
        "type": "object",
        "properties": {
          "givenName": {
            "maxLength": 140,
            "type": "string"
          },
          "surname": {
            "maxLength": 140,
            "type": "string"
          }
        },
        "description": "The name of the payer"
      },
      "phoneNumber": {
        "required": ["nationalNumber"],
        "type": "object",
        "properties": {
          "nationalNumber": {
            "maxLength": 14,
            "minLength": 1,
            "pattern": "^[0-9]{1,14}?$",
            "type": "string"
          }
        },
        "description": "The phone number, in its canonical international E.164 numbering plan format"
      },
      "phone": {
        "required": ["phoneNumber"],
        "type": "object",
        "properties": {
          "phoneType": {
            "type": "string",
            "description": "The phone type",
            "enum": ["FAX", "HOME", "MOBILE", "OTHER", "PAGER"]
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/phoneNumber"
          }
        },
        "description": "The phone number of the customer. Available only when you enable the Contact Telephone Number option in the Profile & Settings for the merchant's PayPal account"
      },
      "Model11": {
        "type": "object",
        "properties": {
          "fullName": {
            "maxLength": 300,
            "type": "string"
          }
        },
        "description": "The name of the person to whom to ship the items"
      },
      "Model12": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/Model11"
          },
          "address": {
            "$ref": "#/components/schemas/billingAddress"
          }
        },
        "description": "The shipping details"
      },
      "subscriber": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/name"
          },
          "payerId": {
            "pattern": "^[2-9A-HJ-NP-Z]{13}$",
            "type": "string",
            "description": "The PayPal-assigned ID for the payer",
            "x-constraint": {
              "length": 13
            }
          },
          "emailAddress": {
            "maxLength": 255,
            "type": "string",
            "description": "Customer email address",
            "x-format": {
              "email": {
                "minDomainSegments": 2
              }
            }
          },
          "phone": {
            "$ref": "#/components/schemas/phone"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Model12"
          }
        },
        "description": "The subscriber request information"
      },
      "outstandingBalance": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "The total pending bill amount, to be paid by the subscriber"
      },
      "Model13": {
        "required": ["cyclesCompleted", "sequence", "tenureType"],
        "type": "object",
        "properties": {
          "tenureType": {
            "type": "string",
            "description": "The type of the billing cycle",
            "enum": ["REGULAR", "TRIAL"]
          },
          "sequence": {
            "type": "integer",
            "description": "The order in which to run this cycle among other billing cycles"
          },
          "cyclesCompleted": {
            "type": "integer",
            "description": "The number of billing cycles that have completed"
          },
          "cyclesRemaining": {
            "type": "integer",
            "description": "For a finite billing cycle, cyclesRemaining is the number of remaining cycles. For an infinite billing cycle, cyclesRemaining is set as 0."
          },
          "currentPricingSchemeVersion": {
            "type": "integer",
            "description": "The active pricing scheme version for the billing cycle"
          },
          "totalCycles": {
            "type": "integer",
            "description": "The number of times this billing cycle gets executed. Trial billing cycles can only be executed a finite number of times (value between 1 and 999 for totalCycles). Regular billing cycles can be executed infinite times (value of 0 for totalCycles) or a finite number of times (value between 1 and 999 for totalCycles)."
          }
        }
      },
      "cycleExecutions": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/Model13"
        }
      },
      "Model14": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "The last payment amount"
      },
      "lastPayment": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "description": "The status of the captured payment"
          },
          "amount": {
            "$ref": "#/components/schemas/Model14"
          },
          "time": {
            "type": "string",
            "description": "The date and time when the last payment was made",
            "format": "date"
          }
        },
        "description": "The details for the last payment of the subscription"
      },
      "Model15": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "The failed payment amount"
      },
      "lastFailedPayment": {
        "type": "object",
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/Model15"
          },
          "time": {
            "type": "string",
            "description": "The date and time when the failed payment was made",
            "format": "date"
          },
          "reasonCode": {
            "type": "string",
            "description": "The reason code for the payment failure",
            "enum": [
              "CURRENCY_MISMATCH",
              "INTERNAL_SERVER_ERROR",
              "PAYEE_ACCOUNT_RESTRICTED",
              "PAYER_ACCOUNT_RESTRICTED",
              "PAYER_CANNOT_PAY",
              "PAYMENT_DENIED",
              "TRANSACTION_RECEIVING_LIMIT_EXCEEDED",
              "SENDING_LIMIT_EXCEEDED"
            ]
          },
          "nextPaymentRetryTime": {
            "type": "string",
            "description": "The time when the retry attempt for the failed payment occurs",
            "format": "date"
          }
        },
        "description": "The details for the last failed payment of the subscription"
      },
      "billingInfo": {
        "required": ["failedPaymentsCount", "outstandingBalance"],
        "type": "object",
        "properties": {
          "outstandingBalance": {
            "$ref": "#/components/schemas/outstandingBalance"
          },
          "cycleExecutions": {
            "$ref": "#/components/schemas/cycleExecutions"
          },
          "lastPayment": {
            "$ref": "#/components/schemas/lastPayment"
          },
          "nextBillingTime": {
            "type": "string"
          },
          "finalPaymentTime": {
            "type": "string"
          },
          "failedPaymentsCount": {
            "type": "number"
          },
          "lastFailedPayment": {
            "$ref": "#/components/schemas/lastFailedPayment"
          }
        }
      },
      "Model16": {
        "required": ["planId"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the subscription"
          },
          "status": {
            "type": "string",
            "description": "The status of the subscription",
            "enum": [
              "APPROVAL_PENDING",
              "ACTIVE",
              "APPROVED",
              "CANCELLED",
              "EXPIRED",
              "SUSPENDED"
            ]
          },
          "planId": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "The ID of the plan"
          },
          "planOverridden": {
            "type": "boolean",
            "description": "Indicates whether the subscription has overridden any plan attributes"
          },
          "statusUpdateTime": {
            "type": "string",
            "description": "The date and time when the subscription status updated last time",
            "format": "date"
          },
          "statusChangeNote": {
            "type": "string",
            "description": "The reason or notes for the status of the subscription"
          },
          "startTime": {
            "type": "string",
            "description": "The date and time when the subscription started",
            "format": "date"
          },
          "quantity": {
            "type": "integer",
            "description": "The quantity of the product in the subscription"
          },
          "customId": {
            "maxLength": 127,
            "minLength": 1,
            "pattern": "^[ -~]+",
            "type": "string",
            "description": "The custom id for the subscription. Can be invoice id"
          },
          "shippingAmount": {
            "$ref": "#/components/schemas/shippingAmount"
          },
          "subscriber": {
            "$ref": "#/components/schemas/subscriber"
          },
          "billingInfo": {
            "$ref": "#/components/schemas/billingInfo"
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the subscription created",
            "format": "date"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time when the subscription updated last time",
            "format": "date"
          }
        }
      },
      "redirectUrls": {
        "type": "object",
        "properties": {
          "returnUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer approves the payment",
            "x-format": {
              "uri": true
            }
          },
          "cancelUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer cancels the payment",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "Model17": {
        "required": ["tokenId"],
        "type": "object",
        "properties": {
          "tokenId": {
            "type": "string",
            "description": "The state of the agreement."
          },
          "status": {
            "type": "string",
            "description": "The description of the agreement."
          },
          "description": {
            "type": "string",
            "description": "The description of the agreement."
          },
          "collectShippingAddress": {
            "type": "boolean",
            "description": "Indicates whether to skip the collection of the shipping address from the customer during the agreement sign-up phase."
          },
          "enableAddressChange": {
            "type": "boolean",
            "description": "Indicates whether to show the shipping address but prevent the customer from editing it."
          },
          "payerInfo": {
            "$ref": "#/components/schemas/payerInfo"
          },
          "redirectUrls": {
            "$ref": "#/components/schemas/redirectUrls"
          },
          "experienceId": {
            "type": "string",
            "description": "The ID of the experience profile to apply during the agreement approval UI flow."
          },
          "externalSelectedFundingInstrumentType": {
            "type": "string",
            "description": "The type of financial instrument (FI) that the merchant wants to promote.",
            "enum": ["CREDIT", "PAY_UPON_INVOICE"]
          }
        }
      },
      "Model18": {
        "required": ["name", "paymentProviderContract", "type"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "id": {
            "maxLength": 50,
            "minLength": 6,
            "type": "string",
            "description": "The ID of the product. You can specify the SKU for the product. If you omit the ID, the system generates it. System-generated IDs have the PROD- prefix"
          },
          "name": {
            "maxLength": 127,
            "minLength": 1,
            "type": "string",
            "description": "The product name"
          },
          "description": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "The product description"
          },
          "type": {
            "type": "string",
            "description": "The product type. Indicates whether the product is physical or tangible goods, or a service",
            "example": "PHYSICAL",
            "enum": ["PHYSICAL", "DIGITAL", "SERVICE"]
          },
          "category": {
            "type": "string",
            "description": "The product category",
            "example": "AUTO_RENTALS",
            "enum": [
              "AC_REFRIGERATION_REPAIR",
              "ACADEMIC_SOFTWARE",
              "ACCESSORIES",
              "ACCOUNTING",
              "ADULT",
              "ADVERTISING",
              "AFFILIATED_AUTO_RENTAL",
              "AGENCIES",
              "AGGREGATORS",
              "AGRICULTURAL_COOPERATIVE_FOR_MAIL_ORDER",
              "AIR_CARRIERS_AIRLINES",
              "AIRLINES",
              "AIRPORTS_FLYING_FIELDS",
              "ALCOHOLIC_BEVERAGES",
              "AMUSEMENT_PARKS_CARNIVALS",
              "ANIMATION",
              "ANTIQUES",
              "APPLIANCES",
              "AQUARIAMS_SEAQUARIUMS_DOLPHINARIUMS",
              "ARCHITECTURAL_ENGINEERING_AND_SURVEYING_SERVICES",
              "ART_AND_CRAFT_SUPPLIES",
              "ART_DEALERS_AND_GALLERIES",
              "ARTIFACTS_GRAVE_RELATED_AND_NATIVE_AMERICAN_CRAFTS",
              "ARTS_AND_CRAFTS",
              "ARTS_CRAFTS_AND_COLLECTIBLES",
              "AUDIO_BOOKS",
              "AUTO_ASSOCIATIONS_CLUBS",
              "AUTO_DEALER_USED_ONLY",
              "AUTO_RENTALS",
              "AUTO_SERVICE",
              "AUTOMATED_FUEL_DISPENSERS",
              "AUTOMOBILE_ASSOCIATIONS",
              "AUTOMOTIVE",
              "AUTOMOTIVE_REPAIR_SHOPS_NON_DEALER",
              "AUTOMOTIVE_TOP_AND_BODY_SHOPS",
              "AVIATION",
              "BABIES_CLOTHING_AND_SUPPLIES",
              "BABY",
              "BANDS_ORCHESTRAS_ENTERTAINERS",
              "BARBIES",
              "BATH_AND_BODY",
              "BATTERIES",
              "BEAN_BABIES",
              "BEAUTY",
              "BEAUTY_AND_FRAGRANCES",
              "BED_AND_BATH",
              "BICYCLE_SHOPS_SALES_AND_SERVICE",
              "BICYCLES_AND_ACCESSORIES",
              "BILLIARD_POOL_ESTABLISHMENTS",
              "BOAT_DEALERS",
              "BOAT_RENTALS_AND_LEASING",
              "BOATING_SAILING_AND_ACCESSORIES",
              "BOOKS",
              "BOOKS_AND_MAGAZINES",
              "BOOKS_MANUSCRIPTS",
              "BOOKS_PERIODICALS_AND_NEWSPAPERS",
              "BOWLING_ALLEYS",
              "BULLETIN_BOARD",
              "BUS_LINE",
              "BUS_LINES_CHARTERS_TOUR_BUSES",
              "BUSINESS",
              "BUSINESS_AND_SECRETARIAL_SCHOOLS",
              "BUYING_AND_SHOPPING_SERVICES_AND_CLUBS",
              "CABLE_SATELLITE_AND_OTHER_PAY_TELEVISION_AND_RADIO_SERVICES",
              "CABLE_SATELLITE_AND_OTHER_PAY_TV_AND_RADIO",
              "CAMERA_AND_PHOTOGRAPHIC_SUPPLIES",
              "CAMERAS",
              "CAMERAS_AND_PHOTOGRAPHY",
              "CAMPER_RECREATIONAL_AND_UTILITY_TRAILER_DEALERS",
              "CAMPING_AND_OUTDOORS",
              "CAMPING_AND_SURVIVAL",
              "CAR_AND_TRUCK_DEALERS",
              "CAR_AND_TRUCK_DEALERS_USED_ONLY",
              "CAR_AUDIO_AND_ELECTRONICS",
              "CAR_RENTAL_AGENCY",
              "CATALOG_MERCHANT",
              "CATALOG_RETAIL_MERCHANT",
              "CATERING_SERVICES",
              "CHARITY",
              "CHECK_CASHIER",
              "CHILD_CARE_SERVICES",
              "CHILDREN_BOOKS",
              "CHIROPODISTS_PODIATRISTS",
              "CHIROPRACTORS",
              "CIGAR_STORES_AND_STANDS",
              "CIVIC_SOCIAL_FRATERNAL_ASSOCIATIONS",
              "CIVIL_SOCIAL_FRAT_ASSOCIATIONS",
              "CLOTHING",
              "CLOTHING_ACCESSORIES_AND_SHOES",
              "CLOTHING_RENTAL",
              "COFFEE_AND_TEA",
              "COIN_OPERATED_BANKS_AND_CASINOS",
              "COLLECTIBLES",
              "COLLECTION_AGENCY",
              "COLLEGES_AND_UNIVERSITIES",
              "COMMERCIAL_EQUIPMENT",
              "COMMERCIAL_FOOTWEAR",
              "COMMERCIAL_PHOTOGRAPHY",
              "COMMERCIAL_PHOTOGRAPHY_ART_AND_GRAPHICS",
              "COMMERCIAL_SPORTS_PROFESSIONA",
              "COMMODITIES_AND_FUTURES_EXCHANGE",
              "COMPUTER_AND_DATA_PROCESSING_SERVICES",
              "COMPUTER_HARDWARE_AND_SOFTWARE",
              "COMPUTER_MAINTENANCE_REPAIR_AND_SERVICES_NOT_ELSEWHERE_CLAS",
              "CONSTRUCTION",
              "CONSTRUCTION_MATERIALS_NOT_ELSEWHERE_CLASSIFIED",
              "CONSULTING_SERVICES",
              "CONSUMER_CREDIT_REPORTING_AGENCIES",
              "CONVALESCENT_HOMES",
              "COSMETIC_STORES",
              "COUNSELING_SERVICES_DEBT_MARRIAGE_PERSONAL",
              "COUNTERFEIT_CURRENCY_AND_STAMPS",
              "COUNTERFEIT_ITEMS",
              "COUNTRY_CLUBS",
              "COURIER_SERVICES",
              "COURIER_SERVICES_AIR_AND_GROUND_AND_FREIGHT_FORWARDERS",
              "COURT_COSTS_ALIMNY_CHILD_SUPT",
              "COURT_COSTS_INCLUDING_ALIMONY_AND_CHILD_SUPPORT_COURTS_OF_LAW",
              "CREDIT_CARDS",
              "CREDIT_UNION",
              "CULTURE_AND_RELIGION",
              "DAIRY_PRODUCTS_STORES",
              "DANCE_HALLS_STUDIOS_AND_SCHOOLS",
              "DECORATIVE",
              "DENTAL",
              "DENTISTS_AND_ORTHODONTISTS",
              "DEPARTMENT_STORES",
              "DESKTOP_PCS",
              "DEVICES",
              "DIECAST_TOYS_VEHICLES",
              "DIGITAL_GAMES",
              "DIGITAL_MEDIA_BOOKS_MOVIES_MUSIC",
              "DIRECT_MARKETING",
              "DIRECT_MARKETING_CATALOG_MERCHANT",
              "DIRECT_MARKETING_INBOUND_TELE",
              "DIRECT_MARKETING_OUTBOUND_TELE",
              "DIRECT_MARKETING_SUBSCRIPTION",
              "DISCOUNT_STORES",
              "DOOR_TO_DOOR_SALES",
              "DRAPERY_WINDOW_COVERING_AND_UPHOLSTERY",
              "DRINKING_PLACES",
              "DRUGSTORE",
              "DURABLE_GOODS",
              "ECOMMERCE_DEVELOPMENT",
              "ECOMMERCE_SERVICES",
              "EDUCATIONAL_AND_TEXTBOOKS",
              "ELECTRIC_RAZOR_STORES",
              "ELECTRICAL_AND_SMALL_APPLIANCE_REPAIR",
              "ELECTRICAL_CONTRACTORS",
              "ELECTRICAL_PARTS_AND_EQUIPMENT",
              "ELECTRONIC_CASH",
              "ELEMENTARY_AND_SECONDARY_SCHOOLS",
              "EMPLOYMENT",
              "ENTERTAINERS",
              "ENTERTAINMENT_AND_MEDIA",
              "EQUIP_TOOL_FURNITURE_AND_APPLIANCE_RENTAL_AND_LEASING",
              "ESCROW",
              "EVENT_AND_WEDDING_PLANNING",
              "EXERCISE_AND_FITNESS",
              "EXERCISE_EQUIPMENT",
              "EXTERMINATING_AND_DISINFECTING_SERVICES",
              "FABRICS_AND_SEWING",
              "FAMILY_CLOTHING_STORES",
              "FASHION_JEWELRY",
              "FAST_FOOD_RESTAURANTS",
              "FICTION_AND_NONFICTION",
              "FINANCE_COMPANY",
              "FINANCIAL_AND_INVESTMENT_ADVICE",
              "FINANCIAL_INSTITUTIONS_MERCHANDISE_AND_SERVICES",
              "FIREARM_ACCESSORIES",
              "FIREARMS_WEAPONS_AND_KNIVES",
              "FIREPLACE_AND_FIREPLACE_SCREENS",
              "FIREWORKS",
              "FISHING",
              "FLORISTS",
              "FLOWERS",
              "FOOD_DRINK_AND_NUTRITION",
              "FOOD_PRODUCTS",
              "FOOD_RETAIL_AND_SERVICE",
              "FRAGRANCES_AND_PERFUMES",
              "FREEZER_AND_LOCKER_MEAT_PROVISIONERS",
              "FUEL_DEALERS_FUEL_OIL_WOOD_AND_COAL",
              "FUEL_DEALERS_NON_AUTOMOTIVE",
              "FUNERAL_SERVICES_AND_CREMATORIES",
              "FURNISHING_AND_DECORATING",
              "FURNITURE",
              "FURRIERS_AND_FUR_SHOPS",
              "GADGETS_AND_OTHER_ELECTRONICS",
              "GAMBLING",
              "GAME_SOFTWARE",
              "GAMES",
              "GARDEN_SUPPLIES",
              "GENERAL",
              "GENERAL_CONTRACTORS",
              "GENERAL_GOVERNMENT",
              "GENERAL_SOFTWARE",
              "GENERAL_TELECOM",
              "GIFTS_AND_FLOWERS",
              "GLASS_PAINT_AND_WALLPAPER_STORES",
              "GLASSWARE_CRYSTAL_STORES",
              "GOVERNMENT",
              "GOVERNMENT_IDS_AND_LICENSES",
              "GOVERNMENT_LICENSED_ON_LINE_CASINOS_ON_LINE_GAMBLING",
              "GOVERNMENT_OWNED_LOTTERIES",
              "GOVERNMENT_SERVICES",
              "GRAPHIC_AND_COMMERCIAL_DESIGN",
              "GREETING_CARDS",
              "GROCERY_STORES_AND_SUPERMARKETS",
              "HARDWARE_AND_TOOLS",
              "HARDWARE_EQUIPMENT_AND_SUPPLIES",
              "HAZARDOUS_RESTRICTED_AND_PERISHABLE_ITEMS",
              "HEALTH_AND_BEAUTY_SPAS",
              "HEALTH_AND_NUTRITION",
              "HEALTH_AND_PERSONAL_CARE",
              "HEARING_AIDS_SALES_AND_SUPPLIES",
              "HEATING_PLUMBING_AC",
              "HIGH_RISK_MERCHANT",
              "HIRING_SERVICES",
              "HOBBIES_TOYS_AND_GAMES",
              "HOME_AND_GARDEN",
              "HOME_AUDIO",
              "HOME_DECOR",
              "HOME_ELECTRONICS",
              "HOSPITALS",
              "HOTELS_MOTELS_INNS_RESORTS",
              "HOUSEWARES",
              "HUMAN_PARTS_AND_REMAINS",
              "HUMOROUS_GIFTS_AND_NOVELTIES",
              "HUNTING",
              "IDS_LICENSES_AND_PASSPORTS",
              "ILLEGAL_DRUGS_AND_PARAPHERNALIA",
              "INDUSTRIAL",
              "INDUSTRIAL_AND_MANUFACTURING_SUPPLIES",
              "INSURANCE_AUTO_AND_HOME",
              "INSURANCE_DIRECT",
              "INSURANCE_LIFE_AND_ANNUITY",
              "INSURANCE_SALES_UNDERWRITING",
              "INSURANCE_UNDERWRITING_PREMIUMS",
              "INTERNET_AND_NETWORK_SERVICES",
              "INTRA_COMPANY_PURCHASES",
              "LABORATORIES_DENTAL_MEDICAL",
              "LANDSCAPING",
              "LANDSCAPING_AND_HORTICULTURAL_SERVICES",
              "LAUNDRY_CLEANING_SERVICES",
              "LEGAL",
              "LEGAL_SERVICES_AND_ATTORNEYS",
              "LOCAL_DELIVERY_SERVICE",
              "LOCKSMITH",
              "LODGING_AND_ACCOMMODATIONS",
              "LOTTERY_AND_CONTESTS",
              "LUGGAGE_AND_LEATHER_GOODS",
              "LUMBER_AND_BUILDING_MATERIALS",
              "MAGAZINES",
              "MAINTENANCE_AND_REPAIR_SERVICES",
              "MAKEUP_AND_COSMETICS",
              "MANUAL_CASH_DISBURSEMENTS",
              "MASSAGE_PARLORS",
              "MEDICAL",
              "MEDICAL_AND_PHARMACEUTICAL",
              "MEDICAL_CARE",
              "MEDICAL_EQUIPMENT_AND_SUPPLIES",
              "MEDICAL_SERVICES",
              "MEETING_PLANNERS",
              "MEMBERSHIP_CLUBS_AND_ORGANIZATIONS",
              "MEMBERSHIP_COUNTRY_CLUBS_GOLF",
              "MEMORABILIA",
              "MEN_AND_BOY_CLOTHING_AND_ACCESSORY_STORES",
              "MEN_CLOTHING",
              "MERCHANDISE",
              "METAPHYSICAL",
              "MILITARIA",
              "MILITARY_AND_CIVIL_SERVICE_UNIFORMS",
              "MISC",
              "MISCELLANEOUS_GENERAL_SERVICES",
              "MISCELLANEOUS_REPAIR_SHOPS_AND_RELATED_SERVICES",
              "MODEL_KITS",
              "MONEY_TRANSFER_MEMBER_FINANCIAL_INSTITUTION",
              "MONEY_TRANSFER_MERCHANT",
              "MOTION_PICTURE_THEATERS",
              "MOTOR_FREIGHT_CARRIERS_AND_TRUCKING",
              "MOTOR_HOME_AND_RECREATIONAL_VEHICLE_RENTAL",
              "MOTOR_HOMES_DEALERS",
              "MOTOR_VEHICLE_SUPPLIES_AND_NEW_PARTS",
              "MOTORCYCLE_DEALERS",
              "MOTORCYCLES",
              "MOVIE",
              "MOVIE_TICKETS",
              "MOVING_AND_STORAGE",
              "MULTI_LEVEL_MARKETING",
              "MUSIC_CDS_CASSETTES_AND_ALBUMS",
              "MUSIC_STORE_INSTRUMENTS_AND_SHEET_MUSIC",
              "NETWORKING",
              "NEW_AGE",
              "NEW_PARTS_AND_SUPPLIES_MOTOR_VEHICLE",
              "NEWS_DEALERS_AND_NEWSTANDS",
              "NON_DURABLE_GOODS",
              "NON_FICTION",
              "NON_PROFIT_POLITICAL_AND_RELIGION",
              "NONPROFIT",
              "NOVELTIES",
              "OEM_SOFTWARE",
              "OFFICE_SUPPLIES_AND_EQUIPMENT",
              "ONLINE_DATING",
              "ONLINE_GAMING",
              "ONLINE_GAMING_CURRENCY",
              "ONLINE_SERVICES",
              "OOUTBOUND_TELEMARKETING_MERCH",
              "OPHTHALMOLOGISTS_OPTOMETRIST",
              "OPTICIANS_AND_DISPENSING",
              "ORTHOPEDIC_GOODS_PROSTHETICS",
              "OSTEOPATHS",
              "OTHER",
              "PACKAGE_TOUR_OPERATORS",
              "PAINTBALL",
              "PAINTS_VARNISHES_AND_SUPPLIES",
              "PARKING_LOTS_AND_GARAGES",
              "PARTS_AND_ACCESSORIES",
              "PAWN_SHOPS",
              "PAYCHECK_LENDER_OR_CASH_ADVANCE",
              "PERIPHERALS",
              "PERSONALIZED_GIFTS",
              "PET_SHOPS_PET_FOOD_AND_SUPPLIES",
              "PETROLEUM_AND_PETROLEUM_PRODUCTS",
              "PETS_AND_ANIMALS",
              "PHOTOFINISHING_LABORATORIES_PHOTO_DEVELOPING",
              "PHOTOGRAPHIC_STUDIOS_PORTRAITS",
              "PHOTOGRAPHY",
              "PHYSICAL_GOOD",
              "PICTURE_VIDEO_PRODUCTION",
              "PIECE_GOODS_NOTIONS_AND_OTHER_DRY_GOODS",
              "PLANTS_AND_SEEDS",
              "PLUMBING_AND_HEATING_EQUIPMENTS_AND_SUPPLIES",
              "POLICE_RELATED_ITEMS",
              "POLITICAL_ORGANIZATIONS",
              "POSTAL_SERVICES_GOVERNMENT_ONLY",
              "POSTERS",
              "PREPAID_AND_STORED_VALUE_CARDS",
              "PRESCRIPTION_DRUGS",
              "PROMOTIONAL_ITEMS",
              "PUBLIC_WAREHOUSING_AND_STORAGE",
              "PUBLISHING_AND_PRINTING",
              "PUBLISHING_SERVICES",
              "RADAR_DECTORS",
              "RADIO_TELEVISION_AND_STEREO_REPAIR",
              "REAL_ESTATE",
              "REAL_ESTATE_AGENT",
              "REAL_ESTATE_AGENTS_AND_MANAGERS_RENTALS",
              "RELIGION_AND_SPIRITUALITY_FOR_PROFIT",
              "RELIGIOUS",
              "RELIGIOUS_ORGANIZATIONS",
              "REMITTANCE",
              "RENTAL_PROPERTY_MANAGEMENT",
              "RESIDENTIAL",
              "RETAIL",
              "RETAIL_FINE_JEWELRY_AND_WATCHES",
              "REUPHOLSTERY_AND_FURNITURE_REPAIR",
              "RINGS",
              "ROOFING_SIDING_SHEET_METAL",
              "RUGS_AND_CARPETS",
              "SCHOOLS_AND_COLLEGES",
              "SCIENCE_FICTION",
              "SCRAPBOOKING",
              "SCULPTURES",
              "SECURITIES_BROKERS_AND_DEALERS",
              "SECURITY_AND_SURVEILLANCE",
              "SECURITY_AND_SURVEILLANCE_EQUIPMENT",
              "SECURITY_BROKERS_AND_DEALERS",
              "SEMINARS",
              "SERVICE_STATIONS",
              "SERVICES",
              "SEWING_NEEDLEWORK_FABRIC_AND_PIECE_GOODS_STORES",
              "SHIPPING_AND_PACKING",
              "SHOE_REPAIR_HAT_CLEANING",
              "SHOE_STORES",
              "SHOES",
              "SNOWMOBILE_DEALERS",
              "SOFTWARE",
              "SPECIALTY_AND_MISC",
              "SPECIALTY_CLEANING_POLISHING_AND_SANITATION_PREPARATIONS",
              "SPECIALTY_OR_RARE_PETS",
              "SPORT_GAMES_AND_TOYS",
              "SPORTING_AND_RECREATIONAL_CAMPS",
              "SPORTING_GOODS",
              "SPORTS_AND_OUTDOORS",
              "SPORTS_AND_RECREATION",
              "STAMP_AND_COIN",
              "STATIONARY_PRINTING_AND_WRITING_PAPER",
              "STENOGRAPHIC_AND_SECRETARIAL_SUPPORT_SERVICES",
              "STOCKS_BONDS_SECURITIES_AND_RELATED_CERTIFICATES",
              "STORED_VALUE_CARDS",
              "SUPPLIES",
              "SUPPLIES_AND_TOYS",
              "SURVEILLANCE_EQUIPMENT",
              "SWIMMING_POOLS_AND_SPAS",
              "SWIMMING_POOLS_SALES_SUPPLIES_SERVICES",
              "TAILORS_AND_ALTERATIONS",
              "TAX_PAYMENTS",
              "TAX_PAYMENTS_GOVERNMENT_AGENCIES",
              "TAXICABS_AND_LIMOUSINES",
              "TELECOMMUNICATION_SERVICES",
              "TELEPHONE_CARDS",
              "TELEPHONE_EQUIPMENT",
              "TELEPHONE_SERVICES",
              "THEATER",
              "TIRE_RETREADING_AND_REPAIR",
              "TOLL_OR_BRIDGE_FEES",
              "TOOLS_AND_EQUIPMENT",
              "TOURIST_ATTRACTIONS_AND_EXHIBITS",
              "TOWING_SERVICE",
              "TOYS_AND_GAMES",
              "TRADE_AND_VOCATIONAL_SCHOOLS",
              "TRADEMARK_INFRINGEMENT",
              "TRAILER_PARKS_AND_CAMPGROUNDS",
              "TRAINING_SERVICES",
              "TRANSPORTATION_SERVICES",
              "TRAVEL",
              "TRUCK_AND_UTILITY_TRAILER_RENTALS",
              "TRUCK_STOP",
              "TYPESETTING_PLATE_MAKING_AND_RELATED_SERVICES",
              "USED_MERCHANDISE_AND_SECONDHAND_STORES",
              "USED_PARTS_MOTOR_VEHICLE",
              "UTILITIES",
              "UTILITIES_ELECTRIC_GAS_WATER_SANITARY",
              "VARIETY_STORES",
              "VEHICLE_SALES",
              "VEHICLE_SERVICE_AND_ACCESSORIES",
              "VIDEO_EQUIPMENT",
              "VIDEO_GAME_ARCADES_ESTABLISH",
              "VIDEO_GAMES_AND_SYSTEMS",
              "VIDEO_TAPE_RENTAL_STORES",
              "VINTAGE_AND_COLLECTIBLE_VEHICLES",
              "VINTAGE_AND_COLLECTIBLES",
              "VITAMINS_AND_SUPPLEMENTS",
              "VOCATIONAL_AND_TRADE_SCHOOLS",
              "WATCH_CLOCK_AND_JEWELRY_REPAIR",
              "WEB_HOSTING_AND_DESIGN",
              "WELDING_REPAIR",
              "WHOLESALE_CLUBS",
              "WHOLESALE_FLORIST_SUPPLIERS",
              "WHOLESALE_PRESCRIPTION_DRUGS",
              "WILDLIFE_PRODUCTS",
              "WIRE_TRANSFER",
              "WIRE_TRANSFER_AND_MONEY_ORDER",
              "WOMEN_ACCESSORY_SPECIALITY",
              "WOMEN_CLOTHING"
            ]
          },
          "imageUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The home page URL for the product",
            "x-format": {
              "uri": true
            }
          },
          "homeUrl": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The image URL for the product",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "Model19": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Shipping charges amount"
      },
      "paymentMethod": {
        "type": "object",
        "properties": {
          "payerSelected": {
            "type": "string",
            "description": "The customer-selected payment method on the merchant site"
          },
          "payeePreferred": {
            "type": "string",
            "description": "The merchant-preferred payment methods",
            "enum": ["UNRESTRICTED", "IMMEDIATE_PAYMENT_REQUIRED"]
          }
        },
        "description": "The customer and merchant payment preferences. Currently only PAYPAL payment method is supported"
      },
      "applicationContext": {
        "type": "object",
        "properties": {
          "brandName": {
            "type": "string",
            "description": "The label that overrides the business name in the PayPal account on the PayPal site"
          },
          "locale": {
            "type": "string",
            "description": "The BCP 47-formatted locale of pages that the PayPal payment experience shows. PayPal supports a five-character code. For example, da-DK, he-IL, id-ID, ja-JP, no-NO, pt-BR, ru-RU, sv-SE, th-TH, zh-CN, zh-HK, or zh-TW"
          },
          "shippingPreference": {
            "type": "string",
            "description": "The location from which the shipping address is derived",
            "enum": ["GET_FROM_FILE", "NO_SHIPPING", "SET_PROVIDED_ADDRESS"]
          },
          "userAction": {
            "type": "string",
            "description": "Configures the label name to Continue or Subscribe Now for subscription consent experience",
            "enum": ["CONTINUE", "SUBSCRIBE_NOW"]
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/paymentMethod"
          },
          "returnUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer approves the payment",
            "x-format": {
              "uri": true
            }
          },
          "cancelUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer cancels the payment",
            "x-format": {
              "uri": true
            }
          }
        },
        "description": "The application context, which customizes the payer experience during the subscription approval process with PayPal"
      },
      "Model20": {
        "required": ["paymentProviderContract", "planId"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "planId": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "The ID of the plan"
          },
          "startTime": {
            "type": "string",
            "description": "The date and time when the subscription started",
            "format": "date"
          },
          "quantity": {
            "type": "integer",
            "description": "The quantity of the product in the subscription"
          },
          "shippingAmount": {
            "$ref": "#/components/schemas/Model19"
          },
          "subscriber": {
            "$ref": "#/components/schemas/subscriber"
          },
          "customId": {
            "maxLength": 127,
            "minLength": 1,
            "pattern": "^[ -~]+",
            "type": "string",
            "description": "The custom id for the subscription. Can be invoice id"
          },
          "applicationContext": {
            "$ref": "#/components/schemas/applicationContext"
          }
        }
      },
      "Model21": {
        "required": [
          "approvalUrl",
          "id",
          "planId",
          "planOverridden",
          "status",
          "statusUpdateTime"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The PayPal-generated ID for the subscription."
          },
          "status": {
            "type": "string",
            "description": "The status of the subscription."
          },
          "planId": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "The ID of the plan"
          },
          "statusUpdateTime": {
            "type": "string",
            "description": "Status update time.",
            "format": "date"
          },
          "planOverridden": {
            "type": "boolean",
            "description": "Indicates whether the subscription has overridden any plan attributes."
          },
          "quantity": {
            "type": "string",
            "description": "The quantity of the product in the subscription."
          },
          "startTime": {
            "type": "string",
            "description": "The quantity of the product in the subscription.",
            "format": "date"
          },
          "shippingAmount": {
            "$ref": "#/components/schemas/Model19"
          },
          "subscriber": {
            "$ref": "#/components/schemas/subscriber"
          },
          "applicationContext": {
            "$ref": "#/components/schemas/applicationContext"
          },
          "createdAt": {
            "type": "string",
            "description": "The quantity of the product in the subscription.",
            "format": "date"
          },
          "approvalUrl": {
            "type": "string",
            "description": "PayPal approval URL",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "Model22": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Total transaction amount"
      },
      "Phone_number": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "phoneType": {
            "type": "string",
            "description": "Customer phone type",
            "enum": ["FAX", "HOME", "MOBILE", "OTHER", "PAGER"]
          },
          "value": {
            "type": "string",
            "description": "Customer phone number"
          }
        },
        "description": "Phone number"
      },
      "identification": {
        "required": ["taxIdentificationNumber", "taxIdentificationType"],
        "type": "object",
        "properties": {
          "taxIdentificationNumber": {
            "maxLength": 14,
            "type": "string",
            "description": "Customer tax ID. Supported for the PayPal payment method only. Typically, the tax ID is 11 characters long for individuals and 14 characters long for businesses."
          },
          "taxIdentificationType": {
            "type": "string",
            "description": "The customer tax ID type.",
            "enum": ["BR_CNPJ", "BR_CPF"]
          }
        },
        "description": "Customer identification"
      },
      "address": {
        "required": ["country", "postalCode"],
        "type": "object",
        "properties": {
          "country": {
            "maxLength": 2,
            "minLength": 2,
            "pattern": "^([A-Z]{2}|C2)$",
            "type": "string",
            "description": "The two-character ISO 3166-1 code that identifies the country or region."
          },
          "postalCode": {
            "maxLength": 60,
            "type": "string",
            "description": "The postal code, which is the zip code or equivalent.  Typically required for countries with a postal code or an equivalent."
          },
          "countrySubdivision": {
            "maxLength": 300,
            "type": "string",
            "description": "The highest level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision."
          },
          "city": {
            "maxLength": 120,
            "type": "string",
            "description": "A city, town, or village. Smaller than admin_area_level_1"
          },
          "addressLine2": {
            "maxLength": 300,
            "type": "string",
            "description": "The second line of the address. For example, suite or apartment number."
          },
          "addressLine1": {
            "maxLength": 300,
            "type": "string",
            "description": "The first line of the address. For example, number or street.  For example, 173 Drury Lane. Required for data entry and compliance and risk checks. Must contain the full address."
          }
        },
        "description": "Customer billing address"
      },
      "customer": {
        "type": "object",
        "properties": {
          "email": {
            "maxLength": 255,
            "type": "string",
            "description": "Customer email address",
            "x-format": {
              "email": {
                "minDomainSegments": 2
              }
            }
          },
          "payerId": {
            "pattern": "^[2-9A-HJ-NP-Z]{13}$",
            "type": "string",
            "description": "The PayPal-assigned ID for the payer",
            "x-constraint": {
              "length": 13
            }
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/Phone_number"
          },
          "birthDate": {
            "type": "string",
            "description": "Date of birth of the customer, 10 characters, ISO-8601 (YYYY-MM-DD)",
            "format": "date"
          },
          "identification": {
            "$ref": "#/components/schemas/identification"
          },
          "address": {
            "$ref": "#/components/schemas/address"
          },
          "firstName": {
            "type": "string",
            "description": "Customer first name"
          },
          "lastName": {
            "type": "string",
            "description": "Customer last name"
          }
        },
        "description": "Customer details"
      },
      "application_context": {
        "type": "object",
        "properties": {
          "brandName": {
            "maxLength": 127,
            "type": "string",
            "description": "The label that overrides the business name in the PayPal account on the PayPal site."
          },
          "locale": {
            "maxLength": 127,
            "type": "string",
            "description": "The BCP 47-formatted locale of pages that the PayPal payment experience shows.   PayPal supports a five-character code.  For example, da-DK, he-IL, id-ID, ja-JP, no-NO, pt-BR, ru-RU, sv-SE, th-TH, zh-CN, zh-HK, or zh-TW."
          },
          "landingPage": {
            "type": "string",
            "description": "The    type of landing page to show on the PayPal site for customer checkout. default will be NO_PREFERENCE Possible Values: <br />  * BILLING - When the customer clicks PayPal Checkout, the customer is redirected to a page to log in to PayPal and approve the payment. <br />  * LOGIN - When the customer clicks PayPal Checkout, the customer is redirected to a page to enter credit or debit card and other relevant billing information required to complete the purchase. <br />  * NO_PREFERENCE - When the customer clicks PayPal Checkout, the customer is redirected to either a page to log in to PayPal and approve the payment or to a page to enter credit or debit card and other relevant billing information required to complete the purchase, depending on their previous interaction with PayPal. <br />",
            "enum": ["BILLING", "LOGIN", "NO_PREFERENCE"]
          },
          "shippingPreference": {
            "type": "string",
            "description": "The shipping preference:\n* Redact the shipping address from the PayPal site. Recommended for digital goods.\n* Use the customer-provided shipping address on the PayPal site.\n* Use the merchant-provided address. The customer cannot change this address on the PayPal site.",
            "enum": ["NoShipping", "CustomerProvided", "MerchantProvided"]
          },
          "paymentPreference": {
            "type": "string",
            "description": "The merchant-preferred payment methods:\n* Accepts any type of payment from the customer.\n* Accepts only immediate payment from the customer. For example, credit card, PayPal balance, or instant ACH.",
            "enum": ["Any", "Immediate"]
          },
          "shopperAuthorization": {
            "type": "string",
            "description": "NACHA (the regulatory body governing the ACH network) requires that API callers (merchants, partners) obtain the consumer’s explicit authorization before initiating a transaction. ACH transactions are categorized (using SEC codes) by how you capture authorization from the Receiver (the person whose bank account is being debited or credited). PayPal supports the following SEC codes.\n* <b>TEL.</b> The API caller (merchant/partner) accepts authorization and payment information from a consumer over the telephone.\n* <b>WEB.</b> The API caller (merchant/partner) accepts Debit transactions from a consumer on their website.\n* <b>CCD.</b> Cash concentration and disbursement for corporate debit transaction. Used to disburse or consolidate funds. Entries are usually Optional high-dollar, low-volume, and time-critical. (e.g. intra-company transfers or invoice payments to suppliers).\n* <b>PPD.</b> Prearranged payment and deposit entries. Used for debit payments authorized by a consumer account holder, and usually initiated by a company. These are usually recurring debits (such as insurance premiums).",
            "enum": ["TEL", "WEB", "CCD", "PPD"]
          },
          "returnUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer approves the payment",
            "x-format": {
              "uri": true
            }
          },
          "cancelUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer cancels the payment",
            "x-format": {
              "uri": true
            }
          }
        },
        "description": "Application context details"
      },
      "shipping": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/billingAddress"
          },
          "fullName": {
            "type": "string",
            "description": "Full Name"
          }
        },
        "description": "Shipping details"
      },
      "unitAmount": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          },
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          }
        },
        "description": "Amount for the item"
      },
      "tax": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          },
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          }
        },
        "description": "Tax amount"
      },
      "Model24": {
        "required": ["tax", "unitAmount"],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 127,
            "type": "string",
            "description": "Item name"
          },
          "unitAmount": {
            "$ref": "#/components/schemas/unitAmount"
          },
          "tax": {
            "$ref": "#/components/schemas/tax"
          },
          "quantity": {
            "type": "number",
            "description": "Item quantity"
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "Item description"
          },
          "sku": {
            "maxLength": 127,
            "type": "string",
            "description": "The Stock Keeping Unit"
          },
          "category": {
            "type": "string",
            "description": "Category of Goods",
            "enum": ["DIGITAL_GOODS", "PHYSICAL_GOODS"]
          }
        }
      },
      "items": {
        "type": "array",
        "description": "Items to purchase",
        "items": {
          "$ref": "#/components/schemas/Model24"
        }
      },
      "discount": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Discount amount"
      },
      "shippingDiscount": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Shipping discount amount"
      },
      "insurance": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Insurance fee amount"
      },
      "handling": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Handling fee amount"
      },
      "Model25": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Shipping fee amount"
      },
      "detailedAmount": {
        "type": "object",
        "properties": {
          "discount": {
            "$ref": "#/components/schemas/discount"
          },
          "shippingDiscount": {
            "$ref": "#/components/schemas/shippingDiscount"
          },
          "insurance": {
            "$ref": "#/components/schemas/insurance"
          },
          "handling": {
            "$ref": "#/components/schemas/handling"
          },
          "shipping": {
            "$ref": "#/components/schemas/Model25"
          }
        },
        "description": "Detailed amount"
      },
      "Model26": {
        "required": ["amount", "paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "Payment Provider contract",
            "x-format": {
              "guid": true
            }
          },
          "amount": {
            "$ref": "#/components/schemas/Model22"
          },
          "intent": {
            "type": "string",
            "description": "Intent of this transaction",
            "default": "CAPTURE",
            "enum": ["AUTHORIZE", "CAPTURE"]
          },
          "customer": {
            "$ref": "#/components/schemas/customer"
          },
          "applicationContext": {
            "$ref": "#/components/schemas/application_context"
          },
          "shipping": {
            "$ref": "#/components/schemas/shipping"
          },
          "items": {
            "$ref": "#/components/schemas/items"
          },
          "dynamicDescriptor": {
            "maxLength": 22,
            "type": "string",
            "description": "If an Order is paid using the \"PayPal Wallet\" the statement descriptor will appear in following format on the payer card statement:  PAYPAL_prefix+(space)+merchant_descriptor+(space)+dynamicDescriptor.  The PAYPAL prefix uses 8 characters. Only the first 22 characters will be displayed in the statement. <br />  For example, <br/>  * The PayPal prefix toggle is PAYPAL <br/>  * The merchant descriptor in the profile is Janes Gift <br/>  * The soft descriptor is 800-123-1234 </br> Then, the statement descriptor on the card is PAYPAL * Janes Gift 80."
          },
          "merchantReference": {
            "maxLength": 127,
            "type": "string",
            "description": "The API caller-provided external ID. Used to reconcile client transactions with PayPal transactions. Appears in transaction and settlement reports but is not visible to the payer."
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "Purchase description"
          },
          "detailedAmount": {
            "$ref": "#/components/schemas/detailedAmount"
          }
        }
      },
      "Payer_Name": {
        "type": "object",
        "description": "The name of the payer.",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "First name"
          },
          "lastName": {
            "type": "string",
            "description": "Last name"
          }
        }
      },
      "Shipping-Address": {
        "type": "object",
        "description": "Shipping Address details",
        "properties": {
          "country": {
            "type": "string",
            "description": "The two-character ISO 3166-1 code that identifies the country or region.",
            "minLength": 2,
            "maxLength": 2,
            "pattern": "^([A-Z]{2}|C2)$"
          },
          "postalCode": {
            "type": "string",
            "description": "The postal code, which is the zip code or equivalent.  Typically required for countries with a postal code or an equivalent.",
            "maxLength": 60
          },
          "countrySubdivision": {
            "type": "string",
            "description": "The highest level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision.",
            "maxLength": 300
          },
          "city": {
            "type": "string",
            "description": "A city, town, or village. Smaller than admin_area_level_1",
            "maxLength": 120
          },
          "addressLine2": {
            "type": "string",
            "description": "The second line of the address. For example, suite or apartment number.",
            "maxLength": 300
          },
          "addressLine1": {
            "type": "string",
            "description": "The first line of the address. For example, number or street.  For example, 173 Drury Lane. Required for data entry and compliance and risk checks. Must contain the full address.",
            "maxLength": 300
          },
          "fullName": {
            "type": "string",
            "description": "The name of the person to whom to ship the items."
          }
        },
        "required": ["country", "postalCode"]
      },
      "Model27": {
        "type": "object",
        "properties": {
          "payerId": {
            "pattern": "^[2-9A-HJ-NP-Z]{13}$",
            "type": "string",
            "description": "The PayPal-assigned ID for the payer",
            "x-constraint": {
              "length": 13
            }
          },
          "name": {
            "$ref": "#/components/schemas/Payer_Name"
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/Phone_number"
          },
          "email": {
            "type": "string",
            "description": "The email address of the payer.",
            "maxLength": 255,
            "x-format": {
              "email": {
                "minDomainSegments": 2
              }
            }
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/billingAddress"
          }
        }
      },
      "Model28": {
        "required": ["createdAt", "id", "instoreReference"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Transaction UUID from create transaction API",
            "x-format": {
              "guid": true
            }
          },
          "createdAt": {
            "type": "string",
            "description": "Transaction creation date (ISO-8601)",
            "format": "date"
          },
          "status": {
            "type": "string",
            "description": "Transaction status",
            "enum": ["INITIATED", "AUTHORISED"]
          },
          "orderId": {
            "type": "string",
            "description": "PayPal order identifier"
          },
          "instoreReference": {
            "type": "string",
            "description": "Reference to the transaction for internal usage for instore"
          },
          "approvalUrl": {
            "type": "string",
            "description": "The URL where the customer should be redirected to approve the payment",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "Model29": {
        "required": ["billingToken", "paymentProviderContract"],
        "type": "object",
        "properties": {
          "billingToken": {
            "type": "string",
            "description": "PayPal agreement token"
          },
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID",
            "x-format": {
              "guid": true
            }
          }
        }
      },
      "Model30": {
        "required": ["createTime", "id", "state"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the agreement."
          },
          "state": {
            "type": "string",
            "description": "The state of the agreement."
          },
          "description": {
            "type": "string",
            "description": "The description of the agreement."
          },
          "merchant": {
            "$ref": "#/components/schemas/merchant"
          },
          "payer": {
            "$ref": "#/components/schemas/payer"
          },
          "plan": {
            "$ref": "#/components/schemas/plan"
          },
          "createTime": {
            "type": "string",
            "description": "The date and time when the agreement was created."
          },
          "updateTime": {
            "type": "string",
            "description": "The date and time when the agreement was updated."
          }
        }
      },
      "Model31": {
        "required": [
          "addressLine1",
          "city",
          "country",
          "countrySubdivision",
          "postalCode"
        ],
        "type": "object",
        "properties": {
          "country": {
            "maxLength": 2,
            "minLength": 2,
            "pattern": "^([A-Z]{2}|C2)$",
            "type": "string",
            "description": "The two-character ISO 3166-1 code that identifies the country or region."
          },
          "postalCode": {
            "maxLength": 60,
            "type": "string",
            "description": "The postal code, which is the zip code or equivalent.  Typically required for countries with a postal code or an equivalent."
          },
          "countrySubdivision": {
            "maxLength": 300,
            "type": "string",
            "description": "The highest level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision."
          },
          "city": {
            "maxLength": 120,
            "type": "string",
            "description": "A city, town, or village. Smaller than admin_area_level_1"
          },
          "addressLine2": {
            "maxLength": 300,
            "type": "string",
            "description": "The second line of the address. For example, suite or apartment number."
          },
          "addressLine1": {
            "maxLength": 300,
            "type": "string",
            "description": "The first line of the address. For example, number or street.  For example, 173 Drury Lane. Required for data entry and compliance and risk checks. Must contain the full address."
          }
        },
        "description": "Shipping Address details"
      },
      "Model32": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID",
            "x-format": {
              "guid": true
            }
          },
          "description": {
            "type": "string",
            "description": "Agreement description"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Model31"
          },
          "enableAddressChange": {
            "type": "boolean",
            "description": "Indicates whether to show the shipping address but prevent the customer from editing it."
          },
          "collectShippingAddress": {
            "type": "boolean",
            "description": "Indicates whether to skip the collection of the shipping address from the customer during the agreement sign-up phase."
          },
          "allowedCountries": {
            "$ref": "#/components/schemas/allowedCountries"
          },
          "experienceId": {
            "type": "string",
            "description": "The ID of the experience profile to apply during the agreement approval UI flow."
          },
          "externalSelectedFundingInstrumentType": {
            "type": "string",
            "description": "The type of financial instrument (FI) that the merchant wants to promote.",
            "enum": ["CREDIT", "PAY_UPON_INVOICE"]
          },
          "returnUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer approves the payment",
            "x-format": {
              "uri": true
            }
          },
          "cancelUrl": {
            "type": "string",
            "description": "The URL where the customer is redirected after the customer cancels the payment",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "Model33": {
        "required": ["approvalUrl", "billingToken"],
        "type": "object",
        "properties": {
          "approvalUrl": {
            "type": "string",
            "description": "PayPal approval URL",
            "x-format": {
              "uri": true
            }
          },
          "billingToken": {
            "type": "string",
            "description": "Billing token",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "Model34": {
        "required": ["sequence", "tenureType"],
        "type": "object",
        "properties": {
          "pricingScheme": {
            "$ref": "#/components/schemas/pricingScheme"
          },
          "frequency": {
            "$ref": "#/components/schemas/frequency"
          },
          "tenureType": {
            "type": "string",
            "description": "The tenure type of the billing cycle.",
            "enum": ["REGULAR", "TRIAL"]
          },
          "sequence": {
            "type": "number",
            "description": "The order in which this cycle is to run among other billing cycles."
          },
          "totalCycles": {
            "type": "number",
            "description": "The number of times this billing cycle gets executed."
          }
        }
      },
      "Model35": {
        "minItems": 1,
        "type": "array",
        "description": "An array of billing cycles for trial billing and regular billing",
        "items": {
          "$ref": "#/components/schemas/Model34"
        }
      },
      "Model36": {
        "required": [
          "billingCycles",
          "name",
          "paymentProviderContract",
          "productId"
        ],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID",
            "x-format": {
              "guid": true
            }
          },
          "productId": {
            "type": "string",
            "description": "PayPal catalog product id"
          },
          "name": {
            "maxLength": 127,
            "type": "string",
            "description": "The plan name"
          },
          "status": {
            "type": "string",
            "description": "The initial state of the plan",
            "enum": ["ACTIVE", "INACTIVE", "CREATED"]
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "The detailed description of the plan."
          },
          "billingCycles": {
            "$ref": "#/components/schemas/Model35"
          },
          "paymentPreferences": {
            "$ref": "#/components/schemas/paymentPreferences"
          },
          "taxes": {
            "$ref": "#/components/schemas/taxes"
          },
          "quantitySupported": {
            "type": "boolean",
            "description": "Indicates whether you can subscribe to this plan by providing a quantity for the goods or service."
          }
        }
      },
      "Model37": {
        "required": [
          "billingCycles",
          "createTime",
          "id",
          "name",
          "productId",
          "status"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 6,
            "type": "string",
            "description": "The unique PayPal-generated ID for the plan."
          },
          "productId": {
            "type": "string",
            "description": "PayPal catalog product id"
          },
          "name": {
            "maxLength": 127,
            "type": "string",
            "description": "The plan name"
          },
          "status": {
            "type": "string",
            "description": "The initial state of the plan",
            "enum": ["ACTIVE", "INACTIVE", "CREATED"]
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "The detailed description of the plan."
          },
          "billingCycles": {
            "$ref": "#/components/schemas/billingCycles"
          },
          "paymentPreferences": {
            "$ref": "#/components/schemas/paymentPreferences"
          },
          "taxes": {
            "$ref": "#/components/schemas/taxes"
          },
          "quantitySupported": {
            "type": "boolean",
            "description": "Indicates whether you can subscribe to this plan by providing a quantity for the goods or service."
          },
          "createTime": {
            "type": "string",
            "description": "The date and time when the billing plan was created.",
            "format": "date"
          },
          "updateTime": {
            "type": "string",
            "description": "The date and time when the billing plan was updated.",
            "format": "date"
          }
        }
      },
      "Model38": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID",
            "x-format": {
              "guid": true
            }
          }
        }
      },
      "Model39": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "planId": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "The ID of the plan"
          },
          "effectiveTime": {
            "type": "string",
            "description": "The date and time when this change is effective",
            "format": "date"
          },
          "quantity": {
            "type": "integer",
            "description": "The quantity of the product or service in the subscription"
          },
          "shippingAmount": {
            "$ref": "#/components/schemas/Model19"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Model12"
          },
          "applicationContext": {
            "$ref": "#/components/schemas/applicationContext"
          }
        }
      },
      "Model40": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "reason": {
            "type": "string",
            "description": "The reason for the cancellation of a subscription."
          },
          "amount": {
            "description": "The amount of the outstanding balance. This value cannot be greater than the current outstanding balance amount.",
            "required": ["currencyCode", "value"],
            "type": "object",
            "properties": {
              "value": {
                "minimum": 0,
                "type": "integer",
                "description": "Integer amount value (100 is 1.00)",
                "example": 100
              },
              "currencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Currency code (ISO-4217)",
                "example": "EUR",
                "enum": [
                  "AED",
                  "AFN",
                  "ALL",
                  "AMD",
                  "ANG",
                  "AOA",
                  "ARS",
                  "AUD",
                  "AWG",
                  "AZN",
                  "BAM",
                  "BBD",
                  "BDT",
                  "BGN",
                  "BHD",
                  "BIF",
                  "BMD",
                  "BND",
                  "BOB",
                  "BOV",
                  "BRL",
                  "BSD",
                  "BTN",
                  "BWP",
                  "BYN",
                  "BZD",
                  "CAD",
                  "CDF",
                  "CHE",
                  "CHF",
                  "CHW",
                  "CLF",
                  "CLP",
                  "CNY",
                  "COP",
                  "COU",
                  "CRC",
                  "CUC",
                  "CUP",
                  "CVE",
                  "CZK",
                  "DJF",
                  "DKK",
                  "DOP",
                  "DZD",
                  "EGP",
                  "ERN",
                  "ETB",
                  "EUR",
                  "FJD",
                  "FKP",
                  "GBP",
                  "GEL",
                  "GHS",
                  "GIP",
                  "GMD",
                  "GNF",
                  "GTQ",
                  "GYD",
                  "HKD",
                  "HNL",
                  "HRK",
                  "HTG",
                  "HUF",
                  "IDR",
                  "ILS",
                  "INR",
                  "IQD",
                  "IRR",
                  "ISK",
                  "JMD",
                  "JOD",
                  "JPY",
                  "KES",
                  "KGS",
                  "KHR",
                  "KMF",
                  "KPW",
                  "KRW",
                  "KWD",
                  "KYD",
                  "KZT",
                  "LAK",
                  "LBP",
                  "LKR",
                  "LRD",
                  "LSL",
                  "LYD",
                  "MAD",
                  "MDL",
                  "MGA",
                  "MKD",
                  "MMK",
                  "MNT",
                  "MOP",
                  "MRU",
                  "MUR",
                  "MVR",
                  "MWK",
                  "MXN",
                  "MXV",
                  "MYR",
                  "MZN",
                  "NAD",
                  "NGN",
                  "NIO",
                  "NOK",
                  "NPR",
                  "NZD",
                  "OMR",
                  "PAB",
                  "PEN",
                  "PGK",
                  "PHP",
                  "PKR",
                  "PLN",
                  "PYG",
                  "QAR",
                  "RON",
                  "RSD",
                  "RUB",
                  "RWF",
                  "SAR",
                  "SBD",
                  "SCR",
                  "SDG",
                  "SEK",
                  "SGD",
                  "SHP",
                  "SLL",
                  "SOS",
                  "SRD",
                  "SSP",
                  "STN",
                  "SVC",
                  "SYP",
                  "SZL",
                  "THB",
                  "TJS",
                  "TMT",
                  "TND",
                  "TOP",
                  "TRY",
                  "TTD",
                  "TWD",
                  "TZS",
                  "UAH",
                  "UGX",
                  "USD",
                  "USN",
                  "UYI",
                  "UYU",
                  "UYW",
                  "UZS",
                  "VES",
                  "VND",
                  "VUV",
                  "WST",
                  "XAF",
                  "XAG",
                  "XAU",
                  "XBA",
                  "XBB",
                  "XBC",
                  "XBD",
                  "XCD",
                  "XDR",
                  "XOF",
                  "XPD",
                  "XPF",
                  "XPT",
                  "XSU",
                  "XTS",
                  "XUA",
                  "XXX",
                  "YER",
                  "ZAR",
                  "ZMW",
                  "ZWL"
                ]
              }
            }
          }
        }
      },
      "Model41": {
        "required": ["amount", "paymentProviderContract", "reason"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "reason": {
            "type": "string",
            "description": "The reason or note for the subscription charge."
          },
          "amount": {
            "$ref": "#/components/schemas/amount"
          }
        }
      },
      "Model42": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The reason for activation of a subscription"
          },
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          }
        }
      },
      "Model43": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "reason": {
            "type": "string",
            "description": "The reason for suspenson of the subscription."
          }
        }
      },
      "Model44": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "Payment Provider contract",
            "x-format": {
              "guid": true
            }
          },
          "trackingId": {
            "type": "string",
            "description": "A unique ID to track each transaction",
            "x-format": {
              "guid": true
            }
          },
          "data": {
            "$ref": "#/components/schemas/details"
          }
        }
      },
      "Model45": {
        "required": ["trackingId"],
        "type": "object",
        "properties": {
          "trackingId": {
            "type": "string",
            "description": "A unique ID to track each transaction",
            "x-format": {
              "guid": true
            }
          }
        }
      },
      "Model46": {
        "type": "object",
        "properties": {
          "agreementId": {
            "type": "string",
            "description": "PayPal billing agreement id"
          },
          "merchantReference": {
            "maxLength": 127,
            "type": "string",
            "description": "The API caller-provided external ID. Used to reconcile client transactions with PayPal transactions. Appears in transaction and settlement reports but is not visible to the payer."
          }
        }
      },
      "Model47": {
        "required": ["authorizationId", "createdAt", "id", "instoreReference"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Transaction UUID from create transaction API",
            "x-format": {
              "guid": true
            }
          },
          "authorizationId": {
            "type": "string",
            "description": "PayPal authorization identifier"
          },
          "createdAt": {
            "type": "string",
            "description": "Authorization creation date (ISO-8601)",
            "format": "date"
          },
          "expiresAt": {
            "type": "string",
            "description": "Authorization expiration date (ISO-8601)",
            "format": "date"
          },
          "status": {
            "type": "string",
            "description": "Transaction status",
            "enum": ["AUTHORISED"]
          },
          "payer": {
            "$ref": "#/components/schemas/Auth_Payer_Info"
          },
          "instoreReference": {
            "type": "string",
            "description": "Reference to the transaction for internal usage for instore"
          }
        }
      },
      "Auth_Payer_Info": {
        "type": "object",
        "properties": {
          "payerId": {
            "type": "string",
            "description": "The PayPal-assigned ID for the payer",
            "pattern": "^[2-9A-HJ-NP-Z]{13}$",
            "x-constraint": {
              "length": 13
            }
          },
          "name": {
            "$ref": "#/components/schemas/Payer_Name"
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/Phone_number"
          },
          "email": {
            "type": "string",
            "description": "The email address of the payer.",
            "maxLength": 255,
            "x-format": {
              "email": {
                "minDomainSegments": 2
              }
            }
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Shipping-Address"
          },
          "authorizationStatus": {
            "type": "string",
            "description": "The status of the authorized payment.\n\nThe possible values are:\n\n* CREATED. The authorized payment is created. No captured payments have been made for this authorized payment.\n* PARTIALLY_CREATED. The payment which was authorized for an amount that is less than the originally requested amount.\n* DENIED. PayPal cannot authorize funds for this authorized payment.\n* PENDING. The created authorization is in pending state. A manual review might be pending."
          }
        }
      },
      "Model48": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Amount to capture. If not provided, full capture will be performed."
      },
      "Model49": {
        "type": "object",
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/Model48"
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "An informational note about the capture. Appears in both the payer's transaction history and the\n emails that the payer receives."
          },
          "agreementId": {
            "type": "string",
            "description": "Billing Agreement id"
          },
          "merchantReference": {
            "maxLength": 127,
            "type": "string",
            "description": "The API caller-provided external ID. Used to reconcile client transactions with PayPal transactions. Appears in transaction and settlement reports but is not visible to the payer."
          }
        }
      },
      "Capture_Payer_Info": {
        "type": "object",
        "properties": {
          "payerId": {
            "type": "string",
            "description": "The PayPal-assigned ID for the payer",
            "pattern": "^[2-9A-HJ-NP-Z]{13}$",
            "x-constraint": {
              "length": 13
            }
          },
          "name": {
            "$ref": "#/components/schemas/Payer_Name"
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/Phone_number"
          },
          "email": {
            "type": "string",
            "description": "The email address of the payer.",
            "maxLength": 255,
            "x-format": {
              "email": {
                "minDomainSegments": 2
              }
            }
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Shipping-Address"
          },
          "paymentStatus": {
            "type": "string",
            "description": "The status of the captured payment.\n\nThe possible values are:\n\n* COMPLETED. The funds for this captured payment were credited to the payee's PayPal account.\n* DECLINED. The funds could not be captured.\n* PENDING. The funds for this captured payment was not yet credited to the payee's PayPal account. A manual review might be pending.\n* FAILED. There was an error while capturing payment."
          }
        }
      },
      "Model50": {
        "required": ["captureId", "createdAt", "id", "instoreReference"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Transaction UUID from create transaction API",
            "x-format": {
              "guid": true
            }
          },
          "captureId": {
            "type": "string",
            "description": "PayPal capture identifier"
          },
          "isFinalCapture": {
            "type": "boolean",
            "description": "Flag telling if capture is final or not"
          },
          "instoreReference": {
            "type": "string",
            "description": "Reference to the transaction for internal usage for instore"
          },
          "createdAt": {
            "type": "string",
            "description": "Capture creation date (ISO-8601)",
            "format": "date"
          },
          "status": {
            "type": "string",
            "description": "Transaction status",
            "enum": ["AUTHORISED"]
          },
          "payer": {
            "$ref": "#/components/schemas/Capture_Payer_Info"
          }
        }
      },
      "Model51": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100,
            "x-constraint": {
              "greater": 0
            }
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "Amount to refund. If not provided, full refund will be performed."
      },
      "Model52": {
        "type": "object",
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/Model51"
          },
          "reason": {
            "maxLength": 127,
            "type": "string",
            "description": "The reason for the refund. Appears in both the payer's transaction history and the emails that the\n payer receives."
          },
          "merchantReference": {
            "maxLength": 127,
            "type": "string",
            "description": "The API caller-provided external ID. Used to reconcile client transactions with PayPal transactions. Appears in transaction and settlement reports but is not visible to the payer."
          }
        }
      },
      "Model53": {
        "required": ["createdAt", "id", "instoreReference", "refundId"],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Transaction UUID from create transaction API",
            "x-format": {
              "guid": true
            }
          },
          "refundId": {
            "type": "string",
            "description": "Refund identifier"
          },
          "createdAt": {
            "type": "string",
            "description": "Refund creation date (ISO-8601)",
            "format": "date"
          },
          "status": {
            "type": "string",
            "description": "Transaction status",
            "enum": ["AUTHORISED"]
          },
          "instoreReference": {
            "type": "string",
            "description": "Reference to the transaction for internal usage for instore"
          }
        }
      },
      "imageUrl": {
        "required": ["op"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "description": "The remove operation does not require a value",
            "enum": ["add", "remove", "replace"]
          },
          "value": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The home page URL for the product",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "homeUrl": {
        "required": ["op"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "description": "The remove operation does not require a value",
            "enum": ["add", "remove", "replace"]
          },
          "value": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The image URL for the product",
            "x-format": {
              "uri": true
            }
          }
        }
      },
      "category": {
        "required": ["op"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "description": "The remove operation does not require a value",
            "enum": ["add", "remove", "replace"]
          },
          "value": {
            "type": "string",
            "description": "The product category",
            "example": "AUTO_RENTALS",
            "enum": [
              "AC_REFRIGERATION_REPAIR",
              "ACADEMIC_SOFTWARE",
              "ACCESSORIES",
              "ACCOUNTING",
              "ADULT",
              "ADVERTISING",
              "AFFILIATED_AUTO_RENTAL",
              "AGENCIES",
              "AGGREGATORS",
              "AGRICULTURAL_COOPERATIVE_FOR_MAIL_ORDER",
              "AIR_CARRIERS_AIRLINES",
              "AIRLINES",
              "AIRPORTS_FLYING_FIELDS",
              "ALCOHOLIC_BEVERAGES",
              "AMUSEMENT_PARKS_CARNIVALS",
              "ANIMATION",
              "ANTIQUES",
              "APPLIANCES",
              "AQUARIAMS_SEAQUARIUMS_DOLPHINARIUMS",
              "ARCHITECTURAL_ENGINEERING_AND_SURVEYING_SERVICES",
              "ART_AND_CRAFT_SUPPLIES",
              "ART_DEALERS_AND_GALLERIES",
              "ARTIFACTS_GRAVE_RELATED_AND_NATIVE_AMERICAN_CRAFTS",
              "ARTS_AND_CRAFTS",
              "ARTS_CRAFTS_AND_COLLECTIBLES",
              "AUDIO_BOOKS",
              "AUTO_ASSOCIATIONS_CLUBS",
              "AUTO_DEALER_USED_ONLY",
              "AUTO_RENTALS",
              "AUTO_SERVICE",
              "AUTOMATED_FUEL_DISPENSERS",
              "AUTOMOBILE_ASSOCIATIONS",
              "AUTOMOTIVE",
              "AUTOMOTIVE_REPAIR_SHOPS_NON_DEALER",
              "AUTOMOTIVE_TOP_AND_BODY_SHOPS",
              "AVIATION",
              "BABIES_CLOTHING_AND_SUPPLIES",
              "BABY",
              "BANDS_ORCHESTRAS_ENTERTAINERS",
              "BARBIES",
              "BATH_AND_BODY",
              "BATTERIES",
              "BEAN_BABIES",
              "BEAUTY",
              "BEAUTY_AND_FRAGRANCES",
              "BED_AND_BATH",
              "BICYCLE_SHOPS_SALES_AND_SERVICE",
              "BICYCLES_AND_ACCESSORIES",
              "BILLIARD_POOL_ESTABLISHMENTS",
              "BOAT_DEALERS",
              "BOAT_RENTALS_AND_LEASING",
              "BOATING_SAILING_AND_ACCESSORIES",
              "BOOKS",
              "BOOKS_AND_MAGAZINES",
              "BOOKS_MANUSCRIPTS",
              "BOOKS_PERIODICALS_AND_NEWSPAPERS",
              "BOWLING_ALLEYS",
              "BULLETIN_BOARD",
              "BUS_LINE",
              "BUS_LINES_CHARTERS_TOUR_BUSES",
              "BUSINESS",
              "BUSINESS_AND_SECRETARIAL_SCHOOLS",
              "BUYING_AND_SHOPPING_SERVICES_AND_CLUBS",
              "CABLE_SATELLITE_AND_OTHER_PAY_TELEVISION_AND_RADIO_SERVICES",
              "CABLE_SATELLITE_AND_OTHER_PAY_TV_AND_RADIO",
              "CAMERA_AND_PHOTOGRAPHIC_SUPPLIES",
              "CAMERAS",
              "CAMERAS_AND_PHOTOGRAPHY",
              "CAMPER_RECREATIONAL_AND_UTILITY_TRAILER_DEALERS",
              "CAMPING_AND_OUTDOORS",
              "CAMPING_AND_SURVIVAL",
              "CAR_AND_TRUCK_DEALERS",
              "CAR_AND_TRUCK_DEALERS_USED_ONLY",
              "CAR_AUDIO_AND_ELECTRONICS",
              "CAR_RENTAL_AGENCY",
              "CATALOG_MERCHANT",
              "CATALOG_RETAIL_MERCHANT",
              "CATERING_SERVICES",
              "CHARITY",
              "CHECK_CASHIER",
              "CHILD_CARE_SERVICES",
              "CHILDREN_BOOKS",
              "CHIROPODISTS_PODIATRISTS",
              "CHIROPRACTORS",
              "CIGAR_STORES_AND_STANDS",
              "CIVIC_SOCIAL_FRATERNAL_ASSOCIATIONS",
              "CIVIL_SOCIAL_FRAT_ASSOCIATIONS",
              "CLOTHING",
              "CLOTHING_ACCESSORIES_AND_SHOES",
              "CLOTHING_RENTAL",
              "COFFEE_AND_TEA",
              "COIN_OPERATED_BANKS_AND_CASINOS",
              "COLLECTIBLES",
              "COLLECTION_AGENCY",
              "COLLEGES_AND_UNIVERSITIES",
              "COMMERCIAL_EQUIPMENT",
              "COMMERCIAL_FOOTWEAR",
              "COMMERCIAL_PHOTOGRAPHY",
              "COMMERCIAL_PHOTOGRAPHY_ART_AND_GRAPHICS",
              "COMMERCIAL_SPORTS_PROFESSIONA",
              "COMMODITIES_AND_FUTURES_EXCHANGE",
              "COMPUTER_AND_DATA_PROCESSING_SERVICES",
              "COMPUTER_HARDWARE_AND_SOFTWARE",
              "COMPUTER_MAINTENANCE_REPAIR_AND_SERVICES_NOT_ELSEWHERE_CLAS",
              "CONSTRUCTION",
              "CONSTRUCTION_MATERIALS_NOT_ELSEWHERE_CLASSIFIED",
              "CONSULTING_SERVICES",
              "CONSUMER_CREDIT_REPORTING_AGENCIES",
              "CONVALESCENT_HOMES",
              "COSMETIC_STORES",
              "COUNSELING_SERVICES_DEBT_MARRIAGE_PERSONAL",
              "COUNTERFEIT_CURRENCY_AND_STAMPS",
              "COUNTERFEIT_ITEMS",
              "COUNTRY_CLUBS",
              "COURIER_SERVICES",
              "COURIER_SERVICES_AIR_AND_GROUND_AND_FREIGHT_FORWARDERS",
              "COURT_COSTS_ALIMNY_CHILD_SUPT",
              "COURT_COSTS_INCLUDING_ALIMONY_AND_CHILD_SUPPORT_COURTS_OF_LAW",
              "CREDIT_CARDS",
              "CREDIT_UNION",
              "CULTURE_AND_RELIGION",
              "DAIRY_PRODUCTS_STORES",
              "DANCE_HALLS_STUDIOS_AND_SCHOOLS",
              "DECORATIVE",
              "DENTAL",
              "DENTISTS_AND_ORTHODONTISTS",
              "DEPARTMENT_STORES",
              "DESKTOP_PCS",
              "DEVICES",
              "DIECAST_TOYS_VEHICLES",
              "DIGITAL_GAMES",
              "DIGITAL_MEDIA_BOOKS_MOVIES_MUSIC",
              "DIRECT_MARKETING",
              "DIRECT_MARKETING_CATALOG_MERCHANT",
              "DIRECT_MARKETING_INBOUND_TELE",
              "DIRECT_MARKETING_OUTBOUND_TELE",
              "DIRECT_MARKETING_SUBSCRIPTION",
              "DISCOUNT_STORES",
              "DOOR_TO_DOOR_SALES",
              "DRAPERY_WINDOW_COVERING_AND_UPHOLSTERY",
              "DRINKING_PLACES",
              "DRUGSTORE",
              "DURABLE_GOODS",
              "ECOMMERCE_DEVELOPMENT",
              "ECOMMERCE_SERVICES",
              "EDUCATIONAL_AND_TEXTBOOKS",
              "ELECTRIC_RAZOR_STORES",
              "ELECTRICAL_AND_SMALL_APPLIANCE_REPAIR",
              "ELECTRICAL_CONTRACTORS",
              "ELECTRICAL_PARTS_AND_EQUIPMENT",
              "ELECTRONIC_CASH",
              "ELEMENTARY_AND_SECONDARY_SCHOOLS",
              "EMPLOYMENT",
              "ENTERTAINERS",
              "ENTERTAINMENT_AND_MEDIA",
              "EQUIP_TOOL_FURNITURE_AND_APPLIANCE_RENTAL_AND_LEASING",
              "ESCROW",
              "EVENT_AND_WEDDING_PLANNING",
              "EXERCISE_AND_FITNESS",
              "EXERCISE_EQUIPMENT",
              "EXTERMINATING_AND_DISINFECTING_SERVICES",
              "FABRICS_AND_SEWING",
              "FAMILY_CLOTHING_STORES",
              "FASHION_JEWELRY",
              "FAST_FOOD_RESTAURANTS",
              "FICTION_AND_NONFICTION",
              "FINANCE_COMPANY",
              "FINANCIAL_AND_INVESTMENT_ADVICE",
              "FINANCIAL_INSTITUTIONS_MERCHANDISE_AND_SERVICES",
              "FIREARM_ACCESSORIES",
              "FIREARMS_WEAPONS_AND_KNIVES",
              "FIREPLACE_AND_FIREPLACE_SCREENS",
              "FIREWORKS",
              "FISHING",
              "FLORISTS",
              "FLOWERS",
              "FOOD_DRINK_AND_NUTRITION",
              "FOOD_PRODUCTS",
              "FOOD_RETAIL_AND_SERVICE",
              "FRAGRANCES_AND_PERFUMES",
              "FREEZER_AND_LOCKER_MEAT_PROVISIONERS",
              "FUEL_DEALERS_FUEL_OIL_WOOD_AND_COAL",
              "FUEL_DEALERS_NON_AUTOMOTIVE",
              "FUNERAL_SERVICES_AND_CREMATORIES",
              "FURNISHING_AND_DECORATING",
              "FURNITURE",
              "FURRIERS_AND_FUR_SHOPS",
              "GADGETS_AND_OTHER_ELECTRONICS",
              "GAMBLING",
              "GAME_SOFTWARE",
              "GAMES",
              "GARDEN_SUPPLIES",
              "GENERAL",
              "GENERAL_CONTRACTORS",
              "GENERAL_GOVERNMENT",
              "GENERAL_SOFTWARE",
              "GENERAL_TELECOM",
              "GIFTS_AND_FLOWERS",
              "GLASS_PAINT_AND_WALLPAPER_STORES",
              "GLASSWARE_CRYSTAL_STORES",
              "GOVERNMENT",
              "GOVERNMENT_IDS_AND_LICENSES",
              "GOVERNMENT_LICENSED_ON_LINE_CASINOS_ON_LINE_GAMBLING",
              "GOVERNMENT_OWNED_LOTTERIES",
              "GOVERNMENT_SERVICES",
              "GRAPHIC_AND_COMMERCIAL_DESIGN",
              "GREETING_CARDS",
              "GROCERY_STORES_AND_SUPERMARKETS",
              "HARDWARE_AND_TOOLS",
              "HARDWARE_EQUIPMENT_AND_SUPPLIES",
              "HAZARDOUS_RESTRICTED_AND_PERISHABLE_ITEMS",
              "HEALTH_AND_BEAUTY_SPAS",
              "HEALTH_AND_NUTRITION",
              "HEALTH_AND_PERSONAL_CARE",
              "HEARING_AIDS_SALES_AND_SUPPLIES",
              "HEATING_PLUMBING_AC",
              "HIGH_RISK_MERCHANT",
              "HIRING_SERVICES",
              "HOBBIES_TOYS_AND_GAMES",
              "HOME_AND_GARDEN",
              "HOME_AUDIO",
              "HOME_DECOR",
              "HOME_ELECTRONICS",
              "HOSPITALS",
              "HOTELS_MOTELS_INNS_RESORTS",
              "HOUSEWARES",
              "HUMAN_PARTS_AND_REMAINS",
              "HUMOROUS_GIFTS_AND_NOVELTIES",
              "HUNTING",
              "IDS_LICENSES_AND_PASSPORTS",
              "ILLEGAL_DRUGS_AND_PARAPHERNALIA",
              "INDUSTRIAL",
              "INDUSTRIAL_AND_MANUFACTURING_SUPPLIES",
              "INSURANCE_AUTO_AND_HOME",
              "INSURANCE_DIRECT",
              "INSURANCE_LIFE_AND_ANNUITY",
              "INSURANCE_SALES_UNDERWRITING",
              "INSURANCE_UNDERWRITING_PREMIUMS",
              "INTERNET_AND_NETWORK_SERVICES",
              "INTRA_COMPANY_PURCHASES",
              "LABORATORIES_DENTAL_MEDICAL",
              "LANDSCAPING",
              "LANDSCAPING_AND_HORTICULTURAL_SERVICES",
              "LAUNDRY_CLEANING_SERVICES",
              "LEGAL",
              "LEGAL_SERVICES_AND_ATTORNEYS",
              "LOCAL_DELIVERY_SERVICE",
              "LOCKSMITH",
              "LODGING_AND_ACCOMMODATIONS",
              "LOTTERY_AND_CONTESTS",
              "LUGGAGE_AND_LEATHER_GOODS",
              "LUMBER_AND_BUILDING_MATERIALS",
              "MAGAZINES",
              "MAINTENANCE_AND_REPAIR_SERVICES",
              "MAKEUP_AND_COSMETICS",
              "MANUAL_CASH_DISBURSEMENTS",
              "MASSAGE_PARLORS",
              "MEDICAL",
              "MEDICAL_AND_PHARMACEUTICAL",
              "MEDICAL_CARE",
              "MEDICAL_EQUIPMENT_AND_SUPPLIES",
              "MEDICAL_SERVICES",
              "MEETING_PLANNERS",
              "MEMBERSHIP_CLUBS_AND_ORGANIZATIONS",
              "MEMBERSHIP_COUNTRY_CLUBS_GOLF",
              "MEMORABILIA",
              "MEN_AND_BOY_CLOTHING_AND_ACCESSORY_STORES",
              "MEN_CLOTHING",
              "MERCHANDISE",
              "METAPHYSICAL",
              "MILITARIA",
              "MILITARY_AND_CIVIL_SERVICE_UNIFORMS",
              "MISC",
              "MISCELLANEOUS_GENERAL_SERVICES",
              "MISCELLANEOUS_REPAIR_SHOPS_AND_RELATED_SERVICES",
              "MODEL_KITS",
              "MONEY_TRANSFER_MEMBER_FINANCIAL_INSTITUTION",
              "MONEY_TRANSFER_MERCHANT",
              "MOTION_PICTURE_THEATERS",
              "MOTOR_FREIGHT_CARRIERS_AND_TRUCKING",
              "MOTOR_HOME_AND_RECREATIONAL_VEHICLE_RENTAL",
              "MOTOR_HOMES_DEALERS",
              "MOTOR_VEHICLE_SUPPLIES_AND_NEW_PARTS",
              "MOTORCYCLE_DEALERS",
              "MOTORCYCLES",
              "MOVIE",
              "MOVIE_TICKETS",
              "MOVING_AND_STORAGE",
              "MULTI_LEVEL_MARKETING",
              "MUSIC_CDS_CASSETTES_AND_ALBUMS",
              "MUSIC_STORE_INSTRUMENTS_AND_SHEET_MUSIC",
              "NETWORKING",
              "NEW_AGE",
              "NEW_PARTS_AND_SUPPLIES_MOTOR_VEHICLE",
              "NEWS_DEALERS_AND_NEWSTANDS",
              "NON_DURABLE_GOODS",
              "NON_FICTION",
              "NON_PROFIT_POLITICAL_AND_RELIGION",
              "NONPROFIT",
              "NOVELTIES",
              "OEM_SOFTWARE",
              "OFFICE_SUPPLIES_AND_EQUIPMENT",
              "ONLINE_DATING",
              "ONLINE_GAMING",
              "ONLINE_GAMING_CURRENCY",
              "ONLINE_SERVICES",
              "OOUTBOUND_TELEMARKETING_MERCH",
              "OPHTHALMOLOGISTS_OPTOMETRIST",
              "OPTICIANS_AND_DISPENSING",
              "ORTHOPEDIC_GOODS_PROSTHETICS",
              "OSTEOPATHS",
              "OTHER",
              "PACKAGE_TOUR_OPERATORS",
              "PAINTBALL",
              "PAINTS_VARNISHES_AND_SUPPLIES",
              "PARKING_LOTS_AND_GARAGES",
              "PARTS_AND_ACCESSORIES",
              "PAWN_SHOPS",
              "PAYCHECK_LENDER_OR_CASH_ADVANCE",
              "PERIPHERALS",
              "PERSONALIZED_GIFTS",
              "PET_SHOPS_PET_FOOD_AND_SUPPLIES",
              "PETROLEUM_AND_PETROLEUM_PRODUCTS",
              "PETS_AND_ANIMALS",
              "PHOTOFINISHING_LABORATORIES_PHOTO_DEVELOPING",
              "PHOTOGRAPHIC_STUDIOS_PORTRAITS",
              "PHOTOGRAPHY",
              "PHYSICAL_GOOD",
              "PICTURE_VIDEO_PRODUCTION",
              "PIECE_GOODS_NOTIONS_AND_OTHER_DRY_GOODS",
              "PLANTS_AND_SEEDS",
              "PLUMBING_AND_HEATING_EQUIPMENTS_AND_SUPPLIES",
              "POLICE_RELATED_ITEMS",
              "POLITICAL_ORGANIZATIONS",
              "POSTAL_SERVICES_GOVERNMENT_ONLY",
              "POSTERS",
              "PREPAID_AND_STORED_VALUE_CARDS",
              "PRESCRIPTION_DRUGS",
              "PROMOTIONAL_ITEMS",
              "PUBLIC_WAREHOUSING_AND_STORAGE",
              "PUBLISHING_AND_PRINTING",
              "PUBLISHING_SERVICES",
              "RADAR_DECTORS",
              "RADIO_TELEVISION_AND_STEREO_REPAIR",
              "REAL_ESTATE",
              "REAL_ESTATE_AGENT",
              "REAL_ESTATE_AGENTS_AND_MANAGERS_RENTALS",
              "RELIGION_AND_SPIRITUALITY_FOR_PROFIT",
              "RELIGIOUS",
              "RELIGIOUS_ORGANIZATIONS",
              "REMITTANCE",
              "RENTAL_PROPERTY_MANAGEMENT",
              "RESIDENTIAL",
              "RETAIL",
              "RETAIL_FINE_JEWELRY_AND_WATCHES",
              "REUPHOLSTERY_AND_FURNITURE_REPAIR",
              "RINGS",
              "ROOFING_SIDING_SHEET_METAL",
              "RUGS_AND_CARPETS",
              "SCHOOLS_AND_COLLEGES",
              "SCIENCE_FICTION",
              "SCRAPBOOKING",
              "SCULPTURES",
              "SECURITIES_BROKERS_AND_DEALERS",
              "SECURITY_AND_SURVEILLANCE",
              "SECURITY_AND_SURVEILLANCE_EQUIPMENT",
              "SECURITY_BROKERS_AND_DEALERS",
              "SEMINARS",
              "SERVICE_STATIONS",
              "SERVICES",
              "SEWING_NEEDLEWORK_FABRIC_AND_PIECE_GOODS_STORES",
              "SHIPPING_AND_PACKING",
              "SHOE_REPAIR_HAT_CLEANING",
              "SHOE_STORES",
              "SHOES",
              "SNOWMOBILE_DEALERS",
              "SOFTWARE",
              "SPECIALTY_AND_MISC",
              "SPECIALTY_CLEANING_POLISHING_AND_SANITATION_PREPARATIONS",
              "SPECIALTY_OR_RARE_PETS",
              "SPORT_GAMES_AND_TOYS",
              "SPORTING_AND_RECREATIONAL_CAMPS",
              "SPORTING_GOODS",
              "SPORTS_AND_OUTDOORS",
              "SPORTS_AND_RECREATION",
              "STAMP_AND_COIN",
              "STATIONARY_PRINTING_AND_WRITING_PAPER",
              "STENOGRAPHIC_AND_SECRETARIAL_SUPPORT_SERVICES",
              "STOCKS_BONDS_SECURITIES_AND_RELATED_CERTIFICATES",
              "STORED_VALUE_CARDS",
              "SUPPLIES",
              "SUPPLIES_AND_TOYS",
              "SURVEILLANCE_EQUIPMENT",
              "SWIMMING_POOLS_AND_SPAS",
              "SWIMMING_POOLS_SALES_SUPPLIES_SERVICES",
              "TAILORS_AND_ALTERATIONS",
              "TAX_PAYMENTS",
              "TAX_PAYMENTS_GOVERNMENT_AGENCIES",
              "TAXICABS_AND_LIMOUSINES",
              "TELECOMMUNICATION_SERVICES",
              "TELEPHONE_CARDS",
              "TELEPHONE_EQUIPMENT",
              "TELEPHONE_SERVICES",
              "THEATER",
              "TIRE_RETREADING_AND_REPAIR",
              "TOLL_OR_BRIDGE_FEES",
              "TOOLS_AND_EQUIPMENT",
              "TOURIST_ATTRACTIONS_AND_EXHIBITS",
              "TOWING_SERVICE",
              "TOYS_AND_GAMES",
              "TRADE_AND_VOCATIONAL_SCHOOLS",
              "TRADEMARK_INFRINGEMENT",
              "TRAILER_PARKS_AND_CAMPGROUNDS",
              "TRAINING_SERVICES",
              "TRANSPORTATION_SERVICES",
              "TRAVEL",
              "TRUCK_AND_UTILITY_TRAILER_RENTALS",
              "TRUCK_STOP",
              "TYPESETTING_PLATE_MAKING_AND_RELATED_SERVICES",
              "USED_MERCHANDISE_AND_SECONDHAND_STORES",
              "USED_PARTS_MOTOR_VEHICLE",
              "UTILITIES",
              "UTILITIES_ELECTRIC_GAS_WATER_SANITARY",
              "VARIETY_STORES",
              "VEHICLE_SALES",
              "VEHICLE_SERVICE_AND_ACCESSORIES",
              "VIDEO_EQUIPMENT",
              "VIDEO_GAME_ARCADES_ESTABLISH",
              "VIDEO_GAMES_AND_SYSTEMS",
              "VIDEO_TAPE_RENTAL_STORES",
              "VINTAGE_AND_COLLECTIBLE_VEHICLES",
              "VINTAGE_AND_COLLECTIBLES",
              "VITAMINS_AND_SUPPLEMENTS",
              "VOCATIONAL_AND_TRADE_SCHOOLS",
              "WATCH_CLOCK_AND_JEWELRY_REPAIR",
              "WEB_HOSTING_AND_DESIGN",
              "WELDING_REPAIR",
              "WHOLESALE_CLUBS",
              "WHOLESALE_FLORIST_SUPPLIERS",
              "WHOLESALE_PRESCRIPTION_DRUGS",
              "WILDLIFE_PRODUCTS",
              "WIRE_TRANSFER",
              "WIRE_TRANSFER_AND_MONEY_ORDER",
              "WOMEN_ACCESSORY_SPECIALITY",
              "WOMEN_CLOTHING"
            ]
          }
        }
      },
      "description": {
        "required": ["op"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "description": "The remove operation does not require a value",
            "enum": ["add", "remove", "replace"]
          },
          "value": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "The product description"
          }
        }
      },
      "Model54": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "imageUrl": {
            "$ref": "#/components/schemas/imageUrl"
          },
          "homeUrl": {
            "$ref": "#/components/schemas/homeUrl"
          },
          "category": {
            "$ref": "#/components/schemas/category"
          },
          "description": {
            "$ref": "#/components/schemas/description"
          }
        }
      },
      "startTime": {
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["replace"]
          },
          "value": {
            "type": "string",
            "description": "The date and time when the subscription started",
            "format": "date"
          }
        }
      },
      "customId": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["add", "replace"]
          },
          "value": {
            "maxLength": 127,
            "minLength": 1,
            "pattern": "^[ -~]+",
            "type": "string",
            "description": "The custom id for the subscription. Can be invoice id"
          }
        }
      },
      "planPaymentPreferencesAutoBillOutstanding": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["replace"]
          },
          "value": {
            "type": "boolean",
            "description": "Indicates whether to automatically bill the outstanding amount in the next billing cycle"
          }
        }
      },
      "value": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "The fixed amount to charge for the subscription. The changes to fixed amount are applicable to both existing and future subscriptions. For existing subscriptions, payments within 10 days of price change are not affected"
      },
      "planBillingCyclesPricingSchemeFixedPrice": {
        "required": ["sequence", "value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["add", "replace"]
          },
          "value": {
            "$ref": "#/components/schemas/value"
          },
          "sequence": {
            "type": "integer",
            "description": "The order of the cycle to update"
          }
        }
      },
      "planBillingCyclesTotalCycles": {
        "required": ["sequence", "value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["replace"]
          },
          "value": {
            "type": "integer",
            "description": "The number of times this billing cycle gets executed"
          },
          "sequence": {
            "type": "integer",
            "description": "The order of the cycle to update"
          }
        }
      },
      "Model55": {
        "required": ["currencyCode", "value"],
        "type": "object",
        "properties": {
          "value": {
            "minimum": 0,
            "type": "integer",
            "description": "Integer amount value (100 is 1.00)",
            "example": 100
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code (ISO-4217)",
            "example": "EUR",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BOV",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHE",
              "CHF",
              "CHW",
              "CLF",
              "CLP",
              "CNY",
              "COP",
              "COU",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MXV",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "USN",
              "UYI",
              "UYU",
              "UYW",
              "UZS",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ]
          }
        },
        "description": "The pricing amount for the tier"
      },
      "Model56": {
        "required": ["amount", "startingQuantity"],
        "type": "object",
        "properties": {
          "startingQuantity": {
            "type": "integer",
            "description": "The starting quantity for the tier"
          },
          "endingQuantity": {
            "type": "integer",
            "description": "The ending quantity for the tier. Optional for the last tier"
          },
          "amount": {
            "$ref": "#/components/schemas/Model55"
          }
        }
      },
      "Model57": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/Model56"
        }
      },
      "planBillingCyclesPricingSchemeTiers": {
        "required": ["sequence"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["replace"]
          },
          "value": {
            "$ref": "#/components/schemas/Model57"
          },
          "sequence": {
            "type": "integer",
            "description": "The order of the cycle to update"
          }
        }
      },
      "planTaxesPercentage": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["add", "replace"]
          },
          "value": {
            "type": "integer",
            "description": "The tax percentage on the billing amount"
          }
        }
      },
      "planTaxesInclusive": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["add", "replace"]
          },
          "value": {
            "type": "boolean",
            "description": "Indicates whether the tax was already included in the billing amount"
          }
        }
      },
      "subscriberShippingAddress": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["add", "replace"]
          },
          "value": {
            "$ref": "#/components/schemas/Model12"
          }
        }
      },
      "billingInfoOutstandingBalance": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["replace"]
          },
          "value": {
            "$ref": "#/components/schemas/outstandingBalance"
          }
        }
      },
      "Model58": {
        "required": ["value"],
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "enum": ["add", "replace"]
          },
          "value": {
            "$ref": "#/components/schemas/Model19"
          }
        }
      },
      "Model59": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID"
          },
          "startTime": {
            "$ref": "#/components/schemas/startTime"
          },
          "customId": {
            "$ref": "#/components/schemas/customId"
          },
          "planPaymentPreferencesAutoBillOutstanding": {
            "$ref": "#/components/schemas/planPaymentPreferencesAutoBillOutstanding"
          },
          "planBillingCyclesPricingSchemeFixedPrice": {
            "$ref": "#/components/schemas/planBillingCyclesPricingSchemeFixedPrice"
          },
          "planBillingCyclesTotalCycles": {
            "$ref": "#/components/schemas/planBillingCyclesTotalCycles"
          },
          "planBillingCyclesPricingSchemeTiers": {
            "$ref": "#/components/schemas/planBillingCyclesPricingSchemeTiers"
          },
          "planTaxesPercentage": {
            "$ref": "#/components/schemas/planTaxesPercentage"
          },
          "planTaxesInclusive": {
            "$ref": "#/components/schemas/planTaxesInclusive"
          },
          "subscriberShippingAddress": {
            "$ref": "#/components/schemas/subscriberShippingAddress"
          },
          "billingInfoOutstandingBalance": {
            "$ref": "#/components/schemas/billingInfoOutstandingBalance"
          },
          "shippingAmount": {
            "$ref": "#/components/schemas/Model58"
          }
        }
      },
      "Model60": {
        "required": ["percentage"],
        "type": "object",
        "properties": {
          "percentage": {
            "type": "string",
            "description": "The tax percentage on the billing amount."
          }
        }
      },
      "Model61": {
        "required": ["paymentProviderContract"],
        "type": "object",
        "properties": {
          "paymentProviderContract": {
            "type": "string",
            "description": "PayPal Payment Provider Contract UUID",
            "x-format": {
              "guid": true
            }
          },
          "description": {
            "maxLength": 127,
            "type": "string",
            "description": "The detailed description of the plan."
          },
          "paymentPreferences": {
            "$ref": "#/components/schemas/paymentPreferences"
          },
          "taxes": {
            "$ref": "#/components/schemas/Model60"
          }
        }
      },
      "updateTransaction": {
        "type": "object",
        "properties": {
          "intent": {
            "type": "string",
            "description": "Intent of this transaction",
            "enum": ["AUTHORIZE", "CAPTURE"]
          },
          "payer": {
            "$ref": "#/components/schemas/customer"
          },
          "merchantReference": {
            "type": "string",
            "description": "The API caller-provided external ID. Used to reconcile client transactions with PayPal transactions. Appears in transaction and settlement reports but is not visible to the payer.",
            "maxLength": 127
          },
          "description": {
            "type": "string",
            "description": "Purchase description",
            "maxLength": 127
          },
          "shipping": {
            "$ref": "#/components/schemas/shipping"
          },
          "dynamicDescriptor": {
            "type": "string",
            "description": "If an Order is paid using the \"PayPal Wallet\" the statement descriptor will appear in following format on the payer card statement:  PAYPAL_prefix+(space)+merchant_descriptor+(space)+dynamicDescriptor.  The PAYPAL prefix uses 8 characters. Only the first 22 characters will be displayed in the statement. <br />  For example, <br/>  * The PayPal prefix toggle is PAYPAL <br/>  * The merchant descriptor in the profile is Janes Gift <br/>  * The soft descriptor is 800-123-1234 </br> Then, the statement descriptor on the card is PAYPAL * Janes Gift 80.",
            "maxLength": 22
          },
          "amount": {
            "$ref": "#/components/schemas/Model22"
          },
          "detailedAmount": {
            "$ref": "#/components/schemas/detailedAmount"
          }
        }
      }
    }
  }
}
