{
  "openapi": "3.2.0",
  "info": {
    "title": "Partner Referrals",
    "description": "<blockquote><strong>Deprecation notice:</strong> This integration method is deprecated. PayPal continues to support existing merchants using this method, but be advised that new features and enhancements will not be applied to these integrations. For details, see <a href=\"/docs/multiparty/seller-onboarding/\">Onboard Sellers</a>.</blockquote> Partners can use the Partner Referrals API to add PayPal seller accounts using the <a href=\"/docs/platforms/seller-onboarding/before-payment/\">before payment</a> onboarding model. With this API, you collect seller data and pass it to the account creation and setup forms, reducing the burden on sellers during the signup and setup process.",
    "version": "1.5"
  },
  "paths": {
    "/v1/customer/partner-referrals": {
      "post": {
        "summary": "Create partner referral",
        "description": "Creates a partner referral that is shared by the API caller. The referrals contains the client's personal, business, and financial data.",
        "operationId": "partner-referrals.create",
        "responses": {
          "201": {
            "description": "A successful request returns the HTTP `201 Created` status code and a JSON response body that contains a [HATEOAS link](/docs/api/reference/api-responses/#hateoas-links) to show the referral data and an `action_url` to which you redirect the customer in a browser to complete the signup process. The `partner_referral_id` token is appended to the URL.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/create_referral_data_response"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/referral_data"
              }
            }
          },
          "required": true
        },
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner-referrals/readwrite"
            ]
          }
        ],
        "tags": [
          "partner-referrals"
        ]
      }
    },
    "/v1/customer/partner-referrals/{partner_referral_id}": {
      "get": {
        "summary": "Show referral data",
        "description": "Shows details for referral data, by ID, that was shared by the API caller.",
        "operationId": "partner-referrals.read",
        "responses": {
          "200": {
            "description": "A successful request returns the HTTP `200 OK` status code and a JSON response body that shows referral data.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/referral_data_response"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/partner_referral_id"
          }
        ],
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner-referrals/readwrite"
            ]
          },
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner-referrals"
            ]
          }
        ],
        "tags": [
          "partner-referrals"
        ]
      }
    },
    "/v1/customer/partners/{partner_id}/merchant-integrations": {
      "get": {
        "summary": "List seller tracking information",
        "description": "Lists sellers that a partner onboarded, by partner ID.",
        "operationId": "merchant-integration.find",
        "responses": {
          "200": {
            "description": "A successful request returns the HTTP `200 OK` status code and a JSON response body that lists sellers. For each seller, the response shows the seller ID (`merchant_id`), the tracking ID, and [HATEOAS links](/docs/api/reference/api-responses/#hateoas-links) to show the seller-partner information."
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/partner_id"
          },
          {
            "$ref": "#/components/parameters/tracking_id"
          }
        ],
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner"
            ]
          }
        ],
        "tags": [
          "merchant-integration"
        ]
      }
    },
    "/v1/customer/partners/{partner_id}/merchant-integrations/{merchant_id}": {
      "get": {
        "summary": "Show seller status",
        "description": "Shows status information for sellers that the partner on-boards, by partner ID.",
        "operationId": "merchant-integration.status",
        "responses": {
          "200": {
            "description": "A successful request returns the HTTP `200 OK` status code and a JSON response body that shows status details.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/merchant-integration"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/partner_id"
          },
          {
            "$ref": "#/components/parameters/merchant_id"
          },
          {
            "$ref": "#/components/parameters/fields"
          }
        ],
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner"
            ]
          }
        ],
        "tags": [
          "merchant-integration"
        ]
      }
    },
    "/v1/customer/partners/{partner_id}/merchant-integrations/credentials": {
      "get": {
        "summary": "Fetch merchant credentials",
        "description": "Fetches merchant credentials for a merchant onboarded through downloadable cart flow.",
        "operationId": "merchant-integration.credentials",
        "responses": {
          "200": {
            "description": "A successful request returns the HTTP `200 OK` status code and a JSON response body that shows merchant credentials.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/merchant-integration.credentials"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/partner_id"
          }
        ],
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner"
            ]
          }
        ],
        "tags": [
          "merchant-integration"
        ]
      }
    },
    "/v1/customer/partners/{id}": {
      "get": {
        "summary": "Show partner information - agreements and preferences",
        "description": "Shows partner information - agreements and preferences - by partner ID.",
        "operationId": "partner.read",
        "responses": {
          "200": {
            "description": "A successful request returns the HTTP `200 OK` status code and a JSON response body that shows partner information.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/partner"
                }
              }
            }
          },
          "401": {
            "description": "Authorization failed due to insufficient permissions.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource does not exist.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error has occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/id"
          },
          {
            "$ref": "#/components/parameters/country_code"
          },
          {
            "$ref": "#/components/parameters/product"
          },
          {
            "$ref": "#/components/parameters/content_type"
          }
        ],
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner"
            ]
          }
        ],
        "tags": [
          "partner"
        ]
      },
      "post": {
        "summary": "Create partner information - agreements and preferences",
        "description": "Creates partner information - agreements and preferences - for the given partner.",
        "operationId": "partner.create",
        "responses": {
          "201": {
            "description": "A successful request returns the HTTP `201 Created` status code and a JSON response body that contains an array of [HATEOAS links](/docs/api/reference/api-responses/#hateoas-links) that show the partner info.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/partner"
                }
              }
            }
          },
          "400": {
            "description": "Request is not well-formed, syntactically incorrect, or violates schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "401": {
            "description": "Authorization failed due to insufficient permissions.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error has occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/id"
          },
          {
            "$ref": "#/components/parameters/content_type"
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/partner"
        },
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner"
            ]
          }
        ],
        "tags": [
          "partner"
        ]
      },
      "put": {
        "summary": "Update partner information - agreements and preferences",
        "description": "Updates partner information - agreements and preferences - for the given partner.",
        "operationId": "partner.update",
        "responses": {
          "204": {
            "description": "The server has successfully executed the method, but there is no entity body to return."
          },
          "400": {
            "description": "Request is not well-formed, syntactically incorrect, or violates schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "401": {
            "description": "Authorization failed due to insufficient permissions.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource does not exist.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error has occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          },
          "default": {
            "description": "The error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error-2"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/id"
          },
          {
            "$ref": "#/components/parameters/content_type"
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/partner"
        },
        "security": [
          {
            "Oauth2": [
              "https://uri.paypal.com/services/customer/partner"
            ]
          }
        ],
        "tags": [
          "partner"
        ]
      }
    }
  },
  "tags": [
    {
      "name": "merchant-integration",
      "description": "Enables you to get information about a seller-partner integration."
    },
    {
      "name": "partner-referrals",
      "description": "Enables you to create and get information about shared customer data."
    },
    {
      "name": "partner-referral-link",
      "description": "Links partner-referral data with a PayPal account."
    },
    {
      "name": "cancel-onboarding",
      "description": "Enables you to cancel an in-progress seller onboarding."
    },
    {
      "name": "partner",
      "description": "Enables you to create, update and read partner agreements and preferences."
    },
    {
      "name": "merchant-management",
      "description": "APIs for merchant management."
    }
  ],
  "externalDocs": {
    "url": "https://developer.paypal.com/docs/platforms/seller-onboarding/before-payment/"
  },
  "servers": [
    {
      "url": "https://api-m.sandbox.paypal.com",
      "description": "PayPal API Sandbox"
    }
  ],
  "components": {
    "requestBodies": {
      "partner": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/partner"
            }
          }
        },
        "required": true
      }
    },
    "securitySchemes": {
      "Oauth2": {
        "type": "oauth2",
        "description": "Oauth 2.0 authentication",
        "flows": {
          "clientCredentials": {
            "tokenUrl": "/api/oauth-proxy",
            "scopes": {
              "https://uri.paypal.com/services/customer/partner": "Manage seller resources.",
              "https://uri.paypal.com/services/customer/partner-referrals/readwrite": "Manage external referral data with PayPal",
              "https://uri.paypal.com/services/customer/partner-referrals": "Manage referral data shared by Partner with PayPal. To be used by only internal apps"
            }
          }
        }
      }
    },
    "responses": {
      "default": {
        "description": "The default response.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/error_default"
            }
          }
        }
      }
    },
    "schemas": {
      "account_capability": {
        "type": "object",
        "title": "Account Capability",
        "description": "Capability associated with the account.",
        "properties": {
          "name": {
            "description": "Name of the capability.",
            "$ref": "#/components/schemas/account_capability_names"
          },
          "status": {
            "description": "The status of the capability.",
            "$ref": "#/components/schemas/account_capability_status"
          },
          "limits": {
            "$ref": "#/components/schemas/capability_limit_list"
          }
        }
      },
      "account_capability_list": {
        "type": "array",
        "description": "An array of capabilities associated with the products integrated between seller and partner.",
        "items": {
          "$ref": "#/components/schemas/account_capability"
        }
      },
      "account_capability_names": {
        "type": "string",
        "title": "Capability Name",
        "description": "The name of capability.",
        "minLength": 1,
        "maxLength": 255,
        "pattern": "^[0-9A-Z_]+$",
        "enum": [
          "APPLE_PAY",
          "SEND_INVOICE",
          "ACCEPT_DONATIONS",
          "ACCEPT_PYMTS_VIA_ALIPAY",
          "ACCEPT_PYMTS_VIA_BANCONTACT",
          "ACCEPT_PYMTS_VIA_BLIK",
          "ACCEPT_PYMTS_VIA_EPS",
          "ACCEPT_PYMTS_VIA_IDEAL",
          "ACCEPT_PYMTS_VIA_MB_WAY",
          "ACCEPT_PYMTS_VIA_MULTIBANCO",
          "ACCEPT_PYMTS_VIA_PRZELEWY24",
          "ACCEPT_PYMTS_VIA_SATISPAY",
          "ACCEPT_PYMTS_VIA_TRUSTLY",
          "ACCEPT_PYMTS_VIA_WECHAT_PAY",
          "GOOGLE_PAY",
          "CARD_PROCESSING_VIRTUAL_TERMINAL",
          "AMEX_OPTBLUE",
          "CUSTOM_CARD_PROCESSING",
          "FRAUD_TOOL_ACCESS",
          "DEBIT_CARD_SWITCH",
          "COMMERCIAL_ENTITY",
          "GUEST_CHECKOUT",
          "PAYPAL_CHECKOUT",
          "SUBSCRIPTIONS",
          "VENMO_PAY_PROCESSING",
          "PAYPAL_CHECKOUT_ALTERNATIVE_PAYMENT_METHODS",
          "QR_CODE",
          "INSTALLMENTS",
          "PAYPAL_CHECKOUT_PAY_WITH_PAYPAL_CREDIT",
          "PAYPAL_WALLET_VAULTING_ADVANCED",
          "WITHDRAW_FUNDS_TO_DOMESTIC_BANK",
          "CHARITY",
          "SMARTID_TOPUP"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "APPLE_PAY"
            ],
            "description": "Enables Apple Pay capability. Supported only when PAYMENT_METHODS or PPCP, PAYMENT_METHODS is requested."
          },
          {
            "type": "string",
            "enum": [
              "SEND_INVOICE"
            ],
            "description": "Enables users to request money by sending an invoice to another customer."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_DONATIONS"
            ],
            "description": "A tailored donations solution for individuals, businesses, and non-profit customers to accept one-time and recurring donations via a Donate button, shareable link, or QR code."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_ALIPAY"
            ],
            "description": "Alipay is a China-based payment method that allows customers to complete transactions online using their Alipay wallet."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_BANCONTACT"
            ],
            "description": "Bancontact is a Belgium-based payment method that allows customers to complete transactions online using their bank credentials."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_BLIK"
            ],
            "description": "Blik is a Poland-based payment method that allows customers to complete transactions online using their bank credentials."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_EPS"
            ],
            "description": "EPS is an Austria-based payment method that allows customers to complete transactions online using their bank credentials."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_IDEAL"
            ],
            "description": "iDEAL is a Netherlands-based payment method that allows customers to complete transactions online using their bank credentials."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_MB_WAY"
            ],
            "description": "MB Way is a Portugal-based payment method that allows customers to complete transactions online using their MB Way wallet."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_MULTIBANCO"
            ],
            "description": "Multibanco is a Portugal-based payment method that allows customers to complete transactions online using their bank credentials or pay in cash at a bank branch."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_PRZELEWY24"
            ],
            "description": "Przelewy24 is a Poland-based payment method that allows customers to complete transactions online."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_SATISPAY"
            ],
            "description": "Satispay is an Italy-based payment method that allows customers to complete transactions online using their bank credentials."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_TRUSTLY"
            ],
            "description": "Trustly is a payment method that allows customers from (Austria (AT), Germany (DE), Denmark (DK), Estonia (EE), Spain (ES), Finland (FI), Great Britain (GB), Lithuania (LT), Latvia (LV), Netherlands (NL), Norway (NO), Sweden (SE)) to complete transactions online using their bank credentials."
          },
          {
            "type": "string",
            "enum": [
              "ACCEPT_PYMTS_VIA_WECHAT_PAY"
            ],
            "description": "WeChat Pay is a China-based payment method that allows customers to complete transactions online using their WeChat Pay wallet."
          },
          {
            "type": "string",
            "enum": [
              "GOOGLE_PAY"
            ],
            "description": "Receive unbranded card payments - Debit or Credit through Google Pay."
          },
          {
            "type": "string",
            "enum": [
              "CARD_PROCESSING_VIRTUAL_TERMINAL"
            ],
            "description": "Enable merchant to receive direct credit card payment via phone/fax/mail. Merchant initiates transaction enters card into virtual terminal"
          },
          {
            "type": "string",
            "enum": [
              "AMEX_OPTBLUE"
            ],
            "description": "Enable merchant to accept AMEX. They can receive marketing communication from American express."
          },
          {
            "type": "string",
            "enum": [
              "CUSTOM_CARD_PROCESSING"
            ],
            "description": "Receive direct credit card payment (card-not-present transactions)"
          },
          {
            "type": "string",
            "enum": [
              "FRAUD_TOOL_ACCESS"
            ],
            "description": "Access Fraud Protection tool (powered by Simility)"
          },
          {
            "type": "string",
            "enum": [
              "DEBIT_CARD_SWITCH"
            ],
            "description": "Receive debit card payment"
          },
          {
            "type": "string",
            "enum": [
              "COMMERCIAL_ENTITY"
            ],
            "description": "Merchant is considered as a commercial entity and hence needs to comply with the requirements and use the benefits, such as CE agreement and treatment on the credit card descriptor"
          },
          {
            "type": "string",
            "enum": [
              "GUEST_CHECKOUT"
            ],
            "description": "Merchant checkout feature that provides businesses the ability to accept payments from consumers without a PayPal account using a credit or debit card through PayPal."
          },
          {
            "type": "string",
            "enum": [
              "PAYPAL_CHECKOUT"
            ],
            "description": "Receive credit card payment via inline /guest checkout"
          },
          {
            "type": "string",
            "enum": [
              "SUBSCRIPTIONS"
            ],
            "description": "Allow merchants to create stable, predictable income by offering subscription plans."
          },
          {
            "type": "string",
            "enum": [
              "VENMO_PAY_PROCESSING"
            ],
            "description": "Receive Venmo pay"
          },
          {
            "type": "string",
            "enum": [
              "PAYPAL_CHECKOUT_ALTERNATIVE_PAYMENT_METHODS"
            ],
            "description": "Receive local payment methods specific to a buyer region (eg Giropay, Ideal, Sofort)"
          },
          {
            "type": "string",
            "enum": [
              "QR_CODE"
            ],
            "description": "Provide the Integrated QRC solution that is intended to be integrated with Partners who already provide payment acceptance via APMs directly to merchants."
          },
          {
            "type": "string",
            "enum": [
              "INSTALLMENTS"
            ],
            "description": "Merchants can offer equal payment installment financing options as part of the revolving account."
          },
          {
            "type": "string",
            "enum": [
              "PAYPAL_CHECKOUT_PAY_WITH_PAYPAL_CREDIT"
            ],
            "description": "PayPal Checkout - Pay with PayPal Credit."
          },
          {
            "type": "string",
            "enum": [
              "PAYPAL_WALLET_VAULTING_ADVANCED"
            ],
            "description": "Enables the capability to Save payment methods. Supported only when one of PPCP and ADVANCED_VAULTING or EXPRESS_CHECKOUT and ADVANCED_VAULTING combination in the products array is requested."
          },
          {
            "type": "string",
            "enum": [
              "WITHDRAW_FUNDS_TO_DOMESTIC_BANK"
            ],
            "description": "Withdraw money from their PayPal balance to a linked domestic bank account."
          },
          {
            "type": "string",
            "enum": [
              "CHARITY"
            ],
            "description": "Helps collect charity specific fields (eg: Business Registration Number and Country of primary operation) of the user and is applicable only for Merchants with 8398 MCC code."
          },
          {
            "type": "string",
            "enum": [
              "SMARTID_TOPUP"
            ],
            "description": "Enables users to set PayPal as a recipient for transfers from their bank and top up their PayPal balance."
          }
        ]
      },
      "account_capability_names_list": {
        "type": "array",
        "description": "An array of the capability names bundled in the parent product.",
        "items": {
          "$ref": "#/components/schemas/account_capability_names"
        }
      },
      "account_capability_status": {
        "title": "Capability Status",
        "description": "Status of the account capability.",
        "type": "string",
        "readOnly": true,
        "pattern": "^[A-Z_]+$",
        "minLength": 1,
        "maxLength": 64,
        "enum": [
          "ACTIVE",
          "SUSPENDED",
          "REVOKED",
          "APPROVED",
          "NEED_DATA",
          "DENY",
          "IN_REVIEW",
          "INACTIVE",
          "PENDING"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "ACTIVE"
            ],
            "description": "The capability is enabled for the account and can be used."
          },
          {
            "type": "string",
            "enum": [
              "SUSPENDED"
            ],
            "description": "The capability can no longer be used, but there are remediation steps to regain access to the corresponding functionality."
          },
          {
            "type": "string",
            "enum": [
              "REVOKED"
            ],
            "description": "The capability can no longer be used and there are no remediation steps available to regain the functionality."
          },
          {
            "type": "string",
            "enum": [
              "APPROVED"
            ],
            "description": "The capability is approved and could be enabled. This capability can not be used currently."
          },
          {
            "type": "string",
            "enum": [
              "NEED_DATA"
            ],
            "description": "Need details or documents required to enable this capability."
          },
          {
            "type": "string",
            "enum": [
              "DENY"
            ],
            "description": "The request to enable this capability is Denied by Policy Systems."
          },
          {
            "type": "string",
            "enum": [
              "IN_REVIEW"
            ],
            "description": "The capability request is in review by policy system. This capability can not be used currently."
          },
          {
            "type": "string",
            "enum": [
              "INACTIVE"
            ],
            "description": "The capability can no longer be used and to enable this capability, please request."
          },
          {
            "type": "string",
            "enum": [
              "PENDING"
            ],
            "description": "The capability is in a pending state waiting for decision from policy systems."
          }
        ]
      },
      "account_identifier": {
        "type": "object",
        "title": "Account Identifier",
        "description": "The PayPal account ID of the partner.",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of ID for the account.",
            "enum": [
              "PAYER_ID"
            ]
          },
          "value": {
            "type": "string",
            "description": "The ID of the account."
          }
        },
        "required": [
          "type",
          "value"
        ]
      },
      "account_owner_relationship": {
        "type": "object",
        "title": "Seller Account Relationship",
        "additionalProperties": false,
        "description": "The familial relationship of the seller account owner.",
        "properties": {
          "name": {
            "description": "The name of the familial relation.",
            "$ref": "#/components/schemas/name"
          },
          "relation": {
            "type": "string",
            "description": "The type of familial relationship.",
            "enum": [
              "MOTHER"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "MOTHER"
                ],
                "description": "Maternal relationship."
              }
            ]
          },
          "country_code_of_nationality": {
            "description": "The nationality of the familial relation.",
            "$ref": "#/components/schemas/country_code"
          }
        },
        "required": [
          "name",
          "relation",
          "country_code_of_nationality"
        ]
      },
      "account_owner_relationship_list": {
        "type": "array",
        "description": "An array of familial relationships that are attached to a seller.",
        "items": {
          "$ref": "#/components/schemas/account_owner_relationship"
        }
      },
      "address": {
        "type": "object",
        "title": "Simple Postal Address (Coarse-Grained)",
        "description": "A simple postal address with coarse-grained fields. Do not use for an international address. Use for backward compatibility only. Does not contain phone.",
        "properties": {
          "line1": {
            "type": "string",
            "description": "The first line of the address. For example, number or street."
          },
          "line2": {
            "type": "string",
            "description": "The second line of the address. For example, suite or apartment number."
          },
          "city": {
            "type": "string",
            "description": "The city name."
          },
          "state": {
            "type": "string",
            "description": "The [code](/docs/integration/direct/rest/state-codes/) for a US state or the equivalent for other countries. Required for transactions if the address is in one of these countries: [Argentina](/docs/integration/direct/rest/state-codes/#argentina), [Brazil](/docs/integration/direct/rest/state-codes/#brazil), [Canada](/docs/integration/direct/rest/state-codes/#canada), [China](/docs/integration/direct/rest/state-codes/#china), [India](/docs/integration/direct/rest/state-codes/#india), [Italy](/docs/integration/direct/rest/state-codes/#italy), [Japan](/docs/integration/direct/rest/state-codes/#japan), [Mexico](/docs/integration/direct/rest/state-codes/#mexico), [Thailand](/docs/integration/direct/rest/state-codes/#thailand), or [United States](/docs/integration/direct/rest/state-codes/#usa). Maximum length is 40 single-byte characters."
          },
          "country_code": {
            "$ref": "#/components/schemas/country_code"
          },
          "postal_code": {
            "type": "string",
            "description": "The postal code, which is the zip code or equivalent. Typically required for countries with a postal code or an equivalent. See [postal code](https://en.wikipedia.org/wiki/Postal_code)."
          }
        },
        "required": [
          "line1",
          "city",
          "country_code"
        ]
      },
      "agreement_types": {
        "description": "A partner-accepted agreement.",
        "enum": [
          "VENDOR_SECURITY_POLICY_AGREEMENT"
        ]
      },
      "agreement_types_list": {
        "type": "array",
        "description": "An array of partner-accepted agreements.",
        "items": {
          "$ref": "#/components/schemas/agreement_types"
        }
      },
      "bank_details": {
        "type": "object",
        "title": "Bank Details",
        "description": "The required information to add a card as a financial instrument to PayPal through onboarding.",
        "properties": {
          "nick_name": {
            "type": "string",
            "description": "The user-provided short name for the user's bank account."
          },
          "account_number": {
            "type": "string",
            "description": "The bank account number. These are numeric values only without any additional formatting.",
            "pattern": "\\d+"
          },
          "account_type": {
            "type": "string",
            "description": "The type of account, which is checking or savings.",
            "enum": [
              "CHECKING",
              "SAVINGS"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "CHECKING"
                ],
                "description": "Checking account."
              },
              {
                "type": "string",
                "enum": [
                  "SAVINGS"
                ],
                "description": "Savings accounts."
              }
            ]
          },
          "currency_code": {
            "type": "string",
            "description": "The primary [three-character ISO-4217 currency code](/docs/api/reference/currency-codes/) for the account.",
            "pattern": "^([A-Z]){3}$"
          },
          "identifiers": {
            "$ref": "#/components/schemas/identifier_list"
          },
          "branch_location": {
            "description": "The branch location, if applicable.",
            "$ref": "#/components/schemas/address"
          },
          "mandate_agreed": {
            "type": "boolean",
            "description": "Indicates whether the user has agreed to the mandate for financial instrument (FI) authorization."
          }
        },
        "required": [
          "account_number",
          "account_type"
        ]
      },
      "bank_details_list": {
        "type": "array",
        "description": "An array of bank account details for the `ADD_BANK` capability.",
        "items": {
          "$ref": "#/components/schemas/bank_details"
        }
      },
      "beneficial_owners": {
        "title": "Beneficial_owners",
        "type": "object",
        "description": "Beneficial owners of the entity.",
        "properties": {
          "individual_beneficial_owners": {
            "$ref": "#/components/schemas/individual_beneficial_owner_list"
          },
          "business_beneficial_owners": {
            "$ref": "#/components/schemas/business_beneficial_owner_list"
          }
        }
      },
      "billing_agreement": {
        "type": "object",
        "title": "Billing Agreement",
        "description": "The details of the billing agreement between the partner and a seller.",
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": "string",
            "description": "The billing agreement description."
          },
          "billing_experience_preference": {
            "$ref": "#/components/schemas/billing_experience_preference"
          },
          "merchant_custom_data": {
            "type": "string",
            "description": "The custom data for the billing agreement."
          },
          "approval_url": {
            "type": "string",
            "format": "uri",
            "description": "The URL to which to redirect seller to accept the billing agreement."
          },
          "ec_token": {
            "type": "string",
            "description": "The billing agreement token for the agreement."
          }
        }
      },
      "billing_experience_preference": {
        "type": "object",
        "title": "Billing Experience Preference",
        "description": "The preference that customizes the billing experience of the customer.",
        "additionalProperties": false,
        "properties": {
          "experience_id": {
            "type": "string",
            "description": "The ID of the payment web experience profile, which is returned from a [create web experience profile](/docs/api/payment-experience/v1/#web-profiles_create) call."
          },
          "billing_context_set": {
            "type": "boolean",
            "description": "Indicates whether the partner has already displayed the billing context to the seller."
          }
        }
      },
      "business": {
        "title": "Business",
        "type": "object",
        "description": "Details of the business entity.",
        "properties": {
          "names": {
            "$ref": "#/components/schemas/definitions-business_name_list"
          },
          "phone_contacts": {
            "$ref": "#/components/schemas/business_definitions-phone_details_list"
          },
          "business_address": {
            "description": "The address of the business.",
            "$ref": "#/components/schemas/address"
          },
          "business_type": {
            "type": "string",
            "description": "The type of business.",
            "items": {
              "$ref": "#/components/schemas/business_type_enum"
            },
            "minLength": 1,
            "maxLength": 128
          },
          "business_subtype": {
            "description": "The sub classification of business type.",
            "$ref": "#/components/schemas/business_sub_type-2"
          },
          "category": {
            "type": "string",
            "description": "The customer's business category code. PayPal uses the industry standard seller category codes.",
            "pattern": "^\\d+$",
            "minLength": 1,
            "maxLength": 50
          },
          "sub_category": {
            "type": "string",
            "description": "The customer's business subcategory code. PayPal uses the industry standard seller category codes.",
            "pattern": "^\\d+$",
            "minLength": 1,
            "maxLength": 50
          },
          "merchant_category_code": {
            "type": "string",
            "description": "The customer's business seller category code. PayPal uses the industry standard seller category codes.",
            "pattern": "^\\d+$",
            "minLength": 1,
            "maxLength": 50
          },
          "purpose_code": {
            "description": "The account's purpose code.",
            "items": {
              "$ref": "#/components/schemas/purpose_code_enum"
            }
          },
          "website_urls": {
            "$ref": "#/components/schemas/definitions-website_urls_list"
          },
          "annual_sales_volume_range": {
            "description": "The range for the total annual sales volume of the business.",
            "$ref": "#/components/schemas/currency_range"
          },
          "average_monthly_volume_range": {
            "description": "The range for the average monthly volume of the business.",
            "$ref": "#/components/schemas/currency_range"
          }
        }
      },
      "business_beneficial_owner": {
        "title": "Business_beneficial_owner",
        "description": "The individual owner of the account.",
        "allOf": [
          {
            "$ref": "#/components/schemas/business"
          },
          {
            "properties": {
              "percentage_of_ownership": {
                "description": "The percentage of shares this person owns in the company.",
                "type": "string",
                "minLength": 1,
                "maxLength": 20
              }
            }
          }
        ]
      },
      "business_beneficial_owner_list": {
        "description": "Business beneficial owners.",
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/business_beneficial_owner"
        },
        "minItems": 0,
        "maxItems": 20
      },
      "business_definitions-phone_details_list": {
        "type": "array",
        "description": "An array of phone contacts for the business.",
        "items": {
          "$ref": "#/components/schemas/phone_details"
        },
        "minItems": 1,
        "maxItems": 20
      },
      "business_details": {
        "type": "object",
        "title": "Business Details",
        "description": "The customer's business details.",
        "additionalProperties": false,
        "properties": {
          "phone_contacts": {
            "$ref": "#/components/schemas/definitions-phone_details_list"
          },
          "business_address": {
            "description": "The address of the business.",
            "$ref": "#/components/schemas/address"
          },
          "business_type": {
            "type": "string",
            "description": "The type of business.",
            "items": {
              "$ref": "#/components/schemas/business_type_enum"
            }
          },
          "business_subtype": {
            "$ref": "#/components/schemas/business_sub_type"
          },
          "category": {
            "type": "string",
            "description": "The customer's business category code. PayPal uses the industry standard seller category codes.",
            "pattern": "^\\d+$"
          },
          "sub_category": {
            "type": "string",
            "description": "The customer's business subcategory code. PayPal uses the industry standard seller category codes.",
            "pattern": "^\\d+$"
          },
          "merchant_category_code": {
            "type": "string",
            "description": "The customer's business seller category code. PayPal uses the industry standard seller category codes.",
            "pattern": "^\\d+$"
          },
          "purpose_code": {
            "description": "The account's purpose code.",
            "items": {
              "$ref": "#/components/schemas/purpose_code_enum"
            }
          },
          "names": {
            "$ref": "#/components/schemas/business_name_list"
          },
          "business_description": {
            "type": "string",
            "description": "The business goals description. For example, a mission statement."
          },
          "event_dates": {
            "$ref": "#/components/schemas/date_of_event_list"
          },
          "website_urls": {
            "$ref": "#/components/schemas/website_urls_list"
          },
          "annual_sales_volume_range": {
            "description": "The range for the total annual sales volume of the business.",
            "$ref": "#/components/schemas/currency_range"
          },
          "average_monthly_volume_range": {
            "description": "The range for the average monthly volume of the business.",
            "$ref": "#/components/schemas/currency_range"
          },
          "identity_documents": {
            "$ref": "#/components/schemas/definitions-identity_document_list"
          },
          "email_contacts": {
            "$ref": "#/components/schemas/email_contact_list"
          },
          "country_of_incorporation": {
            "description": "The country code of the country where the business was incorporated.",
            "$ref": "#/components/schemas/country_code"
          },
          "beneficial_owners": {
            "description": "List of beneficial owners part of the entity. They can be either a Person or a business entity.",
            "$ref": "#/components/schemas/beneficial_owners"
          },
          "office_bearers": {
            "$ref": "#/components/schemas/office_bearer_list"
          }
        }
      },
      "business_name": {
        "type": "object",
        "title": "Business Name",
        "description": "A name for the business. For example, the legal name or the stock-trading name.",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "description": "The legal category of the business.",
            "enum": [
              "LEGAL",
              "DOING_BUSINESS_AS",
              "STOCK_TRADING_NAME"
            ]
          },
          "name": {
            "type": "string",
            "description": "The business name."
          }
        },
        "required": [
          "type",
          "name"
        ]
      },
      "business_name_list": {
        "type": "array",
        "description": "An array of business names.",
        "items": {
          "$ref": "#/components/schemas/business_name"
        }
      },
      "business_sub_type": {
        "description": "Sub classification of the business type.",
        "title": "Business sub-type",
        "type": "string",
        "pattern": "^[0-9A-Z_]+$",
        "minLength": 1,
        "maxLength": 255,
        "enum": [
          "ASSO_TYPE_INCORPORATED",
          "ASSO_TYPE_NON_INCORPORATED",
          "GOVT_TYPE_ENTITY",
          "GOVT_TYPE_EMANATION",
          "GOVT_TYPE_ESTD_COMM",
          "GOVT_TYPE_ESTD_FC",
          "GOVT_TYPE_ESTD_ST_TR"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "ASSO_TYPE_INCORPORATED"
            ],
            "description": "The asso type incorporated."
          },
          {
            "type": "string",
            "enum": [
              "ASSO_TYPE_NON_INCORPORATED"
            ],
            "description": "The asso type non incorporated."
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ENTITY"
            ],
            "description": "The govt type entity. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_EMANATION"
            ],
            "description": "The govt type emanation. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ESTD_COMM"
            ],
            "description": "The govt type estd comm. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ESTD_FC"
            ],
            "description": "The govt type estd fc. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ESTD_ST_TR"
            ],
            "description": "The govt type estd st tr. "
          }
        ]
      },
      "business_sub_type-2": {
        "description": "Sub classification of the business type.",
        "title": "Business sub-type",
        "type": "string",
        "pattern": "^[0-9A-Z_]+$",
        "minLength": 1,
        "maxLength": 255,
        "enum": [
          "ASSO_TYPE_INCORPORATED",
          "ASSO_TYPE_NON_INCORPORATED",
          "GOVT_TYPE_ENTITY",
          "GOVT_TYPE_EMANATION",
          "GOVT_TYPE_ESTD_COMM",
          "GOVT_TYPE_ESTD_FC",
          "GOVT_TYPE_ESTD_ST_TR"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "ASSO_TYPE_INCORPORATED"
            ],
            "description": "The asso type incorporated. "
          },
          {
            "type": "string",
            "enum": [
              "ASSO_TYPE_NON_INCORPORATED"
            ],
            "description": "The asso type non incorporated."
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ENTITY"
            ],
            "description": "The govt type entity. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_EMANATION"
            ],
            "description": "The govt type emanation. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ESTD_COMM"
            ],
            "description": "The govt type estd comm. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ESTD_FC"
            ],
            "description": "The govt type estd fc. "
          },
          {
            "type": "string",
            "enum": [
              "GOVT_TYPE_ESTD_ST_TR"
            ],
            "description": "The govt type estd st tr. "
          }
        ]
      },
      "business_type_enum": {
        "type": "string",
        "title": "Business Types",
        "description": "The business type.",
        "minLength": 1,
        "maxLength": 255,
        "enum": [
          "INDIVIDUAL",
          "PROPRIETORSHIP",
          "PARTNERSHIP",
          "CORPORATION",
          "NONPROFIT",
          "GOVERNMENT",
          "GENERAL_PARTNERSHIP",
          "LIMITED_PARTNERSHIP",
          "LIMITED_LIABILITY_PARTNERSHIP",
          "PRIVATE_CORPORATION",
          "PUBLIC_CORPORATION",
          "PROPRIETORSHIP_CRAFTSMAN",
          "PUBLIC_PARTNERSHIP",
          "LIMITED_LIABILITY_PROPRIETORS",
          "LIMITED_LIABILITY_PRIVATE_CORPORATION",
          "LIMITED_PARTNERSHIP_PRIVATE_CORPORATION",
          "PRIVATE_PARTNERSHIP",
          "PROPRIETARY_COMPANY",
          "PUBLIC_COMPANY",
          "ASSOCIATION",
          "REGISTERED_COOPERATIVE",
          "OTHER_CORPORATE_BODY",
          "ANY_OTHER_BUSINESS_ENTITY",
          "ONLY_BUY_OR_SEND_MONEY"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "INDIVIDUAL"
            ],
            "description": "The individual. "
          },
          {
            "type": "string",
            "enum": [
              "PROPRIETORSHIP"
            ],
            "description": "The proprietorship. "
          },
          {
            "type": "string",
            "enum": [
              "PARTNERSHIP"
            ],
            "description": "The partnership. "
          },
          {
            "type": "string",
            "enum": [
              "CORPORATION"
            ],
            "description": "The corporation. "
          },
          {
            "type": "string",
            "enum": [
              "NONPROFIT"
            ],
            "description": "The nonprofit. "
          },
          {
            "type": "string",
            "enum": [
              "GOVERNMENT"
            ],
            "description": "The government. "
          },
          {
            "type": "string",
            "enum": [
              "GENERAL_PARTNERSHIP"
            ],
            "description": "The general partnership. "
          },
          {
            "type": "string",
            "enum": [
              "LIMITED_PARTNERSHIP"
            ],
            "description": "The limited partnership. "
          },
          {
            "type": "string",
            "enum": [
              "LIMITED_LIABILITY_PARTNERSHIP"
            ],
            "description": "The limited liability partnership. "
          },
          {
            "type": "string",
            "enum": [
              "PRIVATE_CORPORATION"
            ],
            "description": "The private corporation. "
          },
          {
            "type": "string",
            "enum": [
              "PUBLIC_CORPORATION"
            ],
            "description": "The public corporation. "
          },
          {
            "type": "string",
            "enum": [
              "PROPRIETORSHIP_CRAFTSMAN"
            ],
            "description": "The proprietorship craftsman. "
          },
          {
            "type": "string",
            "enum": [
              "PUBLIC_PARTNERSHIP"
            ],
            "description": "The public partnership. "
          },
          {
            "type": "string",
            "enum": [
              "LIMITED_LIABILITY_PROPRIETORS"
            ],
            "description": "The limited liability proprietors. "
          },
          {
            "type": "string",
            "enum": [
              "LIMITED_LIABILITY_PRIVATE_CORPORATION"
            ],
            "description": "The limited liability private corporation. "
          },
          {
            "type": "string",
            "enum": [
              "LIMITED_PARTNERSHIP_PRIVATE_CORPORATION"
            ],
            "description": "The limited partnership private corporation. "
          },
          {
            "type": "string",
            "enum": [
              "PRIVATE_PARTNERSHIP"
            ],
            "description": "The private partnership. "
          },
          {
            "type": "string",
            "enum": [
              "PROPRIETARY_COMPANY"
            ],
            "description": "The proprietory company. "
          },
          {
            "type": "string",
            "enum": [
              "PUBLIC_COMPANY"
            ],
            "description": "The public company. "
          },
          {
            "type": "string",
            "enum": [
              "ASSOCIATION"
            ],
            "description": "The association. "
          },
          {
            "type": "string",
            "enum": [
              "REGISTERED_COOPERATIVE"
            ],
            "description": "Registered Co-operative. "
          },
          {
            "type": "string",
            "enum": [
              "OTHER_CORPORATE_BODY"
            ],
            "description": "The other corporate body. "
          },
          {
            "type": "string",
            "enum": [
              "ANY_OTHER_BUSINESS_ENTITY"
            ],
            "description": "The any other business entity. "
          },
          {
            "type": "string",
            "enum": [
              "ONLY_BUY_OR_SEND_MONEY"
            ],
            "description": "The only buy and send money. "
          }
        ]
      },
      "capabilities": {
        "type": "object",
        "title": "Capability",
        "description": "The required capability to share data.",
        "additionalProperties": false,
        "properties": {
          "capability": {
            "type": "string",
            "description": "The capability to enable for the customer. To enable the collection of the API permissions that you require to integrate with the customer, specify `API_INTEGRATION`. `BANK_ADDITION` is supported only for the US.",
            "enum": [
              "API_INTEGRATION",
              "BANK_ADDITION",
              "BILLING_AGREEMENT",
              "CONTEXTUAL_MARKETING_CONSENT"
            ]
          },
          "api_integration_preference": {
            "$ref": "#/components/schemas/integration_details"
          },
          "billing_agreement": {
            "$ref": "#/components/schemas/billing_agreement"
          }
        }
      },
      "capabilities_list": {
        "type": "array",
        "description": "An array of capabilities to enable for the customer while he or she shares the data.",
        "items": {
          "$ref": "#/components/schemas/capabilities"
        }
      },
      "capability_limit": {
        "type": "object",
        "title": "Capability Limit",
        "description": "Limit associated with the capability.",
        "properties": {
          "type": {
            "description": "Type of the limit.",
            "$ref": "#/components/schemas/capability_limit_types"
          }
        }
      },
      "capability_limit_list": {
        "type": "array",
        "description": "An array of limitations on the capability.",
        "items": {
          "$ref": "#/components/schemas/capability_limit"
        }
      },
      "capability_limit_types": {
        "type": "string",
        "title": "Limit Type",
        "description": "The type of limit.",
        "minLength": 1,
        "maxLength": 255,
        "pattern": "^[0-9A-Z_]+$",
        "enum": [
          "GENERAL"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "GENERAL"
            ],
            "description": "It means that the customer has access to the capability, but the capability's functionality is limited due to certain policy thresholds or restrictions. This could be due to transaction limits, account balance requirements, or other policy-based restrictions."
          }
        ]
      },
      "certificate": {
        "type": "object",
        "title": "Certificate",
        "description": "A certificate for seller credentials.",
        "properties": {
          "api_user_name": {
            "type": "string",
            "description": "The API user name for the seller."
          },
          "api_password": {
            "type": "string",
            "description": "The API password for the seller."
          },
          "fingerprint": {
            "type": "string",
            "description": "The fingerprint."
          },
          "download_link": {
            "type": "string",
            "description": "The URL to download the certificate."
          }
        }
      },
      "country_code": {
        "type": "string",
        "description": "The [two-character ISO 3166-1 code](/docs/integration/direct/rest/country-codes/) that identifies the country or region.<blockquote><strong>Note:</strong> The country code for Great Britain is <code>GB</code> and not <code>UK</code> as used in the top-level domain names for that country. Use the `C2` country code for China worldwide for comparable uncontrolled price (CUP) method, bank card, and cross-border transactions.</blockquote>",
        "format": "ppaas_common_country_code_v2",
        "maxLength": 2,
        "minLength": 2,
        "pattern": "^([A-Z]{2}|C2)$"
      },
      "create_referral_data_response": {
        "type": "object",
        "title": "Create Referral Data Response",
        "description": "The shared referral data.",
        "properties": {
          "links": {
            "$ref": "#/components/schemas/link_description_list"
          }
        }
      },
      "credential": {
        "type": "object",
        "title": "Credential",
        "description": "Seller credentials.",
        "properties": {
          "signature": {
            "$ref": "#/components/schemas/signature"
          },
          "certificate": {
            "$ref": "#/components/schemas/certificate"
          }
        }
      },
      "currency": {
        "type": "object",
        "title": "Currency",
        "description": "The [three-character ISO-4217 currency code](https://developer.paypal.com/docs/api/reference/currency-codes/).",
        "properties": {
          "currency": {
            "type": "string",
            "description": "The [three-character ISO-4217 currency code](/docs/api/reference/currency-codes/)."
          },
          "value": {
            "type": "string",
            "description": "The amount, up to _`N`_ digits after the decimal separator. For currencies that do not support decimals, see [currency codes](/docs/api/reference/currency-codes/)."
          }
        },
        "required": [
          "currency",
          "value"
        ]
      },
      "currency_range": {
        "type": "object",
        "title": "Currency Range",
        "description": "The currency range, from the minimum inclusive amount to the maximum inclusive amount.",
        "properties": {
          "minimum_amount": {
            "description": "The minimum inclusive amount for the range.",
            "$ref": "#/components/schemas/currency"
          },
          "maximum_amount": {
            "description": "The maximum inclusive amount for the range.",
            "$ref": "#/components/schemas/currency"
          }
        }
      },
      "date_of_event": {
        "type": "object",
        "title": "Date of Event",
        "description": "The date for an event type. Typically captured during onboarding.",
        "properties": {
          "event_type": {
            "$ref": "#/components/schemas/events_type"
          },
          "event_date": {
            "type": "string",
            "description": "The date portion of the date and time when the event occurred, in [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6). For accuracy, if you do not know the exact time zone, use the UTC time zone.",
            "format": "date-time"
          }
        },
        "required": [
          "event_type",
          "event_date"
        ]
      },
      "date_of_event_list": {
        "type": "array",
        "description": "An array of event dates for the business.",
        "items": {
          "$ref": "#/components/schemas/date_of_event"
        }
      },
      "definitions-business_name_list": {
        "type": "array",
        "description": "An array of business names.",
        "items": {
          "$ref": "#/components/schemas/business_name"
        },
        "minItems": 1,
        "maxItems": 20
      },
      "definitions-error_details_list": {
        "type": "array",
        "description": "An array of additional details for the error.",
        "readOnly": true,
        "items": {
          "$ref": "#/components/schemas/error_details-3"
        }
      },
      "definitions-identity_document_list": {
        "type": "array",
        "description": "An array of identity documents that uniquely identify the user. For example, a license number, social security number, and so on.",
        "items": {
          "$ref": "#/components/schemas/identity_document"
        }
      },
      "definitions-phone_details_list": {
        "type": "array",
        "description": "An array of phone contacts for the business.",
        "items": {
          "$ref": "#/components/schemas/phone_details"
        }
      },
      "definitions-website_urls_list": {
        "type": "array",
        "description": "An array of website URLs for the business.",
        "items": {
          "$ref": "#/components/schemas/website_urls"
        },
        "minLength": 1,
        "maxLength": 128
      },
      "email_address": {
        "type": "string",
        "description": "The internationalized email address.<blockquote><strong>Note:</strong> Up to 64 characters are allowed before and 255 characters are allowed after the <code>@</code> sign. However, the generally accepted maximum length for an email address is 254 characters. The pattern verifies that an unquoted <code>@</code> sign exists.</blockquote>",
        "format": "ppaas_common_email_address_v2",
        "minLength": 3,
        "maxLength": 254,
        "pattern": "^.+@[^\"\\-].+$"
      },
      "email_contact": {
        "type": "object",
        "title": "Email Contact",
        "description": "The email address. Includes the role of the email address.",
        "properties": {
          "email_address": {
            "$ref": "#/components/schemas/email_address"
          },
          "role": {
            "type": "string",
            "description": "The role of the email address.",
            "enum": [
              "CUSTOMER_SERVICE"
            ]
          }
        },
        "required": [
          "email_address",
          "role"
        ]
      },
      "email_contact_list": {
        "type": "array",
        "description": "An array of contact email addresses for the company.",
        "items": {
          "$ref": "#/components/schemas/email_contact"
        }
      },
      "error": {
        "type": "object",
        "title": "Error",
        "description": "The error details.",
        "properties": {
          "name": {
            "type": "string",
            "description": "The human-readable, unique name of the error."
          },
          "message": {
            "type": "string",
            "description": "The message that describes the error."
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "information_link": {
            "type": "string",
            "description": "The information link, or URI, that shows detailed information about this error for the developer.",
            "readOnly": true
          },
          "details": {
            "$ref": "#/components/schemas/error_details_list"
          },
          "links": {
            "$ref": "#/components/schemas/link_description_list"
          }
        },
        "required": [
          "name",
          "message",
          "debug_id"
        ]
      },
      "error-2": {
        "type": "object",
        "title": "Error",
        "description": "The error information.",
        "properties": {
          "name": {
            "type": "string",
            "description": "The human-readable, unique name of the error.",
            "readOnly": true
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes.",
            "readOnly": true
          },
          "message": {
            "type": "string",
            "description": "The message that describes the error.",
            "readOnly": true
          },
          "information_link": {
            "type": "string",
            "description": "The URI to detailed information related to this error for the developer.",
            "readOnly": true
          },
          "details": {
            "$ref": "#/components/schemas/definitions-error_details_list"
          }
        },
        "required": [
          "name",
          "message",
          "information_link"
        ]
      },
      "error_400": {
        "type": "object",
        "title": "Bad Request Error",
        "description": "Request is not well-formed, syntactically incorrect, or violates schema.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "INVALID_REQUEST"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "Request is not well-formed, syntactically incorrect, or violates schema."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_401": {
        "type": "object",
        "title": "Unauthorized Error",
        "description": "Authentication failed due to missing Authorization header, or invalid authentication credentials.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "AUTHENTICATION_FAILURE"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "Authentication failed due to missing authorization header, or invalid authentication credentials."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_403": {
        "type": "object",
        "title": "Not Authorized Error",
        "description": "The client is not authorized to access this resource, although it may have valid credentials. ",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "NOT_AUTHORIZED"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "Authorization failed due to insufficient permissions."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_404": {
        "type": "object",
        "title": "Not found Error",
        "description": "The server has not found anything matching the request URI. This either means that the URI is incorrect or the resource is not available.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "RESOURCE_NOT_FOUND"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "The specified resource does not exist."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_409": {
        "type": "object",
        "title": "Resource Conflict Error",
        "description": "The server has detected a conflict while processing this request.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "RESOURCE_CONFLICT"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "The server has detected a conflict while processing this request."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_415": {
        "type": "object",
        "title": "Unsupported Media Type Error",
        "description": "The server does not support the request payload's media type.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "UNSUPPORTED_MEDIA_TYPE"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "The server does not support the request payload's media type."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_422": {
        "type": "object",
        "title": "Unprocessable Entity Error",
        "description": "The requested action cannot be performed and may require interaction with APIs or processes outside of the current request. This is distinct from a 500 response in that there are no systemic problems limiting the API from performing the request.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "UNPROCESSABLE_ENTITY"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "The requested action could not be performed, semantically incorrect, or failed business validation."
            ]
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/error_details"
            }
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        }
      },
      "error_500": {
        "type": "object",
        "title": "Internal Server Error",
        "description": "This is either a system or application error, and generally indicates that although the client appeared to provide a correct request, something unexpected has gone wrong on the server.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "INTERNAL_SERVER_ERROR"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "An internal server error occurred."
            ]
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        },
        "examples": [
          {
            "name": "INTERNAL_SERVER_ERROR",
            "message": "An internal server error occurred.",
            "debug_id": "90957fca61718",
            "links": [
              {
                "href": "https://developer.paypal.com/api/orders/v2/#error-INTERNAL_SERVER_ERROR",
                "rel": "information_link"
              }
            ]
          }
        ]
      },
      "error_503": {
        "type": "object",
        "title": "Service Unavailable Error",
        "description": "The server is temporarily unable to handle the request, for example, because of planned maintenance or downtime.",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "SERVICE_UNAVAILABLE"
            ]
          },
          "message": {
            "type": "string",
            "enum": [
              "Service Unavailable."
            ]
          },
          "debug_id": {
            "type": "string",
            "description": "The PayPal internal ID. Used for correlation purposes."
          },
          "links": {
            "description": "An array of request-related [HATEOAS links](https://en.wikipedia.org/wiki/HATEOAS).",
            "type": "array",
            "minItems": 0,
            "maxItems": 10000,
            "items": {
              "$ref": "#/components/schemas/error_link_description"
            }
          }
        },
        "examples": [
          {
            "name": "SERVICE_UNAVAILABLE",
            "message": "Service Unavailable.",
            "debug_id": "90957fca61718",
            "information_link": "https://developer.paypal.com/docs/api/orders/v2/#error-SERVICE_UNAVAILABLE"
          }
        ]
      },
      "error_default": {
        "description": "The default error response.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/error_400"
          },
          {
            "$ref": "#/components/schemas/error_401"
          },
          {
            "$ref": "#/components/schemas/error_403"
          },
          {
            "$ref": "#/components/schemas/error_404"
          },
          {
            "$ref": "#/components/schemas/error_409"
          },
          {
            "$ref": "#/components/schemas/error_415"
          },
          {
            "$ref": "#/components/schemas/error_422"
          },
          {
            "$ref": "#/components/schemas/error_500"
          },
          {
            "$ref": "#/components/schemas/error_503"
          }
        ]
      },
      "error_details": {
        "title": "Error Details",
        "type": "object",
        "description": "The error details. Required for client-side `4XX` errors.",
        "properties": {
          "field": {
            "type": "string",
            "description": "The field that caused the error. If this field is in the body, set this value to the field's JSON pointer value. Required for client-side errors."
          },
          "value": {
            "type": "string",
            "description": "The value of the field that caused the error."
          },
          "location": {
            "$ref": "#/components/schemas/error_location"
          },
          "issue": {
            "type": "string",
            "description": "The unique, fine-grained application-level error code."
          },
          "description": {
            "type": "string",
            "description": "The human-readable description for an issue. The description can change over the lifetime of an API, so clients must not depend on this value."
          }
        },
        "required": [
          "issue"
        ]
      },
      "error_details-2": {
        "title": "Error Details",
        "type": "object",
        "description": "The error details. Required for client-side `4XX` errors.",
        "properties": {
          "field": {
            "type": "string",
            "description": "The field that caused the error. If this field is in the body, set this value to the field's JSON pointer value. Required for client-side errors."
          },
          "value": {
            "type": "string",
            "description": "The value of the field that caused the error."
          },
          "location": {
            "type": "string",
            "description": "The location of the field that caused the error. Value is `body`, `path`, or `query`.",
            "default": "body"
          },
          "issue": {
            "type": "string",
            "description": "The unique, fine-grained application-level error code."
          },
          "description": {
            "type": "string",
            "description": "The human-readable description for an issue. The description can change over the lifetime of an API, so clients must not depend on this value."
          }
        },
        "required": [
          "issue"
        ]
      },
      "error_details-3": {
        "type": "object",
        "title": "Error Details",
        "description": "The error details. Required for client-side `4XX` errors.",
        "properties": {
          "field": {
            "type": "string",
            "description": "The name of the field that caused the error."
          },
          "issue": {
            "type": "string",
            "description": "The reason for the error."
          }
        },
        "required": [
          "field",
          "issue"
        ]
      },
      "error_details_list": {
        "type": "array",
        "description": "An array of additional details about the error.",
        "items": {
          "$ref": "#/components/schemas/error_details-2"
        }
      },
      "error_link_description": {
        "title": "Link Description",
        "description": "The request-related [HATEOAS link](/api/rest/responses/#hateoas-links) information.",
        "type": "object",
        "required": [
          "href",
          "rel"
        ],
        "properties": {
          "href": {
            "description": "The complete target URL. To make the related call, combine the method with this [URI Template-formatted](https://tools.ietf.org/html/rfc6570) link. For pre-processing, include the `$`, `(`, and `)` characters. The `href` is the key HATEOAS component that links a completed call with a subsequent call.",
            "type": "string",
            "minLength": 0,
            "maxLength": 20000,
            "pattern": "^.*$"
          },
          "rel": {
            "description": "The [link relation type](https://tools.ietf.org/html/rfc5988#section-4), which serves as an ID for a link that unambiguously describes the semantics of the link. See [Link Relations](https://www.iana.org/assignments/link-relations/link-relations.xhtml).",
            "type": "string",
            "minLength": 0,
            "maxLength": 100,
            "pattern": "^.*$"
          },
          "method": {
            "description": "The HTTP method required to make the related call.",
            "type": "string",
            "minLength": 3,
            "maxLength": 6,
            "pattern": "^[A-Z]*$",
            "enum": [
              "GET",
              "POST",
              "PUT",
              "DELETE",
              "PATCH"
            ]
          }
        }
      },
      "error_location": {
        "type": "string",
        "description": "The location of the field that caused the error. Value is `body`, `path`, or `query`.",
        "enum": [
          "body",
          "path",
          "query"
        ],
        "default": "body"
      },
      "events_type": {
        "type": "string",
        "title": "Events Type",
        "description": "The event type for an onboarding entity.",
        "enum": [
          "BIRTH",
          "ESTABLISHED",
          "INCORPORATION",
          "OPERATION"
        ]
      },
      "financial_instrument_data": {
        "type": "object",
        "title": "Financial Instrument Data",
        "description": "The customer's financial instrument. Use it to add a financial instrument to the customer's PayPal account.",
        "properties": {
          "bank_details": {
            "$ref": "#/components/schemas/bank_details_list"
          }
        }
      },
      "granted_permissions": {
        "type": "string",
        "description": "The permission granted to the partner.",
        "enum": [
          "EXPRESS_CHECKOUT",
          "REFUND",
          "DIRECT_PAYMENT",
          "AUTH_CAPTURE",
          "BUTTON_MANAGER",
          "ACCOUNT_BALANCE",
          "TRANSACTION_DETAILS",
          "TRANSACTION_SEARCH",
          "REFERENCE_TRANSACTION",
          "RECURRING_PAYMENTS",
          "BILLING_AGREEMENT",
          "MANAGE_PENDING_TRANSACTION_STATUS",
          "NON_REFERENCED_CREDIT",
          "MASS_PAY",
          "ENCRYPTED_WEBSITE_PAYMENTS",
          "SETTLEMENT_CONSOLIDATION",
          "SETTLEMENT_REPORTING",
          "MOBILE_CHECKOUT",
          "AIR_TRAVEL",
          "INVOICING",
          "RECURRING_PAYMENT_REPORT",
          "EXTENDED_PRO_PROCESSING_REPORT",
          "EXCEPTION_PROCESSING_REPORT",
          "TRANSACTION_DETAIL_REPORT",
          "ACCOUNT_MANAGEMENT_PERMISSION",
          "ACCESS_BASIC_PERSONAL_DATA",
          "ACCESS_ADVANCED_PERSONAL_DATA"
        ]
      },
      "granted_permissions_list": {
        "type": "array",
        "description": "An array of permissions granted to the partner by the seller.",
        "items": {
          "$ref": "#/components/schemas/granted_permissions"
        }
      },
      "identifier": {
        "type": "object",
        "title": "Identifier",
        "additionalProperties": false,
        "description": "The attributes for an instrument institute ID. Used with the account number to uniquely identify the instrument. Value is:<ul><li>For banks with IBAN information, the IBAN number.</li><li>For banks with BBAN information, the BBAN number.</li><li>For banks with both IBAN and BBAN information, the IBAN number.</li></ul>",
        "properties": {
          "type": {
            "type": "string",
            "description": "The bank account ID type.",
            "enum": [
              "ROUTING_NUMBER_1",
              "ROUTING_NUMBER_2",
              "ROUTING_NUMBER_3",
              "BI_CODE",
              "BANK_CODE",
              "BRANCH_CODE",
              "INTERMEDIARY_SWIFT_CODE",
              "BBAN",
              "BBAN_ENCRYPTED",
              "BBAN_HMAC",
              "AGGREGATOR_YODLEE"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "ROUTING_NUMBER_1"
                ],
                "description": "Routing number 1."
              },
              {
                "type": "string",
                "enum": [
                  "ROUTING_NUMBER_2"
                ],
                "description": "Routing number 2."
              },
              {
                "type": "string",
                "enum": [
                  "ROUTING_NUMBER_3"
                ],
                "description": "Routing number 3."
              },
              {
                "type": "string",
                "enum": [
                  "BI_CODE"
                ],
                "description": "BI code."
              },
              {
                "type": "string",
                "enum": [
                  "BANK_CODE"
                ],
                "description": "Bank code."
              },
              {
                "type": "string",
                "enum": [
                  "BRANCH_CODE"
                ],
                "description": "Branch code."
              },
              {
                "type": "string",
                "enum": [
                  "INTERMEDIARY_SWIFT_CODE"
                ],
                "description": "Swift code."
              },
              {
                "type": "string",
                "enum": [
                  "BBAN"
                ],
                "description": "BBAN."
              },
              {
                "type": "string",
                "enum": [
                  "BBAN_ENCRYPTED"
                ],
                "description": "BBAN enrypted."
              },
              {
                "type": "string",
                "enum": [
                  "BBAN_HMAC"
                ],
                "description": "BBAN HMAC."
              },
              {
                "type": "string",
                "enum": [
                  "AGGREGATOR_YODLEE"
                ],
                "description": "Aggregator Yodlee."
              }
            ]
          },
          "value": {
            "description": "The bank account ID value.",
            "type": "string"
          }
        }
      },
      "identifier_list": {
        "type": "array",
        "minItems": 1,
        "description": "An array of instrument institute attributes. Used with the account number to uniquely identify the instrument. Value is:<ul><li>For banks with IBAN information, the IBAN number.</li><li>For banks with BBAN information, the BBAN number.</li><li>For banks with both IBAN and BBAN information, the IBAN number.</li></ul>",
        "items": {
          "$ref": "#/components/schemas/identifier"
        }
      },
      "identity_document": {
        "type": "object",
        "title": "Identity Document",
        "description": "The authority-issued identification document. Document types include a driver's license, social security number, employee ID number, and so on.",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/identity_document_type"
          },
          "value": {
            "type": "string",
            "description": "The identifier value, such as license number, social security number, and so on.",
            "pattern": "^[A-Za-z0-9]+$"
          },
          "partial_value": {
            "type": "boolean",
            "description": "Indicates whether the value is a partial value. Specify this value when the identifier type supports a partial value, such as four SSN digits instead of the full nine values. Depending on the context, this parameter can be ignored.",
            "default": false
          },
          "issuer_country_code": {
            "type": "string",
            "description": "The [two-character ISO-3166-1 country code](/docs/api/reference/country-codes/) for the country that issued the document.",
            "pattern": "^[A-Z]([A-Z]|\\d)$"
          }
        },
        "required": [
          "type",
          "value",
          "partial_value",
          "issuer_country_code"
        ]
      },
      "identity_document_list": {
        "type": "array",
        "description": "An array of documents that uniquely identify the user, such as a license number, social security number, and so on.",
        "items": {
          "$ref": "#/components/schemas/identity_document"
        }
      },
      "identity_document_type": {
        "type": "string",
        "title": "Identity Document Type",
        "description": "The identifier type in the onboarding domain. Indicates the most specific type or the closest matching value. For example, <code>SOCIAL_SECURITY_NUMBER</code> in preference to <code>TAX_IDENTIFICATION_NUMBER</code>.",
        "enum": [
          "SOCIAL_SECURITY_NUMBER",
          "EMPLOYMENT_IDENTIFICATION_NUMBER",
          "TAX_IDENTIFICATION_NUMBER",
          "PASSPORT_NUMBER",
          "PENSION_FUND_ID",
          "MEDICAL_INSURANCE_ID",
          "CNPJ",
          "CPF",
          "PAN",
          "NATIONAL_ID_CARD",
          "BUSINESS_REGISTRATION"
        ]
      },
      "individual_beneficial_owner": {
        "title": "Individual_beneficial_owner",
        "description": "The individual owner of the account.",
        "allOf": [
          {
            "$ref": "#/components/schemas/person"
          },
          {
            "properties": {
              "percentage_of_ownership": {
                "description": "The percentage of shares this person owns in the company.",
                "type": "string",
                "minLength": 1,
                "maxLength": 20
              }
            }
          }
        ]
      },
      "individual_beneficial_owner_list": {
        "description": "Individual beneficial owners.",
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/individual_beneficial_owner"
        },
        "minItems": 0,
        "maxItems": 20
      },
      "integration_details": {
        "type": "object",
        "title": "Integration Details",
        "description": "The integration details for the partner and customer relationship. Required if `capability_type` is `API_INTEGRATION`.",
        "additionalProperties": false,
        "properties": {
          "partner_id": {
            "type": "string",
            "description": "The payer ID of the partner who integrates with the client. To find this ID, log in to the partner's PayPal business account. Navigate to Profile, click Profile and settings, and click My business info. The account number appears in the Merchant account ID section."
          },
          "rest_api_integration": {
            "$ref": "#/components/schemas/rest_api_integration"
          },
          "rest_third_party_details": {
            "$ref": "#/components/schemas/rest_third_party_details"
          },
          "rest_first_party_details": {
            "$ref": "#/components/schemas/rest_first_party_details"
          }
        }
      },
      "integration_details_rest_endpoint_features_enum_list": {
        "type": "array",
        "description": "An array of features that partner can access, or use, in PayPal on behalf of the seller. The seller grants permission for these features to the partner.",
        "items": {
          "$ref": "#/components/schemas/rest_endpoint_features_enum"
        }
      },
      "legal_consent": {
        "type": "object",
        "title": "Legal Consent",
        "description": "The customer-provided consent.",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of consent. `SHARE_DATA_CONSENT` gives consent to you to share your customer's data with PayPal.",
            "enum": [
              "SHARE_DATA_CONSENT"
            ]
          },
          "granted": {
            "type": "boolean",
            "description": "Indicates whether the customer agreed to share this type of data. To give consent, specify `true`. To withhold consent, specify `false`."
          }
        },
        "required": [
          "type",
          "granted"
        ]
      },
      "legal_consent_list": {
        "type": "array",
        "description": "An array of all consents that the partner has received from this seller. If `SHARE_DATA_CONSENT` is not granted, PayPal does not store customer data.",
        "items": {
          "$ref": "#/components/schemas/legal_consent"
        }
      },
      "limitation": {
        "type": "object",
        "title": "Limitation",
        "description": "The limitations on a seller account.",
        "properties": {
          "name": {
            "type": "string",
            "description": "The title of the limitation that is applied to the account."
          },
          "restrictions": {
            "$ref": "#/components/schemas/restrictions_list"
          }
        }
      },
      "limitation_list": {
        "type": "array",
        "description": "An array of limitations on the seller account.",
        "items": {
          "$ref": "#/components/schemas/limitation"
        }
      },
      "link_description": {
        "type": "object",
        "title": "Link Description",
        "description": "The request-related [HATEOAS link](/docs/api/reference/api-responses/#hateoas-links) information.",
        "required": [
          "href",
          "rel"
        ],
        "properties": {
          "href": {
            "type": "string",
            "description": "The complete target URL. To make the related call, combine the method with this [URI Template-formatted](https://tools.ietf.org/html/rfc6570) link. For pre-processing, include the `$`, `(`, and `)` characters. The `href` is the key HATEOAS component that links a completed call with a subsequent call."
          },
          "rel": {
            "type": "string",
            "description": "The [link relation type](https://tools.ietf.org/html/rfc5988#section-4), which serves as an ID for a link that unambiguously describes the semantics of the link. See [Link Relations](https://www.iana.org/assignments/link-relations/link-relations.xhtml)."
          },
          "method": {
            "type": "string",
            "description": "The HTTP method required to make the related call.",
            "enum": [
              "GET",
              "POST",
              "PUT",
              "DELETE",
              "HEAD",
              "CONNECT",
              "OPTIONS",
              "PATCH"
            ]
          }
        }
      },
      "link_description_list": {
        "type": "array",
        "description": "An array of request-related [HATEOAS links](/docs/api/reference/api-responses/#hateoas-links).",
        "readOnly": true,
        "items": {
          "$ref": "#/components/schemas/link_description"
        }
      },
      "merchant-integration": {
        "type": "object",
        "title": "Seller Integration",
        "description": "The `merchant-integration` status information for a partner.",
        "properties": {
          "tracking_id": {
            "type": "string",
            "description": "The partner-provided tracking ID, if one was provided."
          },
          "merchant_id": {
            "type": "string",
            "description": "The payer ID of the seller after creation of their PayPal account."
          },
          "given_name": {
            "type": "string",
            "description": "The given name of the seller. Only available for casual sellers.",
            "maxLength": 140,
            "minLength": 1,
            "pattern": "^[a-zA-Z ,.'-]+$"
          },
          "surname": {
            "type": "string",
            "description": "The surname of the seller. Only available for casual sellers.",
            "maxLength": 140,
            "minLength": 1,
            "pattern": "^[a-zA-Z ,.'-]+$"
          },
          "products": {
            "$ref": "#/components/schemas/product_list"
          },
          "payments_receivable": {
            "type": "boolean",
            "description": "Indicates whether the seller account can receive payments."
          },
          "legal_name": {
            "type": "string",
            "description": "The legal business name of the seller."
          },
          "primary_email_confirmed": {
            "type": "boolean",
            "description": "Indicates whether the primary email of the seller has been confirmed."
          },
          "primary_email": {
            "type": "string",
            "description": "The primary email address of the seller."
          },
          "date_created": {
            "type": "string",
            "description": "The date when the seller account was created, in [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6)."
          },
          "granted_permissions": {
            "$ref": "#/components/schemas/granted_permissions_list"
          },
          "api_credentials": {
            "description": "The API credentials of the seller.",
            "$ref": "#/components/schemas/credential"
          },
          "oauth_integrations": {
            "$ref": "#/components/schemas/oauth-integration_list"
          },
          "limitations": {
            "$ref": "#/components/schemas/limitation_list"
          },
          "capabilities": {
            "$ref": "#/components/schemas/account_capability_list"
          }
        }
      },
      "merchant-integration.credentials": {
        "type": "object",
        "title": "Seller Credentials",
        "description": "The `merchant-integration` merchant credentials for a downloadable cart seller.",
        "properties": {
          "client_id": {
            "type": "string",
            "description": "The client ID of the seller.",
            "minLength": 1,
            "maxLength": 255
          },
          "client_secret": {
            "type": "string",
            "description": "The client secret of the seller.",
            "minLength": 1,
            "maxLength": 255
          },
          "payer_id": {
            "type": "string",
            "description": "The payer ID of the seller and the pattern is not provided because the value is defined by an external party.",
            "minLength": 1,
            "maxLength": 255
          }
        }
      },
      "message": {
        "type": "object",
        "title": "Message",
        "description": "The user- and seller-provided messages.",
        "properties": {
          "message": {
            "type": "string",
            "description": "The message text.",
            "maxLength": 255
          },
          "language_code": {
            "type": "string",
            "description": "The [locale code](/docs/api/reference/locale-codes/) for the language of the message, such as `en_US`."
          }
        }
      },
      "message_list": {
        "type": "array",
        "description": "An array of messages to the seller from the partner after completion of sign-up. The message can change by country and language.",
        "items": {
          "$ref": "#/components/schemas/message"
        }
      },
      "name": {
        "type": "object",
        "title": "Name",
        "description": "The name of the party.",
        "properties": {
          "prefix": {
            "type": "string",
            "description": "The prefix, or title, to the party's name.",
            "maxLength": 140
          },
          "given_name": {
            "type": "string",
            "description": "When the party is a person, the party's given, or first, name.",
            "maxLength": 140
          },
          "surname": {
            "type": "string",
            "description": "When the party is a person, the party's surname or family name. Also known as the last name. Required when the party is a person. Use also to store multiple surnames including the matronymic, or mother's, surname.",
            "maxLength": 140
          },
          "middle_name": {
            "type": "string",
            "description": "When the party is a person, the party's middle name. Use also to store multiple middle names including the patronymic, or father's, middle name.",
            "maxLength": 140
          },
          "suffix": {
            "type": "string",
            "description": "The suffix for the party's name.",
            "maxLength": 140
          },
          "alternate_full_name": {
            "type": "string",
            "description": "DEPRECATED. The party's alternate name. Can be a business name, nickname, or any other name that cannot be split into first, last name. Required when the party is a business.",
            "maxLength": 300
          },
          "full_name": {
            "type": "string",
            "description": "When the party is a person, the party's full name.",
            "maxLength": 300
          }
        }
      },
      "oauth-integration": {
        "type": "object",
        "title": "OAuth Integration",
        "description": "The status of the oauth-integration between a partner and seller.",
        "properties": {
          "integration_type": {
            "type": "string",
            "description": "The type of integration between the partner and the seller.",
            "enum": [
              "FIRST_PARTY_INTEGRATED",
              "FIRST_PARTY_NON_INTEGRATED",
              "THIRD_PARTY",
              "OAUTH_THIRD_PARTY"
            ]
          },
          "integration_method": {
            "type": "string",
            "description": "The integration method that the partner uses to integrate with PayPal APIs.",
            "enum": [
              "PAYPAL",
              "BRAINTREE"
            ]
          },
          "status": {
            "type": "string",
            "description": "The integration status.",
            "enum": [
              "A",
              "I"
            ]
          },
          "oauth_third_party": {
            "$ref": "#/components/schemas/oauth-third-party_list"
          }
        }
      },
      "oauth-integration_list": {
        "type": "array",
        "description": "An array of information about OAuth integrations between partners and sellers.",
        "items": {
          "$ref": "#/components/schemas/oauth-integration"
        }
      },
      "oauth-third-party": {
        "type": "object",
        "title": "OAuth Third Party",
        "description": "The seller third-party information for REST API.",
        "properties": {
          "partner_client_id": {
            "type": "string",
            "description": "The client ID of the partner's API caller account."
          },
          "merchant_client_id": {
            "type": "string",
            "description": "The client ID of the seller."
          },
          "scopes": {
            "$ref": "#/components/schemas/scopes_list"
          },
          "access_token": {
            "type": "string",
            "description": "The access token for the partner-selected integration method."
          },
          "refresh_token": {
            "type": "string",
            "description": "The refresh token for the partner-selected integration method."
          }
        }
      },
      "oauth-third-party_list": {
        "type": "array",
        "description": "An array of combinations of `partner_client_id` and `merchant_client_id` values and their associated scopes.",
        "items": {
          "$ref": "#/components/schemas/oauth-third-party"
        }
      },
      "office_bearer": {
        "allOf": [
          {
            "$ref": "#/components/schemas/person"
          },
          {
            "properties": {
              "role": {
                "description": "The role of the person in the company.",
                "$ref": "#/components/schemas/office_bearer_role"
              }
            }
          },
          {
            "title": "Office_bearer",
            "description": "The office bearers of the account."
          }
        ]
      },
      "office_bearer_list": {
        "description": "List of office bearers as part of the business entity.",
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/office_bearer"
        },
        "minItems": 0,
        "maxItems": 10
      },
      "office_bearer_role": {
        "description": "Role of the person party played in the business.",
        "title": "Role type",
        "type": "string",
        "pattern": "^[0-9A-Z_]+$",
        "minLength": 1,
        "maxLength": 255,
        "enum": [
          "CEO",
          "CHAIRMAN",
          "DIRECTOR",
          "SECRETARY",
          "TREASURER",
          "TRUSTEE"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "CEO"
            ],
            "description": "The ceo. "
          },
          {
            "type": "string",
            "enum": [
              "CHAIRMAN"
            ],
            "description": "The chairman. "
          },
          {
            "type": "string",
            "enum": [
              "DIRECTOR"
            ],
            "description": "Director of the business"
          },
          {
            "type": "string",
            "enum": [
              "SECRETARY"
            ],
            "description": "The secretary. "
          },
          {
            "type": "string",
            "enum": [
              "TREASURER"
            ],
            "description": "The treasurer. "
          },
          {
            "type": "string",
            "enum": [
              "TRUSTEE"
            ],
            "description": "The trustee. "
          }
        ]
      },
      "partner": {
        "type": "object",
        "title": "Partner",
        "description": "The seller acquisition partner-related information. Defines the settings for the customized onboarding experience of the seller.",
        "properties": {
          "partner_id": {
            "type": "string",
            "description": "The account ID of the partner."
          },
          "launch_type": {
            "type": "string",
            "description": "Indicates whether the onboarding occurs in a full browser, mini-browser, or light box.",
            "default": "FULL_BROWSER",
            "enum": [
              "FULL_BROWSER",
              "LIGHT_BOX",
              "EMBEDDED",
              "MINI_BROWSER"
            ]
          },
          "receives_credential": {
            "type": "boolean",
            "description": "Indicates whether the partner is integrated to receive a seller credential.",
            "default": false
          },
          "product_selection": {
            "type": "string",
            "description": "Indicates whether the seller can select a product with which to integrate.",
            "enum": [
              "Y",
              "N",
              "P"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "Y"
                ],
                "description": "The seller can choose a partner-supported product."
              },
              {
                "type": "string",
                "enum": [
                  "N"
                ],
                "description": "A product change is not allowed."
              },
              {
                "type": "string",
                "enum": [
                  "P"
                ],
                "description": "The seller can choose any product."
              }
            ]
          },
          "logo_url": {
            "type": "string",
            "description": "The partner logo URL. Provides a way for partners to update their logo through preferences. This logo over-writes any image URL provided earlier for their business accounts.",
            "format": "uri"
          },
          "notification_url": {
            "type": "string",
            "description": "The partner-provided URL for notifications.",
            "format": "uri"
          },
          "integration_preferences": {
            "$ref": "#/components/schemas/product-integration_list"
          },
          "region_preferences": {
            "$ref": "#/components/schemas/region-preferences_list"
          },
          "agreement_types": {
            "$ref": "#/components/schemas/agreement_types_list"
          },
          "display_name": {
            "type": "string",
            "description": "The display name of the partner.",
            "readOnly": true
          }
        }
      },
      "partner_specific_identifiers": {
        "type": "object",
        "title": "Partner Identifiers",
        "description": "The identifier for the customer in the partner's system.",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "description": "The identifier type.",
            "enum": [
              "TRACKING_ID",
              "ACCOUNT_LINKING_ID"
            ]
          },
          "value": {
            "type": "string",
            "description": "The identifier value."
          }
        },
        "required": [
          "type",
          "value"
        ]
      },
      "partner_specific_identifiers_list": {
        "type": "array",
        "description": "An array of customer identifiers in the partner's system.",
        "items": {
          "$ref": "#/components/schemas/partner_specific_identifiers"
        }
      },
      "permissions": {
        "type": "string",
        "description": "Permission given to the partner.",
        "enum": [
          "EXPRESS_CHECKOUT",
          "REFUND",
          "DIRECT_PAYMENT",
          "AUTH_CAPTURE",
          "BUTTON_MANAGER",
          "ACCOUNT_BALANCE",
          "TRANSACTION_DETAILS",
          "TRANSACTION_SEARCH",
          "REFERENCE_TRANSACTION",
          "RECURRING_PAYMENTS",
          "BILLING_AGREEMENT",
          "MANAGE_PENDING_TRANSACTION_STATUS",
          "NON_REFERENCED_CREDIT",
          "MASS_PAY",
          "ENCRYPTED_WEBSITE_PAYMENTS",
          "SETTLEMENT_CONSOLIDATION",
          "SETTLEMENT_REPORTING",
          "MOBILE_CHECKOUT",
          "AIR_TRAVEL",
          "INVOICING",
          "RECURRING_PAYMENT_REPORT",
          "EXTENDED_PRO_PROCESSING_REPORT",
          "EXCEPTION_PROCESSING_REPORT",
          "TRANSACTION_DETAIL_REPORT",
          "ACCOUNT_MANAGEMENT_PERMISSION",
          "ACCESS_BASIC_PERSONAL_DATA",
          "ACCESS_ADVANCED_PERSONAL_DATA"
        ]
      },
      "permissions_list": {
        "type": "array",
        "description": "An array of permissions that the partner expects that the seller has granted for a third-party integration. Different products need different permissions, so permissions also depend on the product.",
        "items": {
          "$ref": "#/components/schemas/permissions"
        }
      },
      "person": {
        "title": "Person",
        "description": "Details of the person party.",
        "properties": {
          "name": {
            "description": "The legal name of the customer.",
            "$ref": "#/components/schemas/name"
          },
          "phone_contacts": {
            "$ref": "#/components/schemas/person_definitions-phone_details_list"
          },
          "home_address": {
            "description": "The home address of the account holder.",
            "$ref": "#/components/schemas/address"
          },
          "nationality_country_code": {
            "description": "The citizenship country code of the person",
            "$ref": "#/components/schemas/country_code"
          }
        }
      },
      "person_definitions-phone_details_list": {
        "type": "array",
        "description": "An array of contact phone numbers for the customer.",
        "items": {
          "$ref": "#/components/schemas/phone_details"
        },
        "minItems": 1,
        "maxItems": 10
      },
      "person_details": {
        "type": "object",
        "title": "Person Details",
        "description": "The customer's personal details.",
        "additionalProperties": false,
        "properties": {
          "email_address": {
            "description": "The primary email address of the account.",
            "$ref": "#/components/schemas/email_address"
          },
          "name": {
            "description": "The legal name of the customer.",
            "$ref": "#/components/schemas/name"
          },
          "phone_contacts": {
            "$ref": "#/components/schemas/phone_details_list"
          },
          "home_address": {
            "description": "The home address of the account holder.",
            "$ref": "#/components/schemas/address"
          },
          "nationality_country_code": {
            "description": "The [two-character ISO-3166-1 country code](/docs/api/reference/country-codes/) for the nationality of the account holder. Can include one of the PayPal-supported countries.",
            "$ref": "#/components/schemas/country_code"
          },
          "identity_documents": {
            "$ref": "#/components/schemas/identity_document_list"
          },
          "account_owner_relationships": {
            "$ref": "#/components/schemas/account_owner_relationship_list"
          }
        }
      },
      "phone": {
        "type": "object",
        "title": "Phone",
        "description": "The phone number, in its canonical international [E.164 numbering plan format](https://www.itu.int/rec/T-REC-E.164/en).",
        "properties": {
          "country_code": {
            "type": "string",
            "description": "The country calling code (CC), in its canonical international [E.164 numbering plan format](https://www.itu.int/rec/T-REC-E.164/en). The combined length of the CC and the national number must not be greater than 15 digits. The national number consists of a national destination code (NDC) and subscriber number (SN).",
            "minLength": 1,
            "maxLength": 3,
            "pattern": "^[0-9]{1,3}?$"
          },
          "national_number": {
            "type": "string",
            "description": "The national number, in its canonical international [E.164 numbering plan format](https://www.itu.int/rec/T-REC-E.164/en). The combined length of the country calling code (CC) and the national number must not be greater than 15 digits. The national number consists of a national destination code (NDC) and subscriber number (SN).",
            "minLength": 1,
            "maxLength": 14,
            "pattern": "^[0-9]{1,14}?$"
          },
          "extension_number": {
            "type": "string",
            "description": "The extension number.",
            "minLength": 1,
            "maxLength": 15,
            "pattern": "^[0-9]{1,15}?$"
          }
        },
        "required": [
          "country_code",
          "national_number"
        ]
      },
      "phone_details": {
        "type": "object",
        "description": "The phone number and the phone type.",
        "title": "Phone Details",
        "additionalProperties": false,
        "properties": {
          "phone_number_details": {
            "description": "The phone number details.",
            "$ref": "#/components/schemas/phone"
          },
          "phone_type": {
            "$ref": "#/components/schemas/phone_type"
          }
        },
        "required": [
          "phone_number_details",
          "phone_type"
        ]
      },
      "phone_details_list": {
        "type": "array",
        "description": "An array of contact phone numbers for the customer.",
        "items": {
          "$ref": "#/components/schemas/phone_details"
        }
      },
      "phone_type": {
        "type": "string",
        "title": "Phone Type",
        "description": "The phone type.",
        "enum": [
          "FAX",
          "HOME",
          "MOBILE",
          "OTHER",
          "PAGER"
        ]
      },
      "product": {
        "type": "object",
        "title": "Product",
        "description": "The seller product information.",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the product.",
            "enum": [
              "EXPRESS_CHECKOUT",
              "WEBSITE_PAYMENTS_STANDARD",
              "MASS_PAYMENT",
              "EMAIL_PAYMENTS",
              "EBAY_CHECKOUT",
              "PAYFLOW_LINK",
              "PAYFLOW_PRO",
              "WEBSITE_PAYMENTS_PRO_3_0",
              "WEBSITE_PAYMENTS_PRO_2_0",
              "VIRTUAL_TERMINAL",
              "HOSTED_SOLE_SOLUTION",
              "BILL_ME_LATER",
              "MOBILE_EXPRESS_CHECKOUT",
              "PAYPAL_HERE",
              "MOBILE_IN_STORE",
              "PAYPAL_STANDARD",
              "MOBILE_PAYPAL_STANDARD",
              "MOBILE_PAYMENT_ACCEPTANCE",
              "PAYPAL_ADVANCED",
              "PAYPAL_PRO",
              "ENHANCED_RECURRING_PAYMENTS",
              "PPCP_STANDARD",
              "PPCP_CUSTOM",
              "PAYMENT_METHODS",
              "ADVANCED_VAULTING"
            ]
          },
          "vetting_status": {
            "type": "string",
            "description": "The risk vetting status of product, if applicable.",
            "enum": [
              "APPROVED",
              "PENDING",
              "DECLINED",
              "SUBSCRIBED",
              "IN_REVIEW",
              "NEED_MORE_DATA",
              "DENIED"
            ]
          },
          "status": {
            "type": "string",
            "description": "The status of product bundle, if applicable.",
            "enum": [
              "ACTIVE",
              "INACTIVE",
              "PENDING"
            ]
          },
          "capabilities": {
            "$ref": "#/components/schemas/account_capability_names_list"
          }
        }
      },
      "product-integration": {
        "type": "object",
        "title": "Product Integration",
        "description": "The required information for a partner to integrate this product.",
        "properties": {
          "product": {
            "type": "string",
            "description": "The product.",
            "enum": [
              "EXPRESS_CHECKOUT",
              "WEBSITE_PAYMENTS_STANDARD",
              "MASS_PAYMENT",
              "EMAIL_PAYMENTS",
              "EBAY_CHECKOUT",
              "PAYFLOW_LINK",
              "PAYFLOW_PRO",
              "WEBSITE_PAYMENTS_PRO_3_0",
              "WEBSITE_PAYMENTS_PRO_2_0",
              "VIRTUAL_TERMINAL",
              "HOSTED_SOLE_SOLUTION",
              "BILL_ME_LATER",
              "MOBILE_EXPRESS_CHECKOUT",
              "PAYPAL_HERE",
              "MOBILE_IN_STORE",
              "PAYPAL_STANDARD",
              "MOBILE_PAYPAL_STANDARD",
              "MOBILE_PAYMENT_ACCEPTANCE",
              "PAYPAL_ADVANCED",
              "PAYPAL_PRO",
              "ENHANCED_RECURRING_PAYMENTS"
            ]
          },
          "integration_type": {
            "type": "string",
            "description": "The integration type for the product as third or first party or sellers that are onboarded through this partner.",
            "enum": [
              "FIRST_PARTY",
              "THIRD_PARTY"
            ]
          },
          "credential_type": {
            "type": "string",
            "description": "The credential type for a first-party integration. Required if `integration_type` is provided.",
            "enum": [
              "SIGNATURE",
              "CERTIFICATE",
              "OAUTH_TOKEN"
            ]
          },
          "permissions": {
            "$ref": "#/components/schemas/permissions_list"
          }
        }
      },
      "product-integration_list": {
        "type": "array",
        "description": "An array of required information for a partner to integrate this product. Varies based on the product to integrate.",
        "items": {
          "$ref": "#/components/schemas/product-integration"
        }
      },
      "product-preferences": {
        "type": "object",
        "title": "Product Preferences",
        "description": "The product preferences. A partner can customize these preferences based on the country and product.",
        "properties": {
          "product": {
            "type": "string",
            "description": "The product to which these preferences belong.",
            "enum": [
              "EXPRESS_CHECKOUT",
              "WEBSITE_PAYMENTS_STANDARD",
              "MASS_PAYMENT",
              "EMAIL_PAYMENTS",
              "EBAY_CHECKOUT",
              "PAYFLOW_LINK",
              "PAYFLOW_PRO",
              "WEBSITE_PAYMENTS_PRO_3_0",
              "WEBSITE_PAYMENTS_PRO_2_0",
              "VIRTUAL_TERMINAL",
              "HOSTED_SOLE_SOLUTION",
              "BILL_ME_LATER",
              "MOBILE_EXPRESS_CHECKOUT",
              "PAYPAL_HERE",
              "MOBILE_IN_STORE",
              "PAYPAL_STANDARD",
              "MOBILE_PAYPAL_STANDARD",
              "MOBILE_PAYMENT_ACCEPTANCE",
              "PAYPAL_ADVANCED",
              "PAYPAL_PRO",
              "ENHANCED_RECURRING_PAYMENTS"
            ]
          },
          "url": {
            "type": "string",
            "description": "The URL to which to redirect the seller after sign-up is complete.",
            "format": "uri",
            "maxLength": 2048
          }
        }
      },
      "product-preferences_list": {
        "type": "array",
        "description": "An array of product preferences. Can change for a country or product.",
        "items": {
          "$ref": "#/components/schemas/product-preferences"
        }
      },
      "product_list": {
        "type": "array",
        "description": "An array of all products that are integrated with the partner for the seller.",
        "items": {
          "$ref": "#/components/schemas/product"
        }
      },
      "product_name": {
        "type": "string",
        "description": "The PayPal product for which the customer is onboarded.",
        "title": "Product Name",
        "enum": [
          "EXPRESS_CHECKOUT",
          "PPPLUS",
          "WP_PRO",
          "PPCP",
          "PAYMENT_METHODS",
          "ADVANCED_VAULTING"
        ]
      },
      "product_name_list": {
        "type": "array",
        "description": "An array of PayPal products to which the partner wants to onboard the customer.",
        "items": {
          "$ref": "#/components/schemas/product_name"
        }
      },
      "purpose_code_enum": {
        "type": "string",
        "title": "Purpose Code",
        "description": "The purpose code. Required only for India. For more information, see the Reserve Bank Of India web site. Value is:<ul><li><code>P0104</code>. Cross border delivery of goods and services.</li><li><code>P0301</code>. Business related travel purchase.</li><li><code>P0801</code>. Hardware consulting.</li><li><code>P0802</code>. Software consulting.</li><li><code>P0803</code>. Data processing consulting.</li><li><code>P0805</code>. Freelance journalism.</li><li><code>P0806</code>. Other information services.</li><li><code>P0902</code>. Licensing revenues.</li><li><code>P1004</code>. Legal.</li><li><code>P1005</code>. Accounting and tax.</li><li><code>P1006</code>. Business and management consultancy.</li><li><code>P1007</code>. Advertising and market research.</li><li><code>P1008</code>. Research and development.</li><li><code>P1009</code>. Architectural services.</li></ul>",
        "enum": [
          "P0104",
          "P0301",
          "P0801",
          "P0802",
          "P0803",
          "P0805",
          "P0806",
          "P0902",
          "P1004",
          "P1005",
          "P1006",
          "P1007",
          "P1008",
          "P1009"
        ]
      },
      "referral_data": {
        "type": "object",
        "title": "Referral Data",
        "description": "The referral data that partners share with PayPal.",
        "additionalProperties": false,
        "properties": {
          "customer_data": {
            "$ref": "#/components/schemas/user"
          },
          "requested_capabilities": {
            "$ref": "#/components/schemas/capabilities_list"
          },
          "web_experience_preference": {
            "$ref": "#/components/schemas/web_experience_preference"
          },
          "collected_consents": {
            "$ref": "#/components/schemas/legal_consent_list"
          },
          "products": {
            "$ref": "#/components/schemas/product_name_list"
          }
        }
      },
      "referral_data_response": {
        "type": "object",
        "title": "Referral Data Response",
        "description": "The share referral data response.",
        "properties": {
          "partner_referral_id": {
            "type": "string",
            "description": "The ID to access the customer's data shared by the partner with PayPal.",
            "readOnly": true
          },
          "submitter_payer_id": {
            "type": "string",
            "description": "The payer ID of the partner who shared the referral data.",
            "readOnly": true
          },
          "referral_data": {
            "$ref": "#/components/schemas/referral_data"
          },
          "links": {
            "$ref": "#/components/schemas/link_description_list"
          }
        }
      },
      "region-preferences": {
        "type": "object",
        "title": "Region Preferences",
        "description": "The region preferences.",
        "properties": {
          "country_code": {
            "type": "string",
            "description": "The [two-character ISO-3166-1 country code](/docs/api/reference/country-codes/) for the country that is associated with the preferences."
          },
          "product_preferences": {
            "$ref": "#/components/schemas/product-preferences_list"
          },
          "return_message": {
            "$ref": "#/components/schemas/message_list"
          }
        }
      },
      "region-preferences_list": {
        "type": "array",
        "description": "An array of region-specific preferences.",
        "items": {
          "$ref": "#/components/schemas/region-preferences"
        }
      },
      "rest_api_integration": {
        "type": "object",
        "title": "REST API Integration",
        "description": "The integration details for PayPal REST endpoints.",
        "properties": {
          "integration_method": {
            "type": "string",
            "description": "The REST-credential integration method.",
            "default": "PAYPAL",
            "enum": [
              "BRAINTREE",
              "PAYPAL"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "BRAINTREE"
                ],
                "description": "Braintree integration method."
              },
              {
                "type": "string",
                "enum": [
                  "PAYPAL"
                ],
                "description": "PayPal integration method."
              }
            ]
          },
          "integration_type": {
            "type": "string",
            "title": "Integration Type",
            "description": "The type of REST-endpoint integration. To integrate with Braintree v.zero for PayPal REST endpoints, specify `REST_THIRD_PARTY_DETAILS`.",
            "enum": [
              "FIRST_PARTY",
              "THIRD_PARTY"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "FIRST_PARTY"
                ],
                "description": "Rest First Party Integration Type"
              },
              {
                "type": "string",
                "enum": [
                  "THIRD_PARTY"
                ],
                "description": "A third-party integration."
              }
            ]
          },
          "integration_channel": {
            "type": "string",
            "title": "Integration Channel",
            "description": "The rest api integration channel.",
            "enum": [
              "DEFERRED_ONBOARDING"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "DEFERRED_ONBOARDING"
                ],
                "description": "User onboards PayPal through the deferred onboarding flow."
              }
            ]
          }
        }
      },
      "rest_endpoint_features_enum": {
        "type": "string",
        "title": "REST Endpoint Features",
        "description": "The REST endpoint.",
        "enum": [
          "PAYMENT",
          "REFUND",
          "PARTNER_FEE",
          "DELAY_FUNDS_DISBURSEMENT",
          "READ_SELLER_DISPUTE",
          "UPDATE_SELLER_DISPUTE",
          "ACCESS_MERCHANT_INFORMATION",
          "INVOICE_READ_WRITE",
          "ADVANCED_TRANSACTIONS_SEARCH"
        ],
        "oneOf": [
          {
            "type": "string",
            "enum": [
              "PAYMENT"
            ],
            "description": "The REST endpoint feature for payments."
          },
          {
            "type": "string",
            "enum": [
              "REFUND"
            ],
            "description": "The REST endpoint feature for refunds."
          },
          {
            "type": "string",
            "enum": [
              "PARTNER_FEE"
            ],
            "description": "The REST endpoint feature for partner fees."
          },
          {
            "type": "string",
            "enum": [
              "DELAY_FUNDS_DISBURSEMENT"
            ],
            "description": "The REST endpoint feature for delayed funds disbursments."
          },
          {
            "type": "string",
            "enum": [
              "READ_SELLER_DISPUTE"
            ],
            "description": "The REST endpoint feature for read seller disputes."
          },
          {
            "type": "string",
            "enum": [
              "UPDATE_SELLER_DISPUTE"
            ],
            "description": "The REST endpoint feature for updating seller disputes."
          },
          {
            "type": "string",
            "enum": [
              "ACCESS_MERCHANT_INFORMATION"
            ],
            "description": "The REST endpoint feature for allowig partner to access merchant's information."
          },
          {
            "type": "string",
            "enum": [
              "INVOICE_READ_WRITE"
            ],
            "description": "The REST endpoint feature for allowig partner to access and update merchant's invoices."
          },
          {
            "type": "string",
            "enum": [
              "ADVANCED_TRANSACTIONS_SEARCH"
            ],
            "description": "The REST endpoint feature for advanced transactions searches."
          }
        ]
      },
      "rest_endpoint_features_enum_list": {
        "type": "array",
        "description": "An array of features that partner can access, or use, in PayPal on behalf of the seller. The seller grants permission for these features to the partner.",
        "items": {
          "$ref": "#/components/schemas/rest_endpoint_features_enum"
        }
      },
      "rest_first_party_details": {
        "type": "object",
        "title": "REST First-Party Details",
        "description": "The integration details for PayPal First Party REST endpoints.",
        "properties": {
          "partner_client_id": {
            "type": "string",
            "description": "The client ID of the partner.",
            "minLength": 1,
            "maxLength": 50
          },
          "feature_list": {
            "$ref": "#/components/schemas/integration_details_rest_endpoint_features_enum_list"
          },
          "seller_nonce": {
            "type": "string",
            "description": "S256 - The code verifier must be high-entropy cryptographic random string with a byte length of 43-128 range.",
            "minLength": 44,
            "maxLength": 128
          }
        }
      },
      "rest_third_party_details": {
        "type": "object",
        "title": "REST Third-Party Details",
        "description": "The integration details for PayPal REST endpoints.",
        "properties": {
          "partner_client_id": {
            "type": "string",
            "description": "The client ID of the partner's API caller account."
          },
          "feature_list": {
            "$ref": "#/components/schemas/rest_endpoint_features_enum_list"
          }
        }
      },
      "restrictions": {
        "type": "string",
        "description": "A restriction name."
      },
      "restrictions_list": {
        "type": "array",
        "description": "An array of the restriction names.",
        "items": {
          "$ref": "#/components/schemas/restrictions"
        }
      },
      "scopes": {
        "type": "string",
        "description": "The individual scope name."
      },
      "scopes_list": {
        "type": "array",
        "description": "An array of scopes that the seller granted the partner.",
        "items": {
          "$ref": "#/components/schemas/scopes"
        }
      },
      "signature": {
        "type": "object",
        "title": "Signature",
        "description": "The signature portion of the seller credentials.",
        "properties": {
          "api_user_name": {
            "type": "string",
            "description": "The API user name of the seller."
          },
          "api_password": {
            "type": "string",
            "description": "The API password of the seller."
          },
          "signature": {
            "type": "string",
            "description": "The signature credential of the seller."
          }
        }
      },
      "user": {
        "type": "object",
        "title": "User",
        "description": "The customer's business and personal data that is required to create an account.",
        "additionalProperties": false,
        "properties": {
          "customer_type": {
            "type": "string",
            "description": "The type of PayPal account to create, which is consumer or seller.",
            "deprecated": true,
            "enum": [
              "CONSUMER",
              "MERCHANT"
            ],
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "CONSUMER"
                ],
                "description": "Consumer account."
              },
              {
                "type": "string",
                "enum": [
                  "MERCHANT"
                ],
                "description": "Seller account."
              }
            ]
          },
          "person_details": {
            "$ref": "#/components/schemas/person_details"
          },
          "business_details": {
            "$ref": "#/components/schemas/business_details"
          },
          "financial_instrument_data": {
            "$ref": "#/components/schemas/financial_instrument_data"
          },
          "preferred_language_code": {
            "type": "string",
            "title": "Preferred Language Code",
            "description": "The locale code of the user's preferred language.",
            "pattern": "^([a-z]){2}_([A-Z]){2}$",
            "deprecated": true
          },
          "primary_currency_code": {
            "description": "The primary [three-character ISO-4217 currency code](/docs/api/reference/currency-codes/) of the account."
          },
          "referral_user_payer_id": {
            "$ref": "#/components/schemas/account_identifier"
          },
          "partner_specific_identifiers": {
            "$ref": "#/components/schemas/partner_specific_identifiers_list"
          }
        }
      },
      "web_experience_preference": {
        "type": "object",
        "title": "Web Experience Preference",
        "description": "The preference to customize the web experience of the customer.",
        "additionalProperties": false,
        "properties": {
          "partner_logo_url": {
            "type": "string",
            "format": "uri",
            "description": "The partner logo URL to display in the seller onboarding flow.<blockquote><strong>Note:</strong> While there is no restriction on the size of your image, PayPal forces the max width to 106px and max height to 29px. The best resolution you can provide is 106px x 29px.</blockquote>"
          },
          "return_url": {
            "type": "string",
            "format": "uri",
            "description": "The URL to which to redirect the customer upon completion of the onboarding process."
          },
          "return_url_description": {
            "type": "string",
            "description": "The description of the return URL."
          },
          "action_renewal_url": {
            "type": "string",
            "format": "uri",
            "description": "If `renew_action_url` expires, redirect the customer to this URL."
          },
          "show_add_credit_card": {
            "type": "boolean",
            "description": "Indicates whether to show an add credit card page."
          },
          "show_mobile_confirm": {
            "type": "boolean",
            "description": "Indicates whether to ask the customer to initiate confirmation of their mobile phone (the phone that the partner designated as `MOBILE` in the customer data). Default is`false`."
          },
          "use_mini_browser": {
            "type": "boolean",
            "description": "Indicates whether to provide a single page signup flow in a mini browser. Default is to provide a full-size, multi-page flow."
          },
          "use_hua_email_confirmation": {
            "type": "boolean",
            "description": "Indicates whether to use the `hosted_user_agreement_url` to confirm the customer's email address. If `true`, PayPal appends the email confirmation code to `hosted_user_agreement_url`, and when a customer successfully accesses the hosted user agreement URL, confirms the customer's email address. If `false`, PayPal does not append the confirmation code to the URL and does not confirm the email address."
          }
        }
      },
      "website_urls": {
        "type": "string",
        "description": "The URL for the business website.",
        "format": "uri"
      },
      "website_urls_list": {
        "type": "array",
        "description": "An array of website URLs for the business.",
        "items": {
          "$ref": "#/components/schemas/website_urls"
        }
      }
    },
    "parameters": {
      "partner_referral_id": {
        "name": "partner_referral_id",
        "in": "path",
        "description": "The ID of the partner-referrals data for which to show details.",
        "required": true,
        "schema": {
          "type": "string"
        }
      },
      "partner_id": {
        "name": "partner_id",
        "in": "path",
        "description": "The ID of the partner for which to show onboarded seller's credentials, which is the partner's PayPal account number. To find this ID, log in to the partner's PayPal business account. Navigate to **Profile**, click **Profile and settings**, and click **My business info**. The account number appears in the **Merchant account ID** section.",
        "required": true,
        "schema": {
          "type": "string"
        }
      },
      "tracking_id": {
        "name": "tracking_id",
        "in": "query",
        "description": "Filters the sellers in the response by this partner-provided seller ID (`merchant_id`).",
        "required": true,
        "schema": {
          "type": "string"
        }
      },
      "merchant_id": {
        "name": "merchant_id",
        "in": "path",
        "description": "The ID of the seller for which to show status information.",
        "required": true,
        "schema": {
          "type": "string"
        }
      },
      "fields": {
        "name": "fields",
        "in": "query",
        "description": "Filters the fields in the response to this comma-separated list of fields.",
        "schema": {
          "type": "string"
        }
      },
      "id": {
        "name": "id",
        "in": "path",
        "description": "The ID of the partner, which is the partner's PayPal account number. To find this ID, log in to the partner's PayPal business account. Navigate to **Profile**, click **Profile and settings**, and click **My business info**. The account number appears in the **Merchant account ID** section.",
        "required": true,
        "schema": {
          "type": "string",
          "minLength": 1,
          "maxLength": 20,
          "pattern": "^.*$"
        }
      },
      "country_code": {
        "name": "country_code",
        "in": "query",
        "description": "The country code to load region preferences.",
        "schema": {
          "type": "string",
          "minLength": 2,
          "maxLength": 2,
          "pattern": "^([a-zA-Z]{2})$"
        }
      },
      "product": {
        "name": "product",
        "in": "query",
        "description": "The product to load region and integration preferences.",
        "schema": {
          "type": "string",
          "minLength": 1,
          "maxLength": 20,
          "pattern": "^.*$"
        }
      },
      "content_type": {
        "name": "Content-type",
        "in": "header",
        "description": "The Content-type header MUST be described in all externally-accessible APIs.",
        "schema": {
          "type": "string",
          "minLength": 1,
          "maxLength": 4000,
          "pattern": "^.*$"
        }
      }
    }
  },
  "x-errors": [
    {
      "name": "INTERNAL_ERROR",
      "message": "The process cannot be processed due to internal error.",
      "description": "An internal error occurred."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-BUSINESS_ERROR",
      "message": "<code>BUSINESS_ERROR</code>.",
      "description": "The caller is not a business account or the account is closed or locked."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-CONSENT_ALREADY_EXISTS",
      "message": "<code>CONSENT_ALREADY_EXISTS</code>.",
      "description": "The consent between this seller and partner already exists. <blockquote><strong>Note:</strong> Use <code>PATCH</code> to update the content.</blockquote>"
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-FAILED_TO_SET_OAUTH_INTEGRATION",
      "message": "<code>FAILED_TO_SET_OAUTH_INTEGRATION</code>.",
      "description": "The OAuth integrations could not be set for the partner and seller."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-FAILED_WHILE_GETTING_OAUTH_INTEGRATION",
      "message": "<code>FAILED_WHILE_GETTING_OAUTH_INTEGRATION</code>.",
      "description": "The OAuth integrations could not be fetched for the partner and seller."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-MERCHANT_ID_SAME_AS_PARTNER_ID",
      "message": "<code>MERCHANT_ID_SAME_AS_PARTNER_ID</code>.",
      "description": "The seller ID is same as the partner ID."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-NO_ATTRIBUTION_WITH_MERCHANT",
      "message": "<code>NO_ATTRIBUTION_WITH_MERCHANT</code>.",
      "description": "The partner can only get the seller details if the seller is referred by the partner."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-PARTNER_MERCHANT_CLIENT_ASSOC_ALREADY_PRESENT",
      "message": "<code>PARTNER_MERCHANT_CLIENT_ASSOC_ALREADY_PRESENT</code>.",
      "description": "The seller client ID already exists for the `PartnerId`-`MerchantId`-`PartnerClientId` combination."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-PARTNER_MERCHANT_CLIENT_ID_COMBINATION_INCORRECT",
      "message": "<code>PARTNER_MERCHANT_CLIENT_ID_COMBINATION_INCORRECT</code>.",
      "description": "The combination of `partnerClientId`-`merchantClientId` is incorrect for this `partnerId`-`merchantId`."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-PARTNER_REFERRAL_LINK_ALREADY_EXISTS",
      "message": "<code>PARTNER_REFERRAL_LINK_ALREADY_EXISTS</code>.",
      "description": "The link between this lookup type and `referral_id` already exists."
    },
    {
      "name": "PARTNER_BUSINESS_ERROR-PREFERENCES_ALREADY_EXIST",
      "message": "<code>PREFERENCES_ALREADY_EXIST</code>.",
      "description": "The preferences already exist for this partner account. Note: Use `PATCH` to update the content."
    },
    {
      "name": "RESOURCE_NOT_FOUND_ERROR-AGREEMENTS_NOT_FOUND",
      "message": "<code>AGREEMENTS_NOT_FOUND</code>.",
      "description": "Agreements were not found for this account."
    },
    {
      "name": "RESOURCE_NOT_FOUND_ERROR-INTEGRATIONS_NOT_FOUND",
      "message": "<code>INTEGRATIONS_NOT_FOUND</code>.",
      "description": "No integration was found between the partner and seller."
    },
    {
      "name": "RESOURCE_NOT_FOUND_ERROR-INVALID_CONSENT_ID",
      "message": "<code>INVALID_CONSENT_ID</code>.",
      "description": "The consent was not found."
    },
    {
      "name": "RESOURCE_NOT_FOUND_ERROR-INVALID_REFERRAL_ID",
      "message": "<code>INVALID_REFERRAL_ID</code>.",
      "description": "The referral ID is not valid."
    },
    {
      "name": "RESOURCE_NOT_FOUND_ERROR-LINK_NOT_FOUND",
      "message": "<code>LINK_NOT_FOUND</code>.",
      "description": "No referrals are linked with this account."
    },
    {
      "name": "UNAUTHORIZED-AUTHORIZATION_ERROR",
      "message": "<code>AUTHORIZATION_ERROR</code>.",
      "description": "This API call is not authorized."
    },
    {
      "name": "UNAUTHORIZED-INVALID_CONSENT_OWNERSHIP",
      "message": "<code>INVALID_CONSENT_OWNERSHIP</code>.",
      "description": "The user is not the owner of the consent."
    },
    {
      "name": "UNAUTHORIZED",
      "message": "<code>INVALID_PARTNER_RELATIONSHIP</code>.",
      "description": "The partner cannot use another partner for this API."
    },
    {
      "name": "UNPROCESSABLE_ENTITY",
      "message": "<code>SUCCESS_WITH_WARNING</code>.",
      "description": "The request is not valid."
    },
    {
      "name": "USER_BUSINESS_ERROR",
      "message": "<code>USER_NOT_FOUND</code>.",
      "description": "The account for this ID does not exist."
    }
  ]
}