PayPal payment method tokens

Payment Method Tokens API Version v3 The Payment Method Tokens API saves payment methods so payers don't have to enter details for future transactions. Payers can check out faster or pay without being present after they agree to save a payment method.

The API associates a payment method with a temporary setup token. Pass the setup token to the API to exchange the setup token for a permanent token.

The permanent token represents a payment method that's saved to the vault. This token can be used repeatedly for checkout or recurring transactions such as subscriptions.

Create payment token for a given payment source post /v3/vault/payment-tokens Try it Creates a Payment Token from the given payment source and adds it to the Vault of the associated customer.

Security Oauth2 Request header Parameters PayPal-Request-Id
string [ 1 .. 10000 ] characters The server stores keys for 3 hours.

Request Body schema: application/json application/json required Payment Token creation with a financial instrument and an optional customer_id.

payment_source required object The payment method to vault with the instrument details.

customer
object Customer in merchant's or partner's system of records.

Responses 200Idempotent response for a successful creation of payment token. 201A successful creation of payment token. 400Request is not well-formed, syntactically incorrect, or violates schema. 403Authorization failed due to insufficient permissions. 404Request contains reference to resources that do not exist. 422The requested action could not be performed, semantically incorrect, or failed business validation. 500An internal server error has occurred. Request samples Payload cURL

application/json application/json

Sample 1 - 201 - Create Payment Token - PayPal Wallet from Setup Token Sample 1 - 201 - Create Payment Token - PayPal Wallet from Setup Token CopyExpand allCollapse all { "payment_source": { "token": { "id": "4BD1763VB2781894", "type": "SETUP_TOKEN" } } } Response samples 200 201 400 403 404

2 more 2 more application/json

Sample 1 - 201 - Create Payment Token - PayPal Wallet from Setup Token Sample 1 - 201 - Create Payment Token - PayPal Wallet from Setup Token CopyExpand allCollapse all { "id": "8kk8451t", "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "payment_source": { "paypal": { "description": "Description for PayPal to be shown to PayPal payer", "email_address": "john.doe@example.com", "account_id": "VYYFH3WJ4JPJQ", "shipping": { "name": { "full_name": "John Doe" }, "address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } }, "usage_pattern": "IMMEDIATE", "usage_type": "MERCHANT", "customer_type": "CONSUMER", "name": { "given_name": "John", "surname": "Doe" }, "address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8451t", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8451t", "method": "DELETE", "encType": "application/json" } ] } List all payment tokens get /v3/vault/payment-tokens Try it Returns all payment tokens for a customer.

Security Oauth2 Request query Parameters customer_id required string [ 7 .. 36 ] characters A unique identifier representing a specific customer in merchant's/partner's system or records.

page_size
integer [ 1 .. 5 ] Default: 5 A non-negative, non-zero integer indicating the maximum number of results to return at one time.

page
integer [ 1 .. 10 ] Default: 1 A non-negative, non-zero integer representing the page of the results.

total_required
boolean Default: false A boolean indicating total number of items (total_items) and pages (total_pages) are expected to be returned in the response.

Request Body schema: application/json application/json any Responses 200Successful execution. 400Request is not well-formed, syntactically incorrect, or violates schema. 403Authorization failed due to insufficient permissions. 500An internal server error has occurred. Request samples Payload cURL

application/json application/json Copy { } Response samples 200 400 403 500 application/json

Sample 1 - 200 - List Payment Tokens - Retrieve All Tokens for Customer Id Sample 1 - 200 - List Payment Tokens - Retrieve All Tokens for Customer Id CopyExpand allCollapse all { "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "payment_tokens": [ { "id": "8kk8451t", "customer": { "id": "BygeLlrpZF" }, "payment_source": { "card": { "name": "John Doe", "brand": "VISA", "last_digits": "1111", "expiry": "2027-02", "billing_address": { "id": "kk", "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8451t", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8451t", "method": "DELETE", "encType": "application/json" } ] }, { "id": "fgh6561t", "customer": { "id": "BygeLlrpZF" }, "payment_source": { "paypal": { "description": "Description for PayPal to be shown to PayPal payer", "email_address": "john.doe@example.com", "account_id": "VYYFH3WJ4JPJQ", "shipping": { "name": { "full_name": "John Doe" }, "address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } }, "usage_pattern": "IMMEDIATE", "usage_type": "MERCHANT", "customer_type": "CONSUMER", "name": { "given_name": "John", "surname": "Doe" }, "address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/fgh6561t", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/fgh6561t", "method": "DELETE", "encType": "application/json" } ] }, { "id": "hg654s1t", "customer": { "id": "BygeLlrpZF" }, "payment_source": { "venmo": { "description": "Description for Venmo to be shown to Venmo payer", "shipping": { "name": { "full_name": "John Doe" }, "address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } }, "usage_pattern": "IMMEDIATE", "usage_type": "MERCHANT", "customer_type": "CONSUMER", "email_address": "john.doe@example.com", "user_name": "johndoe", "name": { "given_name": "John", "surname": "Doe" }, "account_id": "VYYFH3WJ4JPJQ", "address": { "address_line_1": "PayPal", "address_line_2": "2211 North 1st Street", "admin_area_1": "CA", "admin_area_2": "San Jose", "postal_code": "96112", "country_code": "US" } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/hg654s1t", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/hg654s1t", "method": "DELETE", "encType": "application/json" } ] }, { "id": "8kk8457", "payment_source": { "apple_pay": { "card": { "name": "John Doe", "last_digits": "1111", "type": "CREDIT", "brand": "VISA", "billing_address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_1": "CA", "admin_area_2": "San Jose", "postal_code": "95131", "country_code": "US" } } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk845", "method": "GET" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk845", "method": "DELETE" } ] }, { "id": "8kk8458", "payment_source": { "bank": { "ach_debit": { "last_digits": "9991", "routing_number": "307075259", "account_type": "CHECKING", "ownership_type": "PERSONAL", "account_holder_name": "John Doe", "billing_address": { "country_code": "US" }, "verification": { "external": { "status": "VERIFIED" } } } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8458", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8458", "method": "DELETE", "encType": "application/json" } ] }, { "id": "8kk82r8", "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "payment_source": { "bank": { "ach_debit": { "last_digits": "9992", "routing_number": "307075260", "account_type": "CHECKING", "ownership_type": "PERSONAL", "account_holder_name": "John Doe", "billing_address": { "country_code": "US" }, "verification": { "paypal": { "method": "INSTANT_ACCOUNT_VERIFICATION", "status": "VERIFIED" } } } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8458", "method": "GET" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8458", "method": "DELETE" } ] }, { "id": "8kk8459", "payment_source": { "bank": { "sepa_debit": { "iban_last_chars": "5034", "account_holder_name": "John Doe", "billing_address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_1": "CA", "admin_area_2": "San Jose", "postal_code": "95131", "country_code": "US" }, "authorization_details": { "status": "AUTHORIZED" } } } }, "links": [ { "rel": "view-mandate", "href": "https://msmaster.qa.paypal.com/directdebit/mandate/view?id=8kk8459&auth_code=C21_A.AAdol4tFtU0Q60ilyOPiTmmDax_YC1T00fAlBH_Uef_orr3TtzkcyKO4IuSxBlWmFHUzEvhiOXxV5WqE1bWNwmDyvsliIg", "method": "GET" }, { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8459", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8459", "method": "DELETE", "encType": "application/json" } ] } ], "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens?customer_id=BygeLlrpZF&page=1&page_size=5&total_required=false", "method": "GET", "encType": "application/json" }, { "rel": "first", "href": "https://api-m.paypal.com/v3/vault/payment-tokens?customer_id=BygeLlrpZF&page=1&page_size=5&total_required=false", "method": "GET", "encType": "application/json" }, { "rel": "last", "href": "https://api-m.paypal.com/v3/vault/payment-tokens?customer_id=BygeLlrpZF&page=1&page_size=5&total_required=false", "method": "GET", "encType": "application/json" } ] } Retrieve a payment token get /v3/vault/payment-tokens/{id} Try it Returns a readable representation of vaulted payment source associated with the payment token id.

Security Oauth2 Request path Parameters id required string [ 1 .. 36 ] characters ID of the payment token.

Responses 200Successful execution. 403Authorization failed due to insufficient permissions. 404The specified resource does not exist. 500An internal server error has occurred. Request samples cURL

Sample 1 - 200 - Retrieve Payment Token - Card Token Sample 1 - 200 - Retrieve Payment Token - Card Token Copy curl -v -X GET https://api-m.sandbox.paypal.com/v3/vault/payment-tokens/8kk8451t \ -H 'Authorization: Bearer FULL_scoped_access_token'
Response samples 200 403 404 500 application/json

Sample 1 - 200 - Retrieve Payment Token - Card Token Sample 1 - 200 - Retrieve Payment Token - Card Token CopyExpand allCollapse all { "id": "8kk8451t", "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "payment_source": { "card": { "last_digits": "1111", "expiry": "2027-02", "brand": "VISA", "name": "John Doe", "billing_address": { "id": "kk", "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_2": "San Jose", "admin_area_1": "CA", "postal_code": "95131", "country_code": "US" } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8451t", "method": "GET", "encType": "application/json" }, { "rel": "delete", "href": "https://api-m.paypal.com/v3/vault/payment-tokens/8kk8451t", "method": "DELETE", "encType": "application/json" } ] } Delete payment token delete /v3/vault/payment-tokens/{id} Try it Delete the payment token associated with the payment token id.

Security Oauth2 Request path Parameters id required string [ 1 .. 36 ] characters ID of the payment token.

Responses 204The server has successfully executed the method, but there is no entity body to return. 400Request is not well-formed, syntactically incorrect, or violates schema. 403Authorization failed due to insufficient permissions. 500An internal server error has occurred. Request samples cURL

Sample 1 - 204 - Delete Payment Token Sample 1 - 204 - Delete Payment Token Copy curl -v -X DELETE https://api-m.sandbox.paypal.com/v3/vault/payment-tokens/8kk8451t \ -H 'Authorization: Bearer FULL_scoped_access_token'
Response samples 204 400 403 500 application/json

Sample 1 - 204 - Delete Payment Token Sample 1 - 204 - Delete Payment Token Copy { } Create a setup token post /v3/vault/setup-tokens Try it Creates a Setup Token from the given payment source and adds it to the Vault of the associated customer.

Security Oauth2 Request header Parameters PayPal-Request-Id
string [ 1 .. 10000 ] characters The server stores keys for 3 hours.

Request Body schema: application/json application/json required Setup Token creation with a instrument type optional financial instrument details and customer_id.

payment_source required object The payment method to vault with the instrument details.

customer
object Customer in merchant's or partner's system of records.

Responses 200Idempotent response for a successful creation of setup token. 201A successful creation of setup token. 400Request is not well-formed, syntactically incorrect, or violates schema. 403Authorization failed due to insufficient permissions. 422The requested action could not be performed, semantically incorrect, or failed business validation. 500An internal server error has occurred. Request samples Payload cURL

application/json application/json

Sample 1 - 201 - Create Setup Token - Card with Full Request Sample 1 - 201 - Create Setup Token - Card with Full Request CopyExpand allCollapse all { "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "payment_source": { "card": { "number": "4111111111111111", "expiry": "2027-02", "name": "John Doe", "security_code": "321", "billing_address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_1": "CA", "admin_area_2": "San Jose", "postal_code": "95131", "country_code": "US" } } } } Response samples 200 201 400 403 422

1 more 1 more application/json

Sample 1 - 201 - Create Setup Token - Card with Full Request Sample 1 - 201 - Create Setup Token - Card with Full Request CopyExpand allCollapse all { "id": "5C991763VB2781612", "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "status": "APPROVED", "payment_source": { "card": { "last_digits": "1111", "expiry": "2027-02", "name": "John Doe", "billing_address": { "address_line_1": "2211 N First Street", "address_line_2": "17.3.160", "admin_area_1": "CA", "admin_area_2": "San Jose", "postal_code": "95131", "country_code": "US" } } }, "links": [ { "rel": "self", "href": "https://api-m.paypal.com/v3/vault/setup-tokens/5C991763VB2781612", "method": "GET", "encType": "application/json" }, { "rel": "confirm", "href": "https://api-m.paypal.com/v3/vault/payment-token", "method": "POST", "encType": "application/json" } ] } Retrieve a setup token get /v3/vault/setup-tokens/{id} Try it Returns a readable representation of temporarily vaulted payment source associated with the setup token id.

Security Oauth2 Request path Parameters id required string [ 7 .. 36 ] characters ID of the setup token.

Responses 200Found requested setup-token, returned a payment method associated with the token. 400Request is not well-formed, syntactically incorrect, or violates schema 403Authorization failed due to insufficient permissions. 404The specified resource does not exist. 500An internal server error has occurred. Request samples cURL

Sample 1 - 200 - Retrieve Setup Token - Card with 3DS Contingency 3DS VERIFIED Sample 1 - 200 - Retrieve Setup Token - Card with 3DS Contingency 3DS VERIFIED Copy curl -v -X GET https://api-m.sandbox.paypal.com/v3/vault/setup-tokens/5C991763VB2781612 \ -H 'Authorization: Bearer LOW_scoped_access_token' \ -H 'PayPal-Request-ID: b5efbe82-bbad-4bb0-aeeb-bfef5b442e49'
Response samples 200 400 403 404 500 application/json

Sample 1 - 200 - Retrieve Setup Token - Card with 3DS Contingency 3DS VERIFIED Sample 1 - 200 - Retrieve Setup Token - Card with 3DS Contingency 3DS VERIFIED CopyExpand allCollapse all { "id": "5C991763VB2771612", "customer": { "id": "BygeLlrpZF", "merchant_customer_id": "customer@merchant.com" }, "status": "APPROVED", "payment_source": { "card": { "brand": "VISA", "last_digits": "1111", "verification_status": "VERIFIED", "network_transaction_reference": { "id": "20286098380002303", "date": "1020", "network": "VISA", "time": "2020-10-20T22:44:41.000Z" }, "verification": { "amount": { "value": "0.00", "currency_code": "USD" }, "processor_response": { "avs_code": "M", "cvv_code": "P" }, "three_d_secure": { "type": "THREE_DS_AUTHENTICATION", "eci_flag": "FULLY_AUTHENTICATED_TRANSACTION", "card_brand": "VISA", "enrolled": "Y", "pares_status": "Y", "three_ds_version": "2", "authentication_type": "DYNAMIC", "three_ds_server_transaction_id": "3d-secure-txn-id" } }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y" } } } }, "links": [ { "href": "https://api-m.paypal.com/v3/vault/payment-token", "rel": "confirm", "method": "POST", "encType": "application/json" }, { "href": "https://api-m.paypal.com/v3/vault/setup-tokens/5C991763VB2771612", "rel": "self", "method": "GET", "encType": "application/json" } ] } Errors CARD_EXPIRATION_YEAR_IS_INVALID Message: Expiration year outside of acceptable range.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

CREDIT_CARD_NUMBER_IS_INVALID Message: Credit card number is invalid.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

EXACTLY_ONE_FIELD_REQUIRED Message: Exactly one payment source is required.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

INTERNAL_SERVER_ERROR Message: A system or application error occurred. Although the client appears to provide a correct request, something unexpected occurred on the server.

Description: An internal server error occurred.

INVALID_EXPIRY_DATE Message: Expiry date is invalid. Expiry date should be a date in future and within the threshold for the payment source.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

INVALID_INTEGER_MIN_VALUE Message: The integer value of a field is too small.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

INVALID_PARAMETER_SYNTAX Message: The value of a field does not conform to the expected format.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

INVALID_SECURITY_CODE Message: The security code provided does not conform to the card number provided.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

INVALID_STRING_LENGTH Message: The value of a field is either too short or too long.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

INVALID_STRING_MAX_LENGTH Message: The value of a field is too long.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

MALFORMED_REQUEST_JSON Message: The request JSON is not well formed.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

MISSING_REQUIRED_PARAMETER Message: A required field / parameter is missing.

Description: The request is not well-formed, is syntactically incorrect, or violates schema.

NOT_ENABLED_TO_VAULT_PAYMENT_SOURCE Message: The API caller or the merchant on whose behalf the API call is initiated is not allowed to vault the given source. Please contact PayPal customer support for assistance.

Description: Authorization failed due to insufficient permissions.

OPERATION_NOT_SUPPORTED Message: Specified operation not supported on any fields.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

PAYER_ACTION_REQUIRED Message: Please make sure setup up token is approved. Please complete the approval flow Payer Approval.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

PAYPAL_REQUEST_ID_PREVIOUSLY_USED Message: The PayPal-Request-ID has already been used for another request.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

PERMISSION_DENIED Message: You do not have permission to access or perform operations on this resource.

Description: Authorization failed due to insufficient permissions.

RESOURCE_NOT_FOUND Message: The specified resource does not exist.

Description: The requested resource ID was not found

SETUP_TOKEN_ALREADY_TOKENIZED Message: The setup token has been used previously to generate a payment token.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

SETUP_TOKEN_NOT_TOKENIZED Message: The payment source represented by this setup token is not vaulted.

Description: The requested action could not be performed, semantically incorrect, or failed business validation.

TOKEN_NOT_FOUND Message: The specified token id does not exist.

Description: The requested resource ID was not found.

Definitions 3ds_result any (3ds_result) Copy null Account Registration Type The level of customer registration for the PayPal account.

string [ 1 .. 255 ] characters ^[A-Z0-9_]+$ The level of customer registration for the PayPal account.

Value Description ANONYMOUS Anonymous account. The user does not even know that they have used PayPal. Typically used for the counterparty in a DCC or VT scenario where a merchant is directly charging a credit card. Copy "ANONYMOUS" activity_timestamps The date and time stamps that are common to authorized payment, captured payment, and refund transactions.

create_time string [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time when the transaction occurred, in Internet date and time format.

update_time string [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time when the transaction was last updated, in Internet date and time format.

Copy { "create_time": "stringstringstringst", "update_time": "stringstringstringst" } Address request details. Address request details.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. id
string [ 1 .. 36 ] characters The resource ID of the address.

Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" } Address request details. Address request details.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. id
string [ 1 .. 36 ] characters The resource ID of the address.

company string [ 1 .. 100 ] characters The name of the company or business associated to the address.

phone
string [ 1 .. 16 ] characters The phone number that can go on the mailing label with the address to track the shipping. Phone number is in E.164 format.

name
object The name of the party.

phone_number
object Phone number associated to the address.

CopyExpand allCollapse all { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string", "company": "string", "phone": "string", "name": { "given_name": "string", "surname": "string" }, "phone_number": { "country_code": "str", "national_number": "string", "extension_number": "string" } } amount_breakdown The breakdown of the amount. Breakdown provides details such as total item amount, total tax amount, shipping, handling, insurance, and discounts, if any.

item_total
object The subtotal for all items. Required if the request includes purchase_units[].items[].unit_amount. Must equal the sum of (items[].unit_amount * items[].quantity) for all items. item_total.value can not be a negative number.

shipping
object The shipping fee for all items within a given purchase_unit. shipping.value can not be a negative number.

handling
object The handling fee for all items within a given purchase_unit. handling.value can not be a negative number.

tax_total
object The total tax for all items. Required if the request includes purchase_units.items.tax. Must equal the sum of (items[].tax * items[].quantity) for all items. tax_total.value can not be a negative number.

insurance
object The insurance fee for all items within a given purchase_unit. insurance.value can not be a negative number.

shipping_discount
object The shipping discount for all items within a given purchase_unit. shipping_discount.value can not be a negative number.

discount
object The discount for all items within a given purchase_unit. discount.value can not be a negative number.

CopyExpand allCollapse all { "item_total": { "currency_code": "str", "value": "string" }, "shipping": { "currency_code": "str", "value": "string" }, "handling": { "currency_code": "str", "value": "string" }, "tax_total": { "currency_code": "str", "value": "string" }, "insurance": { "currency_code": "str", "value": "string" }, "shipping_discount": { "currency_code": "str", "value": "string" }, "discount": { "currency_code": "str", "value": "string" } } apple_pay_card The payment card to be used to fund a payment. Can be a credit or debit card.

name
string [ 1 .. 300 ] characters The card holder's name as it appears on the card.

last_digits string [ 2 .. 4 ] characters The last digits of the payment card.

type
string [ 1 .. 255 ] characters ^[A-Z_]+$ The payment card type.

Enum Value Description CREDIT A credit card. DEBIT A debit card. PREPAID A Prepaid card. STORE A store card. UNKNOWN Card type cannot be determined. brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. billing_address object The billing address for this card. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "name": "string", "last_digits": "stri", "type": "CREDIT", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } apple_pay_payment_token_response A resource representing a response for Apple Pay.

card
object Card data for the card linked to the apple pay token.

CopyExpand allCollapse all { "card": { "name": "string", "last_digits": "stri", "type": "CREDIT", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } } authentication_response Results of Authentication such as 3D Secure.

three_d_secure
object Results of 3D Secure Authentication.

CopyExpand allCollapse all { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } } Authorization details Authorization details.

status
string [ 1 .. 100 ] characters ^[0-9A-Z_]+$ Instrument authorization status.

Enum Value Description AUTHORIZED The authorization status is authorized. BLOCKED The authorization status is blocked. FAILED The authorization status is failed. NOT_APPLICABLE Authorization not applicable. NOT_SUPPORTED Authorization not supported. UNAUTHORIZED The authorization status is unauthorized. Copy { "status": "AUTHORIZED" } authorization_id A unique identifier for the financial instrument authorization sub-resource within the PayPal System.

string [ 1 .. 255 ] characters ^[A-Za-z0-9-_.+/=]* A unique identifier for the financial instrument authorization sub-resource within the PayPal System.

Copy "string" bank_authorization_details The details of Bank mandate authorization

status
string [ 1 .. 100 ] characters ^[0-9A-Z_]+$ The authorization status of the wallet instrument.

Enum Value Description AUTHORIZED The authorization status is authorized. BLOCKED The authorization status is blocked. FAILED The authorization status is failed. NOT_APPLICABLE Authorization not applicable. NOT_SUPPORTED Authorization not supported. UNAUTHORIZED The authorization status is unauthorized. authorization_codes Array of strings [ 1 .. 50 ] items An array of the PayPal generated authorization codes. These codes can be based on the issuer specification.

type
string [ 1 .. 255 ] characters Represents the type of mandate.

Enum Value Description ONE_OFF Mandate of type ONE_OFF. RECURRENT Mandate of type RECURRENT. time_authorized string [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time when the instrument was authorized, in Internet date and time format.

CopyExpand allCollapse all { "status": "AUTHORIZED", "authorization_codes": [ "string" ], "type": "ONE_OFF", "time_authorized": "string" } billing_cycle The billing cycle providing details of the billing frequency, amount, duration and if the billing cycle is a free, discounted or regular billing cycle. The sequence of the billing cycle will be in the following order - free trial billing cycle(s), discounted trial billing cycle(s), regular billing cycle(s).

tenure_type required string [ 1 .. 24 ] characters The tenure type of the billing cycle identifies if the billing cycle is a trial(free or discounted) or regular billing cycle.

Enum Value Description REGULAR A regular billing cycle to identify recurring charges for the billing agreement. TRIAL A trial billing cycle to identify free or discounted charge for the billing agreement. Free trails will not have a price object in pricing scheme where as a discounted trial would have a discounted price compared to regular billing cycle. total_cycles
integer [ 0 .. 999 ] Default: 1 The number of times this billing cycle gets executed. Trial billing cycles can only be executed a finite number of times (value between 1 and 999 for total_cycles). Regular billing cycles can be executed infinite times (value of 0 for total_cycles) or a finite number of times (value between 1 and 999 for total_cycles).

sequence
integer [ 1 .. 3 ] Default: 1 The order in which this cycle is to run among other billing cycles. For example, a trial billing cycle has a sequence of 1 while a regular billing cycle has a sequence of 2, so that trial cycle runs before the regular cycle.

pricing_scheme
object The active pricing scheme for this billing cycle. A free trial billing cycle does not require a pricing scheme.

start_date
string = 10 characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The start date for the billing cycle, in YYYY-MM-DD. This field should be not be provided if the billing cycle starts at the time of checkout. When this field is not provided, the billing cycle amount will be included in any data validations confirming that the total provided by the merchant match the sum of individual items due at the time of checkout. Only one billing cycle (with sequence equal to 1) can have a no start date.

CopyExpand allCollapse all { "tenure_type": "REGULAR", "total_cycles": 1, "sequence": 1, "pricing_scheme": { "pricing_model": "FIXED", "price": { "currency_code": "str", "value": "string" }, "reload_threshold_amount": { "currency_code": "str", "value": "string" } }, "start_date": "string" } bin_details Bank Identification Number (BIN) details used to fund a payment.

bin string [ 1 .. 25 ] characters The Bank Identification Number (BIN) signifies the number that is being used to identify the granular level details (except the PII information) of the card.

issuing_bank
string [ 1 .. 64 ] characters The issuer of the card instrument.

products
Array of strings [ 1 .. 256 ] items The type of card product assigned to the BIN by the issuer. These values are defined by the issuer and may change over time. Some examples include: PREPAID_GIFT, CONSUMER, CORPORATE.

bin_country_code
string = 2 characters ^([A-Z]{2}|C2)$ The two-character ISO-3166-1 country code of the bank.

CopyExpand allCollapse all { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" } card The payment card to use to fund a payment. Can be a credit or debit card.

name
string [ 1 .. 300 ] characters The card holder's name as it appears on the card.

number
string [ 13 .. 19 ] characters The primary account number (PAN) for the payment card.

last_digits string [ 2 .. 4 ] characters The last digits of the payment card.

expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

type
string [ 1 .. 255 ] characters ^[A-Z_]+$ The payment card type.

Enum Value Description CREDIT A credit card. DEBIT A debit card. PREPAID A Prepaid card. STORE A store card. UNKNOWN Card type cannot be determined. brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. billing_address object The billing address for this card. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "name": "string", "number": "stringstrings", "last_digits": "stri", "expiry": "string", "type": "CREDIT", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } card The payment card to use to fund a payment. Can be a credit or debit card.

name
string [ 1 .. 300 ] characters The card holder's name as it appears on the card.

number required string [ 13 .. 19 ] characters The primary account number (PAN) for the payment card.

security_code
string [ 3 .. 4 ] characters The three- or four-digit security code of the card. Also known as the CVV, CVC, CVN, CVE, or CID. This parameter cannot be present in the request when payment_initiator=MERCHANT.

expiry required string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. billing_address object The billing address for this card. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "name": "string", "number": "stringstrings", "security_code": "stri", "expiry": "string", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } Card Verification The API caller can opt in to verify the card through PayPal offered verification services (e.g. Smart Dollar Auth, 3DS).

method
string [ 1 .. 255 ] characters Default: "SCA_WHEN_REQUIRED" The method used for card verification.

Enum Value Description SCA_ALWAYS Selecting this option will attempt to force a strong customer authentication for the authorization/transaction. In countries where SCA has been defined and implemented it will result in a contingency and HATEOAS link being returned. The API caller should redirect the payer to that link so that they can authenticate themselves against their issuing bank or other entity. As noted, the HATEOAS link is only available in all regions where strong authentication is supported, (e.g. in European countries where 3DS is live). Merchants can use this setting as an additional layer of security if they choose to. In all cases, when an authorization is requested the AVS/CVV results will be returned in the response. SCA_WHEN_REQUIRED This is the default. When an authorization or transaction is attempted this option will return a contingency and HATEOAS link only when local regulations require strong customer authentication, (e.g. 3DS in countries and use cases where it is mandated). The API caller should redirect the payer to the link so that they can authenticate themselves. In all cases, when an authorization is requested the AVS/CVV results will be returned in the response. 3D_SECURE The contingency surfaced as an additional security layer that helps prevent unauthorized card-not-present transactions and protects the merchant from exposure to fraud. AVS_CVV Places a temporary hold on the card to ensure its validity. This process protects the merchant from exposure to fraud. This verification method will confirm that the address information or CVV included matches what the issuing bank has on file for the associated card, ensuring that only authorized card users are able to make purchases from you. Copy { "method": "SCA_ALWAYS" } card_attributes Additional attributes associated with the use of this card.

customer
object The details about a customer in PayPal's system of record.

vault
object Instruction to vault the card based on the specified strategy.

verification
object Instruction to optionally verify the card based on the specified strategy.

CopyExpand allCollapse all { "customer": { "id": "string", "email_address": "string", "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "merchant_customer_id": "string" }, "vault": { "store_in_vault": "ON_SUCCESS" }, "verification": { "method": "SCA_ALWAYS" } } card_brand The card network or brand. Applies to credit, debit, gift, and payment cards.

string [ 1 .. 255 ] characters ^[A-Z_]+$ The card network or brand. Applies to credit, debit, gift, and payment cards.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. Copy "VISA" card_customer The details about a customer in PayPal's system of record.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer generated by PayPal.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern Email address of the buyer as provided to the merchant or on file with the merchant. Email Address is required if you are processing the transaction using PayPal Guest Processing which is offered to select partners and merchants. For all other use cases we do not expect partners/merchant to send email_address of their customer.

phone
object The phone number of the buyer as provided to the merchant or on file with the merchant. The phone.phone_number supports only national_number.

merchant_customer_id
string [ 1 .. 64 ] characters Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

CopyExpand allCollapse all { "id": "string", "email_address": "string", "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "merchant_customer_id": "string" } card_request A Resource representing a request to vault a Card.

name
string [ 1 .. 300 ] characters The card holder's name as it appears on the card.

number
string [ 13 .. 19 ] characters The primary account number (PAN) for the payment card.

security_code
string [ 3 .. 4 ] characters The three- or four-digit security code of the card. Also known as the CVV, CVC, CVN, CVE, or CID. This parameter cannot be present in the request when payment_initiator=MERCHANT.

expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. billing_address object The billing address for this card. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "name": "string", "number": "stringstrings", "security_code": "stri", "expiry": "string", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } card_request A Resource representing a request to vault a Card.

name
string [ 1 .. 300 ] characters The card holder's name as it appears on the card.

number
string [ 13 .. 19 ] characters The primary account number (PAN) for the payment card.

security_code
string [ 3 .. 4 ] characters The three- or four-digit security code of the card. Also known as the CVV, CVC, CVN, CVE, or CID. This parameter cannot be present in the request when payment_initiator=MERCHANT.

expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. billing_address object The billing address for this card. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

experience_context
object Customizes the Vault creation flow experience for your customers.

verification_method string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ The API caller can opt in to verify the payment token through PayPal offered verification services (e.g. Smart Dollar Auth, 3DS).

Enum Value Description SCA_WHEN_REQUIRED When an authorization or transaction is attempted this option will return a contingency and HATEOAS link only when local regulations require strong customer authentication, (e.g. 3DS in countries and use cases where it is mandated). The API caller should redirect the payer to the link so that they can authenticate themselves. In all cases, when an authorization is requested the AVS/CVV results will be returned in the response. SCA_ALWAYS Selecting this option will attempt to force a strong customer authentication for the authorization/transaction. In countries where SCA has been defined and implemented it will result in a contingency and HATEOAS link being returned. The API caller should redirect the payer to that link so that they can authenticate themselves against their issuing bank or other entity. As noted, the HATEOAS link is only available in all regions where strong authentication is supported, (e.g. in European countries where 3DS is live). Merchants can use this setting as an additional layer of security if they choose to. In all cases, when an authorization is requested the AVS/CVV results will be returned in the response. CopyExpand allCollapse all { "name": "string", "number": "stringstrings", "security_code": "stri", "expiry": "string", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "experience_context": { "brand_name": "string", "return_url": "http://example.com", "cancel_url": "http://example.com", "locale": "string", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" }, "verification_method": "SCA_WHEN_REQUIRED" } card_response Full representation of a Card Payment Token including network token.

name
string [ 2 .. 300 ] characters The card holder's name as it appears on the card.

last_digits string [ 2 .. 4 ] characters The last digits of the payment card.

verification
object Card Verification details including the authorization details and 3D SECURE details.

network_transaction_reference
object Previous network transaction reference including id in response.

authentication_result
object Results of Authentication such as 3D Secure.

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

billing_address object The billing address for this card.

verification_status string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Card Verification status.

Enum Value Description VERIFIED Card has been verified FAILED Card verification has failed bin_details object Bank Identification Number (BIN) details used to fund a payment.

type
string [ 1 .. 255 ] characters ^[A-Z_]+$ The payment card type.

Enum Value Description CREDIT A credit card. DEBIT A debit card. PREPAID A Prepaid card. STORE A store card. UNKNOWN Card type cannot be determined. CopyExpand allCollapse all { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" } card_response Full representation of a Card Payment Token including network token.

name
string [ 2 .. 300 ] characters The card holder's name as it appears on the card.

last_digits string [ 2 .. 4 ] characters The last digits of the payment card.

verification
object Card Verification details including the authorization details and 3D SECURE details.

network_transaction_reference
object Previous network transaction reference including id in response.

authentication_result
object Results of Authentication such as 3D Secure.

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

billing_address object The billing address for this card.

verification_status string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Card Verification status.

Enum Value Description VERIFIED Card has been verified FAILED Card verification has failed bin_details object Bank Identification Number (BIN) details used to fund a payment.

type
string [ 1 .. 255 ] characters ^[A-Z_]+$ The payment card type.

Enum Value Description CREDIT A credit card. DEBIT A debit card. PREPAID A Prepaid card. STORE A store card. UNKNOWN Card type cannot be determined. CopyExpand allCollapse all { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" } card_response_entity Full representation of a Card Payment Token.

name
string [ 2 .. 300 ] characters The card holder's name as it appears on the card.

last_digits string [ 2 .. 4 ] characters The last digits of the payment card.

verification
object Card Verification details including the authorization details and 3D SECURE details.

network_transaction_reference
object Previous network transaction reference including id in response.

authentication_result
object Results of Authentication such as 3D Secure.

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

billing_address object The billing address for this card.

verification_status string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Card Verification status.

Enum Value Description VERIFIED Card has been verified FAILED Card verification has failed bin_details object Bank Identification Number (BIN) details used to fund a payment.

type
string [ 1 .. 255 ] characters ^[A-Z_]+$ The payment card type.

Enum Value Description CREDIT A credit card. DEBIT A debit card. PREPAID A Prepaid card. STORE A store card. UNKNOWN Card type cannot be determined. CopyExpand allCollapse all { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" } card_supplementary_data Merchants and partners can add Level 2 and 3 data to payments to reduce risk and payment processing costs. For more information about processing payments, see checkout or multiparty checkout.

level_2 object The level 2 card processing data collections. If your merchant account has been configured for Level 2 processing this field will be passed to the processor on your behalf. Please contact your PayPal Technical Account Manager to define level 2 data for your business.

level_3 object The level 3 card processing data collections, If your merchant account has been configured for Level 3 processing this field will be passed to the processor on your behalf. Please contact your PayPal Technical Account Manager to define level 3 data for your business.

CopyExpand allCollapse all { "level_2": { "invoice_id": "string", "tax_total": { "currency_code": "str", "value": "string" } }, "level_3": { "ships_from_postal_code": "string", "line_items": [ { "name": "string", "quantity": "string", "description": "string", "sku": "string", "url": "http://example.com", "image_url": "http://example.com", "upc": { "type": "UPC-A", "code": "string" }, "commodity_code": "string", "unit_of_measure": "string", "unit_amount": { "currency_code": "str", "value": "string" }, "tax": { "currency_code": "str", "value": "string" }, "discount_amount": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } ], "shipping_amount": { "currency_code": "str", "value": "string" }, "duty_amount": { "currency_code": "str", "value": "string" }, "discount_amount": { "currency_code": "str", "value": "string" }, "shipping_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } } card_type Type of card. i.e Credit, Debit and so on.

string [ 1 .. 255 ] characters ^[A-Z_]+$ Type of card. i.e Credit, Debit and so on.

Enum Value Description CREDIT A credit card. DEBIT A debit card. PREPAID A Prepaid card. STORE A store card. UNKNOWN Card type cannot be determined. Copy "CREDIT" card_verification_details Card Verification details including the authorization details and 3D SECURE details.

network_transaction_id
string [ 1 .. 1024 ] characters DEPRECATED. This field is DEPRECATED. Please find the network transaction id data in the 'id' field under the 'network_transaction_reference' object instead of the 'verification' object.

date
string = 4 characters DEPRECATED. This field is DEPRECATED. Please find the date data in the 'date' field under the 'network_transaction_reference' object instead of the 'verification' object.

network string [ 1 .. 255 ] characters ^[A-Z_]+$ DEPRECATED. This field is DEPRECATED. Please find the network data in the 'network' field under the 'network_transaction_reference' object instead of the 'verification' object.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. time
string [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern DEPRECATED. This field is DEPRECATED. Please find the time data in the 'time' field under the 'network_transaction_reference' object instead of the 'verification' object.

amount
object The amount used for card verification.

processor_response
object The processor information.

three_d_secure
any DEPRECATED. This field is DEPRECATED. Please find the 3D secure authentication data in the 'three_d_secure' object under the 'authentication_result' object instead of the 'verification' object.

CopyExpand allCollapse all { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null } card_verification_method The verification method of the card.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ The verification method of the card.

Enum Value Description SCA_WHEN_REQUIRED When an authorization or transaction is attempted this option will return a contingency and HATEOAS link only when local regulations require strong customer authentication, (e.g. 3DS in countries and use cases where it is mandated). The API caller should redirect the payer to the link so that they can authenticate themselves. In all cases, when an authorization is requested the AVS/CVV results will be returned in the response. SCA_ALWAYS Selecting this option will attempt to force a strong customer authentication for the authorization/transaction. In countries where SCA has been defined and implemented it will result in a contingency and HATEOAS link being returned. The API caller should redirect the payer to that link so that they can authenticate themselves against their issuing bank or other entity. As noted, the HATEOAS link is only available in all regions where strong authentication is supported, (e.g. in European countries where 3DS is live). Merchants can use this setting as an additional layer of security if they choose to. In all cases, when an authorization is requested the AVS/CVV results will be returned in the response. Copy "SCA_WHEN_REQUIRED" card_verification_status Verification status of Card.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Verification status of Card.

Enum Value Description VERIFIED Card has been verified FAILED Card verification has failed Copy "VERIFIED" country_code The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. string (country_code) = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy "st" country_code The two-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. string (country_code) = 2 characters ^([A-Z]{2}|C2)$ The two-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy "st" currency_code The three-character ISO-4217 currency code that identifies the currency.

string (currency_code) = 3 characters The three-character ISO-4217 currency code that identifies the currency.

Copy "str" customer This object defines a customer in your system. Use it to manage customer profiles, save payment methods and contact details.

merchant_customer_id
string [ 1 .. 64 ] characters Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer in merchant's or partner's system of records.

Copy { "merchant_customer_id": "string", "id": "string" } customer The details about a customer in PayPal's system of record.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer generated by PayPal.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern Email address of the buyer as provided to the merchant or on file with the merchant. Email Address is required if you are processing the transaction using PayPal Guest Processing which is offered to select partners and merchants. For all other use cases we do not expect partners/merchant to send email_address of their customer.

phone
object The phone number of the buyer as provided to the merchant or on file with the merchant. The phone.phone_number supports only national_number.

CopyExpand allCollapse all { "id": "string", "email_address": "string", "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } } } customer This object defines a customer in your system. Use it to manage customer profiles, save payment methods and contact details.

merchant_customer_id
string [ 1 .. 64 ] characters Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer in merchant's or partner's system of records.

Copy { "merchant_customer_id": "string", "id": "string" } customer This object defines a customer in your system. Use it to manage customer profiles, save payment methods and contact details.

merchant_customer_id
string [ 1 .. 64 ] characters Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer in merchant's or partner's system of records.

Copy { "merchant_customer_id": "string", "id": "string" } customer This object defines a customer in your system. Use it to manage customer profiles, save payment methods and contact details.

merchant_customer_id
string [ 1 .. 64 ] characters Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer in merchant's or partner's system of records.

Copy { "merchant_customer_id": "string", "id": "string" } customer This object defines a customer in your system. Use it to manage customer profiles, save payment methods and contact details.

merchant_customer_id
string [ 1 .. 64 ] characters Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

id
string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer in merchant's or partner's system of records.

Copy { "merchant_customer_id": "string", "id": "string" } date_no_time The stand-alone date, in Internet date and time format. To represent special legal values, such as a date of birth, you should use dates with no associated time or time-zone data. Whenever possible, use the standard date_time type. This regular expression does not validate all dates. For example, February 31 is valid and nothing is known about leap years.

string (date_no_time) = 10 characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The stand-alone date, in Internet date and time format. To represent special legal values, such as a date of birth, you should use dates with no associated time or time-zone data. Whenever possible, use the standard date_time type. This regular expression does not validate all dates. For example, February 31 is valid and nothing is known about leap years.

Copy "stringstri" date_time The date and time, in Internet date and time format. Seconds are required while fractional seconds are optional.

Note: The regular expression provides guidance but does not reject all invalid dates. string (date_time) [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time, in Internet date and time format. Seconds are required while fractional seconds are optional.

Note: The regular expression provides guidance but does not reject all invalid dates. Copy "stringstringstringst" date_time The date and time, in Internet date and time format. Seconds are required while fractional seconds are optional.

Note: The regular expression provides guidance but does not reject all invalid dates. string (date_time) [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time, in Internet date and time format. Seconds are required while fractional seconds are optional.

Note: The regular expression provides guidance but does not reject all invalid dates. Copy "stringstringstringst" date_year_month The year and month, in ISO-8601 YYYY-MM date format. See Internet date and time format.

string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The year and month, in ISO-8601 YYYY-MM date format. See Internet date and time format.

Copy "strings" digital_wallet Resource consolidating common request and response attributes for vaulting a Digital Wallet.

description string [ 1 .. 128 ] characters The description displayed to the consumer on the approval flow for a digital wallet, as well as on the merchant view of the payment token management experience. exp: PayPal.com.

usage_pattern
string [ 1 .. 30 ] characters Expected business/charge model for the billing agreement.

Enum Value Description IMMEDIATE On-demand instant payments – non-recurring, pre-paid, variable amount, variable frequency. DEFERRED Pay after use, non-recurring post-paid, variable amount, irregular frequency. RECURRING_PREPAID Pay upfront fixed or variable amount on a fixed date before the goods/service is delivered. RECURRING_POSTPAID Pay on a fixed date based on usage or consumption after the goods/service is delivered. THRESHOLD_PREPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, before the goods/service is delivered. THRESHOLD_POSTPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, after the goods/service is delivered. UNSCHEDULED_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. UNSCHEDULED_PREPAID Unscheduled card on file plan where the merchant can bill buyer upfront based on an agreed logic, but amount due and frequency can vary. Inclusive of automatic reload plans. SUBSCRIPTION_PREPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due before the good/service is delivered. SUBSCRIPTION_POSTPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due after the goods/services are delivered. INSTALLMENT_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. INSTALLMENT_PREPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due before the good/service is delivered. permit_multiple_payment_tokens
boolean Default: false Create multiple payment tokens for the same payer, merchant/platform combination. Use this when the customer has not logged in at merchant/platform. The payment token thus generated, can then also be used to create the customer account at merchant/platform. Use this also when multiple payment tokens are required for the same payer, different customer at merchant/platform. This helps to identify customers distinctly even though they may share the same PayPal account. This only applies to PayPal payment source.

usage_type
string [ 1 .. 255 ] characters The usage type associated with a digital wallet payment token.

Enum Value Description MERCHANT The PayPal Payment Token will be used for future transaction directly with a merchant. PLATFORM The PayPal Payment Token will be used for future transaction on a platform. A platform is typically a marketplace or a channel that a payer can purchase goods and services from multiple merchants. customer_type
string [ 1 .. 255 ] characters The customer type associated with a digital wallet payment token. This is to indicate whether the customer acting on the merchant / platform is either a business or a consumer.

Enum Value Description CONSUMER The customer vaulting the PayPal payment token is a consumer on the merchant / platform. BUSINESS The customer vaulting the PayPal payment token is a business on merchant / platform. shipping
object The shipping address for the Payer.

CopyExpand allCollapse all { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } } disbursement_mode The funds that are held on behalf of the merchant.

string [ 1 .. 16 ] characters ^[A-Z_]+$ Default: "INSTANT" The funds that are held on behalf of the merchant.

Enum Value Description INSTANT The funds are released to the merchant immediately. DELAYED The funds are held for a finite number of days. The actual duration depends on the region and type of integration. You can release the funds through a referenced payout. Otherwise, the funds disbursed automatically after the specified duration. Copy "INSTANT" email The internationalized email address.

Note: Up to 64 characters are allowed before and 255 characters are allowed after the @ sign. However, the generally accepted maximum length for an email address is 254 characters. The pattern verifies that an unquoted @ sign exists. string (email) [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The internationalized email address.

Note: Up to 64 characters are allowed before and 255 characters are allowed after the @ sign. However, the generally accepted maximum length for an email address is 254 characters. The pattern verifies that an unquoted @ sign exists. Copy "string" enrolled Status of Authentication eligibility.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Status of Authentication eligibility.

Enum Value Description Y Yes. The bank is participating in 3-D Secure protocol and will return the ACSUrl. N No. The bank is not participating in 3-D Secure protocol. U Unavailable. The DS or ACS is not available for authentication at the time of the request. B Bypass. The merchant authentication rule is triggered to bypass authentication. Copy "Y" Error The error details.

name required string The human-readable, unique name of the error.

message required string The message that describes the error.

debug_id required string The PayPal internal ID. Used for correlation purposes.

details Array of objects An array of additional details about the error.

links
Array of objects An array of request-related HATEOAS links.

CopyExpand allCollapse all { "name": "string", "message": "string", "debug_id": "string", "details": [ { "field": "string", "value": "string", "location": "body", "issue": "string", "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "description": "string" } ], "links": [ { "href": "string", "rel": "string", "method": "GET" } ] } Error Details The error details. Required for client-side 4XX errors.

field
string 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
string The value of the field that caused the error.

location
string Default: "body" The location of the field that caused the error. Value is body, path, or query.

issue required string The unique, fine-grained application-level error code.

links
Array of objects [ 1 .. 4 ] items An array of request-related HATEOAS links that are either relevant to the issue by providing additional information or offering potential resolutions.

description string 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.

CopyExpand allCollapse all { "field": "string", "value": "string", "location": "body", "issue": "string", "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "description": "string" } experience_context Customizes the Vault creation flow experience for your customers.

brand_name
string [ 1 .. 300 ] characters The label that overrides the business name in the PayPal account on the PayPal site. The pattern is defined by an external party and supports Unicode.

return_url
string [ 1 .. 4000 ] characters The URL where the customer is redirected after customer approves leaves the flow. It is a required field for contingency flows like PayPal wallet, 3DS.

cancel_url
string [ 1 .. 4000 ] characters The URL where the customer is redirected after customer cancels or leaves the flow. It is a required field for contingency flows like PayPal wallet, 3DS.

locale
string [ 2 .. 10 ] characters ^[a-z]{2}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|[...Show pattern The BCP 47-formatted locale of pages that the PayPal vaulting experience shows. PayPal supports a five-character code. For example, DA-DK, HE-IL, ID-ID, JA-JP, NO-NO, PT-BR, RU-RU, SV-SE, TH-TH, ZH-CN, ZH-HK, or ZH-TW.

vault_instruction
string [ 1 .. 255 ] characters ^[A-Z_]+$ Default: "ON_CREATE_PAYMENT_TOKENS" Vault Instruction on action to be performed after a successful payer approval.

Enum Value Description ON_CREATE_PAYMENT_TOKENS Vault the payment method after API caller performs a successful POST on Payment Tokens. ON_PAYER_APPROVAL Vault the payment method on successful payer authentication and approval. Copy { "brand_name": "string", "return_url": "http://example.com", "cancel_url": "http://example.com", "locale": "string", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } experience_context Customizes the Vault creation flow experience for your customers.

brand_name
string [ 1 .. 300 ] characters The label that overrides the business name in the PayPal account on the PayPal site. The pattern is defined by an external party and supports Unicode.

return_url
string [ 1 .. 4000 ] characters The URL where the customer is redirected after customer approves leaves the flow. It is a required field for contingency flows like PayPal wallet, 3DS.

cancel_url
string [ 1 .. 4000 ] characters The URL where the customer is redirected after customer cancels or leaves the flow. It is a required field for contingency flows like PayPal wallet, 3DS.

shipping_preference string [ 1 .. 255 ] characters Default: "GET_FROM_FILE" The shipping preference. This only applies to PayPal payment source.

Enum Value Description GET_FROM_FILE Use the payer-provided shipping address on the PayPal site. NO_SHIPPING Redact the shipping address from the PayPal site. Recommended for digital goods. SET_PROVIDED_ADDRESS Use the merchant/platform-provided address. The payer cannot change this address on the PayPal site. If the merchant does not pass an address, the customer can choose the address on the PayPal site. locale
string [ 2 .. 10 ] characters ^[a-z]{2}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|[...Show pattern The BCP 47-formatted locale of pages that the PayPal vaulting experience shows. PayPal supports a five-character code. For example, DA-DK, HE-IL, ID-ID, JA-JP, NO-NO, PT-BR, RU-RU, SV-SE, TH-TH, ZH-CN, ZH-HK, or ZH-TW.

vault_instruction
string [ 1 .. 255 ] characters ^[A-Z_]+$ Default: "ON_CREATE_PAYMENT_TOKENS" Vault Instruction on action to be performed after a successful payer approval.

Enum Value Description ON_CREATE_PAYMENT_TOKENS Vault the payment method after API caller performs a successful POST on Payment Tokens. ON_PAYER_APPROVAL Vault the payment method on successful payer authentication and approval. Copy { "brand_name": "string", "return_url": "http://example.com", "cancel_url": "http://example.com", "shipping_preference": "GET_FROM_FILE", "locale": "string", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } experience_context Customizes the Vault creation flow experience for your customers.

brand_name
string [ 1 .. 300 ] characters The label that overrides the business name in the PayPal account on the PayPal site. The pattern is defined by an external party and supports Unicode.

shipping_preference string [ 1 .. 255 ] characters Default: "GET_FROM_FILE" The shipping preference. This only applies to PayPal payment source.

Enum Value Description GET_FROM_FILE Use the payer-provided shipping address on the PayPal site. NO_SHIPPING Redact the shipping address from the PayPal site. Recommended for digital goods. SET_PROVIDED_ADDRESS Use the merchant/platform-provided address. The payer cannot change this address on the PayPal site. If the merchant does not pass an address, the customer can choose the address on the PayPal site. vault_instruction
string [ 1 .. 255 ] characters ^[A-Z_]+$ Default: "ON_CREATE_PAYMENT_TOKENS" Vault Instruction on action to be performed after a successful payer approval.

Enum Value Description ON_CREATE_PAYMENT_TOKENS Vault the payment method after API caller performs a successful POST on Payment Tokens. ON_PAYER_APPROVAL Vault the payment method on successful payer authentication and approval. Copy { "brand_name": "string", "shipping_preference": "GET_FROM_FILE", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } external_reference Stores the external id value for a given vault session cache.

id
string [ 1 .. 255 ] characters The PayPal-generated ID for the external reference.

type
string [ 1 .. 255 ] characters The tokenization method that generated the external reference.

Value Description BA_TOKEN The PayPal billing agreement token type. References an approval token created on which approval is to be provided. Copy { "id": "string", "type": "BA_TOKEN" } iban_last_chars The last characters of the IBAN used to pay.

string [ 4 .. 34 ] characters [a-zA-Z0-9]{4} The last characters of the IBAN used to pay.

Copy "string" id The PayPal-generated ID for the vault token.

string [ 1 .. 36 ] characters ^[0-9a-zA-Z_-]+$ The PayPal-generated ID for the vault token.

Copy "string" instrument_id The identifier of the instrument.

string [ 1 .. 256 ] characters ^[A-Za-z0-9-_.+=]+$ The identifier of the instrument.

Copy "string" item The details for the items to be purchased.

name required string [ 1 .. 127 ] characters The item name or title.

quantity required string <= 10 characters The item quantity. Must be a whole number.

description string <= 127 characters The detailed item description.

sku string <= 127 characters The stock keeping unit (SKU) for the item.

url string [ 1 .. 2048 ] characters The URL to the item being purchased. Visible to buyer and used in buyer experiences.

image_url
string [ 1 .. 2048 ] characters ^(https:)([/|.|\w|\s|-])*.(?:jpg|gif|png|jpe...Show pattern The URL of the item's image. File type and size restrictions apply. An image that violates these restrictions will not be honored.

upc object The Universal Product Code of the item.

CopyExpand allCollapse all { "name": "string", "quantity": "string", "description": "string", "sku": "string", "url": "http://example.com", "image_url": "http://example.com", "upc": { "type": "UPC-A", "code": "string" } } language The language tag for the language in which to localize the error-related strings, such as messages, issues, and suggested actions. The tag is made up of the ISO 639-2 language code, the optional ISO-15924 script tag, and the ISO-3166 alpha-2 country code or M49 region code.

string (language) [ 2 .. 10 ] characters ^[a-z]{2}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|[...Show pattern The language tag for the language in which to localize the error-related strings, such as messages, issues, and suggested actions. The tag is made up of the ISO 639-2 language code, the optional ISO-15924 script tag, and the ISO-3166 alpha-2 country code or M49 region code.

Copy "string" language The language tag for the language in which to localize the error-related strings, such as messages, issues, and suggested actions. The tag is made up of the ISO 639-2 language code, the optional ISO-15924 script tag, and the ISO-3166 alpha-2 country code or M49 region code.

string (language) [ 2 .. 10 ] characters ^[a-z]{2}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|[...Show pattern The language tag for the language in which to localize the error-related strings, such as messages, issues, and suggested actions. The tag is made up of the ISO 639-2 language code, the optional ISO-15924 script tag, and the ISO-3166 alpha-2 country code or M49 region code.

Copy "string" level_2 The level 2 card processing data collections. If your merchant account has been configured for Level 2 processing this field will be passed to the processor on your behalf. Please contact your PayPal Technical Account Manager to define level 2 data for your business.

invoice_id
string [ 1 .. 127 ] characters Use this field to pass a purchase identification value of up to 127 ASCII characters. The length of this field will be adjusted to meet network specifications (25chars for Visa and Mastercard, 17chars for Amex), and the original invoice ID will still be displayed in your existing reports.

tax_total
object Use this field to break down the amount of tax included in the total purchase amount. The value provided here will not add to the total purchase amount. The value can't be negative, and in most cases, it must be greater than zero in order to qualify for lower interchange rates. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. CopyExpand allCollapse all { "invoice_id": "string", "tax_total": { "currency_code": "str", "value": "string" } } level_3 The level 3 card processing data collections, If your merchant account has been configured for Level 3 processing this field will be passed to the processor on your behalf. Please contact your PayPal Technical Account Manager to define level 3 data for your business.

ships_from_postal_code
string [ 1 .. 60 ] characters Use this field to specify the postal code of the shipping location.

line_items
Array of objects [ 1 .. 100 ] items A list of the items that were purchased with this payment. If your merchant account has been configured for Level 3 processing this field will be passed to the processor on your behalf.

shipping_amount object Use this field to break down the shipping cost included in the total purchase amount. The value provided here will not add to the total purchase amount. The value cannot be negative.

duty_amount object Use this field to break down the duty amount included in the total purchase amount. The value provided here will not add to the total purchase amount. The value cannot be negative.

discount_amount object Use this field to break down the discount amount included in the total purchase amount. The value provided here will not add to the total purchase amount. The value cannot be negative.

shipping_address
object The address of the person to whom to ship the items. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "ships_from_postal_code": "string", "line_items": [ { "name": "string", "quantity": "string", "description": "string", "sku": "string", "url": "http://example.com", "image_url": "http://example.com", "upc": { "type": "UPC-A", "code": "string" }, "commodity_code": "string", "unit_of_measure": "string", "unit_amount": { "currency_code": "str", "value": "string" }, "tax": { "currency_code": "str", "value": "string" }, "discount_amount": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } ], "shipping_amount": { "currency_code": "str", "value": "string" }, "duty_amount": { "currency_code": "str", "value": "string" }, "discount_amount": { "currency_code": "str", "value": "string" }, "shipping_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } liability_shift Liability shift indicator. The outcome of the issuer's authentication.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Liability shift indicator. The outcome of the issuer's authentication.

Enum Value Description NO Liability is with the merchant. POSSIBLE Liability may shift to the card issuer. UNKNOWN The authentication system is not available. Copy "NO" line_item The line items for this purchase. If your merchant account has been configured for Level 3 processing this field will be passed to the processor on your behalf.

name required string [ 1 .. 127 ] characters The item name or title.

quantity required string <= 10 characters The item quantity. Must be a whole number.

description string <= 127 characters The detailed item description.

sku string <= 127 characters The stock keeping unit (SKU) for the item.

url string [ 1 .. 2048 ] characters The URL to the item being purchased. Visible to buyer and used in buyer experiences.

image_url
string [ 1 .. 2048 ] characters ^(https:)([/|.|\w|\s|-])*.(?:jpg|gif|png|jpe...Show pattern The URL of the item's image. File type and size restrictions apply. An image that violates these restrictions will not be honored.

upc object The Universal Product Code of the item.

commodity_code
string [ 1 .. 12 ] characters Code used to classify items purchased and track the total amount spent across various categories of products and services. Different corporate purchasing organizations may use different standards, but the United Nations Standard Products and Services Code (UNSPSC) is frequently used.

unit_of_measure string [ 1 .. 12 ] characters Unit of measure is a standard used to express the magnitude of a quantity in international trade. Most commonly used (but not limited to) examples are: Acre (ACR), Ampere (AMP), Centigram (CGM), Centimetre (CMT), Cubic inch (INQ), Cubic metre (MTQ), Fluid ounce (OZA), Foot (FOT), Hour (HUR), Item (ITM), Kilogram (KGM), Kilometre (KMT), Kilowatt (KWT), Liquid gallon (GLL), Liter (LTR), Pounds (LBS), Square foot (FTK).

unit_amount required object The item price or rate per unit. Must equal unit_amount * quantity for all items. unit_amount.value can not be a negative number.

tax object The item tax for each unit. Must equal tax * quantity for all items. tax.value can not be a negative number.

discount_amount object Use this field to break down the discount amount included in the total purchase amount. The value provided here will not add to the total purchase amount. The value cannot be negative.

total_amount
object The subtotal for all items. Must equal the sum of (items[].unit_amount * items[].quantity) for all items. item_total.value can not be a negative number.

CopyExpand allCollapse all { "name": "string", "quantity": "string", "description": "string", "sku": "string", "url": "http://example.com", "image_url": "http://example.com", "upc": { "type": "UPC-A", "code": "string" }, "commodity_code": "string", "unit_of_measure": "string", "unit_amount": { "currency_code": "str", "value": "string" }, "tax": { "currency_code": "str", "value": "string" }, "discount_amount": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } Link Description The request-related HATEOAS link information.

href required string The complete target URL. To make the related call, combine the method with this URI Template-formatted 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 required string The link relation type, which serves as an ID for a link that unambiguously describes the semantics of the link. See Link Relations.

method
string The HTTP method required to make the related call.

Enum: "GET" "POST" "PUT" "DELETE" "HEAD" "CONNECT" "OPTIONS" "PATCH" Copy { "href": "string", "rel": "string", "method": "GET" } Link Description The request-related HATEOAS link information.

href required string The complete target URL. To make the related call, combine the method with this URI Template-formatted 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 required string The link relation type, which serves as an ID for a link that unambiguously describes the semantics of the link. See Link Relations.

method
string The HTTP method required to make the related call.

Enum: "GET" "POST" "PUT" "DELETE" "HEAD" "CONNECT" "OPTIONS" "PATCH" Copy { "href": "string", "rel": "string", "method": "GET" } merchant_partner_customer_id The unique ID for a customer generated by PayPal.

string [ 1 .. 22 ] characters ^[0-9a-zA-Z_-]+$ The unique ID for a customer generated by PayPal.

Copy "string" Money The currency and amount for a financial transaction, such as a balance or payment due.

currency_code required string = 3 characters The three-character ISO-4217 currency code that identifies the currency.

value required string <= 32 characters The value, which might be:

An integer for currencies like JPY that are not typically fractional. A decimal fraction for currencies like TND that are subdivided into thousandths. For the required number of decimal places for a currency code, see Currency Codes. Copy { "currency_code": "str", "value": "string" } Name The name of the party.

given_name
string <= 140 characters When the party is a person, the party's given, or first, name.

surname string <= 140 characters 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.

Copy { "given_name": "string", "surname": "string" } Name The name of the party.

full_name
string <= 300 characters When the party is a person, the party's full name.

Copy { "full_name": "string" } Name The name of the party.

given_name
string <= 140 characters When the party is a person, the party's given, or first, name.

surname string <= 140 characters 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.

Copy { "given_name": "string", "surname": "string" } Name The name of the party.

given_name
string <= 140 characters When the party is a person, the party's given, or first, name.

surname string <= 140 characters 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.

Copy { "given_name": "string", "surname": "string" } Name The name of the party.

full_name
string <= 300 characters When the party is a person, the party's full name.

Copy { "full_name": "string" } network_token_response A 3rd party network token refers to a token that is provisioned and vaulted on behalf of the merchants with an external TSP (Token Service Provider).

id
string [ 1 .. 255 ] characters Third party network token id.

cryptogram
string [ 1 .. 262144 ] characters An Encrypted one-time use value that's sent along with Network Token.

expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The token expiration year and month, in Internet date format.

Copy { "id": "string", "cryptogram": "string", "expiry": "string" } network_transaction_reference Reference values used by the card network to identify a transaction.

id required string [ 9 .. 36 ] characters Transaction reference id returned by the scheme. For Visa and Amex, this is the "Tran id" field in response. For MasterCard, this is the "BankNet reference id" field in response. For Discover, this is the "NRID" field in response. The pattern we expect for this field from Visa/Amex/CB/Discover is numeric, Mastercard/BNPP is alphanumeric and Paysecure is alphanumeric with special character -.

date
string = 4 characters The date that the transaction was authorized by the scheme. This field may not be returned for all networks. MasterCard refers to this field as "BankNet reference date.

network string [ 1 .. 255 ] characters ^[A-Z_]+$ Name of the card network through which the transaction was routed.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. Copy { "id": "stringstr", "date": "stri", "network": "VISA" } network_transaction_reference_entity Previous network transaction reference including id and network.

id required string [ 9 .. 36 ] characters Transaction reference id returned by the scheme. For Visa and Amex, this is the "Tran id" field in response. For MasterCard, this is the "BankNet reference id" field in response. For Discover, this is the "NRID" field in response. The pattern we expect for this field from Visa/Amex/CB/Discover is numeric, Mastercard/BNPP is alphanumeric and Paysecure is alphanumeric with special character -.

date
string = 4 characters The date that the transaction was authorized by the scheme. This field may not be returned for all networks. MasterCard refers to this field as "BankNet reference date.

network string [ 1 .. 255 ] characters ^[A-Z_]+$ Name of the card network through which the transaction was routed.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. time
string [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time when the instrument was verified.

Copy { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" } network_transaction_reference_response Previous network transaction reference including id in response.

id required string [ 9 .. 36 ] characters Transaction reference id returned by the scheme. For Visa and Amex, this is the "Tran id" field in response. For MasterCard, this is the "BankNet reference id" field in response. For Discover, this is the "NRID" field in response. The pattern we expect for this field from Visa/Amex/CB/Discover is numeric, Mastercard/BNPP is alphanumeric and Paysecure is alphanumeric with special character -.

date
string = 4 characters The date that the transaction was authorized by the scheme. This field may not be returned for all networks. MasterCard refers to this field as "BankNet reference date.

network string [ 1 .. 255 ] characters ^[A-Z_]+$ Name of the card network through which the transaction was routed.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. time
string [ 20 .. 64 ] characters ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|...Show pattern The date and time when the instrument was verified.

Copy { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" } one_time_charges The one-time charge info at the time of checkout.

setup_fee
object The setup fee for the recurring plan.

shipping_amount object The shipping amount due at the time of checkout.

taxes
object The taxes due at the time of checkout.

product_price
object The product price for any one-time product purchased at the time of checkout.

subtotal
object The subtotal at the time of checkout. This is calculated by using the formula x + y + z where x is first-recurring-charge, y is setup-fee and z is item-price.

total_amount required object The total amount at the time of checkout. This is calculated by using the formula x + y + z where x is subtotal, y is shipping-amount and z is taxes.

CopyExpand allCollapse all { "setup_fee": { "currency_code": "str", "value": "string" }, "shipping_amount": { "currency_code": "str", "value": "string" }, "taxes": { "currency_code": "str", "value": "string" }, "product_price": { "currency_code": "str", "value": "string" }, "subtotal": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } pares_status Transactions status result identifier. The outcome of the issuer's authentication.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Transactions status result identifier. The outcome of the issuer's authentication.

Enum Value Description Y Successful authentication. N Failed authentication / account not verified / transaction denied. U Unable to complete authentication. A Successful attempts transaction. C Challenge required for authentication. R Authentication rejected (merchant must not submit for authorization). D Challenge required; decoupled authentication confirmed. I Informational only; 3DS requestor challenge preference acknowledged. Copy "Y" Patch The JSON patch object to apply partial updates to resources.

op required string The operation.

Enum Value Description add Depending on the target location reference, completes one of these functions: The target location is an array index. Inserts a new value into the array at the specified index. The target location is an object parameter that does not already exist. Adds a new parameter to the object. The target location is an object parameter that does exist. Replaces that parameter's value. The value parameter defines the value to add. For more information, see 4.1. add. remove Removes the value at the target location. For the operation to succeed, the target location must exist. For more information, see 4.2. remove. replace Replaces the value at the target location with a new value. The operation object must contain a value parameter that defines the replacement value. For the operation to succeed, the target location must exist. For more information, see 4.3. replace. move Removes the value at a specified location and adds it to the target location. The operation object must contain a from parameter, which is a string that contains a JSON pointer value that references the location in the target document from which to move the value. For the operation to succeed, the from location must exist. For more information, see 4.4. move. copy Copies the value at a specified location to the target location. The operation object must contain a from parameter, which is a string that contains a JSON pointer value that references the location in the target document from which to copy the value. For the operation to succeed, the from location must exist. For more information, see 4.5. copy. test Tests that a value at the target location is equal to a specified value. The operation object must contain a value parameter that defines the value to compare to the target location's value. For the operation to succeed, the target location must be equal to the value value. For test, equal indicates that the value at the target location and the value that value defines are of the same JSON type. The data type of the value determines how equality is defined: Type Considered equal if both values strings Contain the same number of Unicode characters and their code points are byte-by-byte equal. numbers Are numerically equal. arrays Contain the same number of values, and each value is equal to the value at the corresponding position in the other array, by using these type-specific rules. objects Contain the same number of parameters, and each parameter is equal to a parameter in the other object, by comparing their keys (as strings) and their values (by using these type-specific rules). literals (false, true, and null) Are the same. The comparison is a logical comparison. For example, whitespace between the parameter values of an array is not significant. Also, ordering of the serialization of object parameters is not significant. For more information, see 4.6. test. path
string The JSON Pointer to the target document location at which to complete the operation.

value
any The value to apply. The remove, copy, and move operations do not require a value. Since JSON Patch allows any type for value, the type property is not specified.

from
string The JSON Pointer to the target document location from which to move the value. Required for the move operation.

Copy { "op": "add", "path": "string", "value": null, "from": "string" } Patch The JSON patch object to apply partial updates to resources.

op required string The operation.

Enum Value Description add Depending on the target location reference, completes one of these functions: The target location is an array index. Inserts a new value into the array at the specified index. The target location is an object parameter that does not already exist. Adds a new parameter to the object. The target location is an object parameter that does exist. Replaces that parameter's value. The value parameter defines the value to add. For more information, see 4.1. add. remove Removes the value at the target location. For the operation to succeed, the target location must exist. For more information, see 4.2. remove. replace Replaces the value at the target location with a new value. The operation object must contain a value parameter that defines the replacement value. For the operation to succeed, the target location must exist. For more information, see 4.3. replace. move Removes the value at a specified location and adds it to the target location. The operation object must contain a from parameter, which is a string that contains a JSON pointer value that references the location in the target document from which to move the value. For the operation to succeed, the from location must exist. For more information, see 4.4. move. copy Copies the value at a specified location to the target location. The operation object must contain a from parameter, which is a string that contains a JSON pointer value that references the location in the target document from which to copy the value. For the operation to succeed, the from location must exist. For more information, see 4.5. copy. test Tests that a value at the target location is equal to a specified value. The operation object must contain a value parameter that defines the value to compare to the target location's value. For the operation to succeed, the target location must be equal to the value value. For test, equal indicates that the value at the target location and the value that value defines are of the same JSON type. The data type of the value determines how equality is defined: Type Considered equal if both values strings Contain the same number of Unicode characters and their code points are byte-by-byte equal. numbers Are numerically equal. arrays Contain the same number of values, and each value is equal to the value at the corresponding position in the other array, by using these type-specific rules. objects Contain the same number of parameters, and each parameter is equal to a parameter in the other object, by comparing their keys (as strings) and their values (by using these type-specific rules). literals (false, true, and null) Are the same. The comparison is a logical comparison. For example, whitespace between the parameter values of an array is not significant. Also, ordering of the serialization of object parameters is not significant. For more information, see 4.6. test. path
string The JSON Pointer to the target document location at which to complete the operation.

value
any The value to apply. The remove, copy, and move operations do not require a value. Since JSON Patch allows any type for value, the type property is not specified.

from
string The JSON Pointer to the target document location from which to move the value. Required for the move operation.

Copy { "op": "add", "path": "string", "value": null, "from": "string" } payee_base The details for the merchant who receives the funds and fulfills the order. The merchant is also known as the payee.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The email address of merchant.

merchant_id string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The encrypted PayPal account ID of the merchant.

Copy { "email_address": "string", "merchant_id": "stringstrings" } payer The customer who approves and pays for the order. The customer is also known as the payer.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The email address of the payer.

payer_id
string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The PayPal-assigned ID for the payer.

name
object The name of the payer. Supports only the given_name and surname properties.

phone
object The phone number of the customer. Available only when you enable the Contact Telephone Number option in the Profile & Settings for the merchant's PayPal account. The phone.phone_number supports only national_number.

address object The address of the payer. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties. Also referred to as the billing address of the customer.

CopyExpand allCollapse all { "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } payer The customer who approves and pays for the order. The customer is also known as the payer.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The email address of the payer.

payer_id
string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The PayPal-assigned ID for the payer.

name
object The name of the payer. Supports only the given_name and surname properties.

phone
object The phone number of the customer. Available only when you enable the Contact Telephone Number option in the Profile & Settings for the merchant's PayPal account. The phone.phone_number supports only national_number.

address object The address of the payer. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties. Also referred to as the billing address of the customer.

CopyExpand allCollapse all { "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } payer_base The customer who approves and pays for the order. The customer is also known as the payer.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The email address of the payer.

payer_id
string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The PayPal-assigned ID for the payer.

Copy { "email_address": "string", "payer_id": "string" } payment_method_credentials_card_response Full representation of a Card Payment Token including network token for payment method credentials.

last_digits string [ 2 .. 4 ] characters The last digits of the payment card.

network_token
object A 3rd party network token refers to a token that is provisioned and vaulted on behalf of the merchants with an external TSP (Token Service Provider).

brand
string [ 1 .. 255 ] characters ^[A-Z_]+$ The card brand or network. Typically used in the response.

Enum Value Description VISA Visa card. MASTERCARD Mastecard card. DISCOVER Discover card. AMEX American Express card. SOLO Solo debit card. JCB Japan Credit Bureau card. STAR Military Star card. DELTA Delta Airlines card. SWITCH Switch credit card. MAESTRO Maestro credit card. CB_NATIONALE Carte Bancaire (CB) credit card. CONFIGOGA Configoga credit card. CONFIDIS Confidis credit card. ELECTRON Visa Electron credit card. CETELEM Cetelem credit card. CHINA_UNION_PAY China union pay credit card. DINERS The Diners Club International banking and payment services capability network owned by Discover Financial Services (DFS), one of the most recognized brands in US financial services. ELO The Brazilian Elo card payment network. HIPER The Hiper - Ingenico ePayment network. HIPERCARD The Brazilian Hipercard payment network that's widely accepted in the retail market. RUPAY The RuPay payment network. GE The GE Credit Union 3Point card payment network. SYNCHRONY The Synchrony Financial (SYF) payment network. EFTPOS The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment network. UNKNOWN UNKNOWN payment network. expiry
string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ The card expiration year and month, in Internet date format.

CopyExpand allCollapse all { "last_digits": "stri", "network_token": { "id": "string", "cryptogram": "string", "expiry": "string" }, "brand": "VISA", "expiry": "string" } payment_method_credentials_token_request Payment Method Credentials request to generate network token details for the underlying card associated with the single use token or payment method token.

id required string [ 1 .. 255 ] characters The PayPal-generated single use token or payment method token.

type required string [ 1 .. 32 ] characters The tokenization method that generated the ID.

Enum Value Description SINGLE_USE_TOKEN The single use token is a PayPal generated one time use token, representing underlying payment source. PAYMENT_METHOD_TOKEN The payment method token is a permanent token generated by the merchant, representing underlying payment source. Copy { "id": "string", "type": "SINGLE_USE_TOKEN" } payment_token_response Full representation of a saved payment token.

payment_source
object The vaulted payment method details.

links
Array of objects [ 1 .. 32 ] items An array of related HATEOAS links.

id
string [ 1 .. 36 ] characters ^[0-9a-zA-Z_-]+$ The PayPal-generated ID for the vault token.

customer
object Customer in merchant's or partner's system of records.

CopyExpand allCollapse all { "payment_source": { "card": { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" }, "paypal": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "account_id": "stringstrings", "phone_number": { "country_code": "str", "national_number": "string", "extension_number": "string" } }, "venmo": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "user_name": "string" }, "apple_pay": { "card": { "name": "string", "last_digits": "stri", "type": "CREDIT", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } } }, "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "id": "string", "customer": { "merchant_customer_id": "string", "id": "string" } } payment_token_status The status of the payment token.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Default: "CREATED" The status of the payment token.

Enum Value Description CREATED A setup token is initialized with minimal information, more data must be added to the setup-token to be vaulted PAYER_ACTION_REQUIRED A contingecy on payer approval is required before the payment method can be saved. APPROVED Setup token is ready to be vaulted. If a buyer approval contigency was returned, it is has been approved. VAULTED The payment token has been vaulted. TOKENIZED A vaulted payment method token has been tokenized for short term (one time) use. Copy "CREATED" PayPal Account Identifier The account identifier for a PayPal account.

string (PayPal Account Identifier) = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The account identifier for a PayPal account.

Copy "stringstrings" paypal_wallet_request A resource representing a request to vault PayPal Wallet.

description string [ 1 .. 128 ] characters The description displayed to the consumer on the approval flow for a digital wallet, as well as on the merchant view of the payment token management experience. exp: PayPal.com.

usage_pattern
string [ 1 .. 30 ] characters Expected business/charge model for the billing agreement.

Enum Value Description IMMEDIATE On-demand instant payments – non-recurring, pre-paid, variable amount, variable frequency. DEFERRED Pay after use, non-recurring post-paid, variable amount, irregular frequency. RECURRING_PREPAID Pay upfront fixed or variable amount on a fixed date before the goods/service is delivered. RECURRING_POSTPAID Pay on a fixed date based on usage or consumption after the goods/service is delivered. THRESHOLD_PREPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, before the goods/service is delivered. THRESHOLD_POSTPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, after the goods/service is delivered. UNSCHEDULED_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. UNSCHEDULED_PREPAID Unscheduled card on file plan where the merchant can bill buyer upfront based on an agreed logic, but amount due and frequency can vary. Inclusive of automatic reload plans. SUBSCRIPTION_PREPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due before the good/service is delivered. SUBSCRIPTION_POSTPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due after the goods/services are delivered. INSTALLMENT_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. INSTALLMENT_PREPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due before the good/service is delivered. permit_multiple_payment_tokens
boolean Default: false Create multiple payment tokens for the same payer, merchant/platform combination. Use this when the customer has not logged in at merchant/platform. The payment token thus generated, can then also be used to create the customer account at merchant/platform. Use this also when multiple payment tokens are required for the same payer, different customer at merchant/platform. This helps to identify customers distinctly even though they may share the same PayPal account. This only applies to PayPal payment source.

usage_type
string [ 1 .. 255 ] characters The usage type associated with a digital wallet payment token.

Enum Value Description MERCHANT The PayPal Payment Token will be used for future transaction directly with a merchant. PLATFORM The PayPal Payment Token will be used for future transaction on a platform. A platform is typically a marketplace or a channel that a payer can purchase goods and services from multiple merchants. customer_type
string [ 1 .. 255 ] characters The customer type associated with a digital wallet payment token. This is to indicate whether the customer acting on the merchant / platform is either a business or a consumer.

Enum Value Description CONSUMER The customer vaulting the PayPal payment token is a consumer on the merchant / platform. BUSINESS The customer vaulting the PayPal payment token is a business on merchant / platform. shipping
object The shipping address for the Payer.

billing_plan
object The merchant level Recurring Billing plan metadata for the Billing Agreement.

experience_context
object Customizes the Vault creation flow experience for your customers.

CopyExpand allCollapse all { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "billing_plan": { "billing_cycles": [ { "tenure_type": "REGULAR", "total_cycles": 1, "sequence": 1, "pricing_scheme": { "pricing_model": "FIXED", "price": { "currency_code": "str", "value": "string" }, "reload_threshold_amount": { "currency_code": "str", "value": "string" } }, "start_date": "string" } ], "name": "string", "one_time_charges": { "setup_fee": { "currency_code": "str", "value": "string" }, "shipping_amount": { "currency_code": "str", "value": "string" }, "taxes": { "currency_code": "str", "value": "string" }, "product_price": { "currency_code": "str", "value": "string" }, "subtotal": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } }, "experience_context": { "brand_name": "string", "return_url": "http://example.com", "cancel_url": "http://example.com", "shipping_preference": "GET_FROM_FILE", "locale": "string", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } } paypal_wallet_response Full representation of a PayPal Payment Token.

description string [ 1 .. 128 ] characters The description displayed to the consumer on the approval flow for a digital wallet, as well as on the merchant view of the payment token management experience. exp: PayPal.com.

usage_pattern
string [ 1 .. 30 ] characters Expected business/charge model for the billing agreement.

Enum Value Description IMMEDIATE On-demand instant payments – non-recurring, pre-paid, variable amount, variable frequency. DEFERRED Pay after use, non-recurring post-paid, variable amount, irregular frequency. RECURRING_PREPAID Pay upfront fixed or variable amount on a fixed date before the goods/service is delivered. RECURRING_POSTPAID Pay on a fixed date based on usage or consumption after the goods/service is delivered. THRESHOLD_PREPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, before the goods/service is delivered. THRESHOLD_POSTPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, after the goods/service is delivered. UNSCHEDULED_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. UNSCHEDULED_PREPAID Unscheduled card on file plan where the merchant can bill buyer upfront based on an agreed logic, but amount due and frequency can vary. Inclusive of automatic reload plans. SUBSCRIPTION_PREPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due before the good/service is delivered. SUBSCRIPTION_POSTPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due after the goods/services are delivered. INSTALLMENT_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. INSTALLMENT_PREPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due before the good/service is delivered. permit_multiple_payment_tokens
boolean Default: false Create multiple payment tokens for the same payer, merchant/platform combination. Use this when the customer has not logged in at merchant/platform. The payment token thus generated, can then also be used to create the customer account at merchant/platform. Use this also when multiple payment tokens are required for the same payer, different customer at merchant/platform. This helps to identify customers distinctly even though they may share the same PayPal account. This only applies to PayPal payment source.

usage_type
string [ 1 .. 255 ] characters The usage type associated with a digital wallet payment token.

Enum Value Description MERCHANT The PayPal Payment Token will be used for future transaction directly with a merchant. PLATFORM The PayPal Payment Token will be used for future transaction on a platform. A platform is typically a marketplace or a channel that a payer can purchase goods and services from multiple merchants. customer_type
string [ 1 .. 255 ] characters The customer type associated with a digital wallet payment token. This is to indicate whether the customer acting on the merchant / platform is either a business or a consumer.

Enum Value Description CONSUMER The customer vaulting the PayPal payment token is a consumer on the merchant / platform. BUSINESS The customer vaulting the PayPal payment token is a business on merchant / platform. shipping
object The shipping address for the Payer.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The email address of the payer.

payer_id
string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The PayPal-assigned ID for the payer.

name
object The name of the payer. Supports only the given_name and surname properties.

phone
object The phone number of the customer. Available only when you enable the Contact Telephone Number option in the Profile & Settings for the merchant's PayPal account. The phone.phone_number supports only national_number.

address object The address of the payer. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties. Also referred to as the billing address of the customer.

account_id
string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The account identifier for a PayPal account.

phone_number
object The phone number, in its canonical international E.164 numbering plan format.

CopyExpand allCollapse all { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "account_id": "stringstrings", "phone_number": { "country_code": "str", "national_number": "string", "extension_number": "string" } } Phone The phone number, in its canonical international E.164 numbering plan format.

country_code required string [ 1 .. 3 ] characters The country calling code (CC), in its canonical international E.164 numbering plan format. 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).

national_number required string [ 1 .. 14 ] characters The national number, in its canonical international E.164 numbering plan format. 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).

extension_number
string [ 1 .. 15 ] characters The extension number.

Copy { "country_code": "str", "national_number": "string", "extension_number": "string" } Phone The phone number, in its canonical international E.164 numbering plan format.

country_code required string [ 1 .. 3 ] characters The country calling code (CC), in its canonical international E.164 numbering plan format. 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).

national_number required string [ 1 .. 14 ] characters The national number, in its canonical international E.164 numbering plan format. 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).

Copy { "country_code": "str", "national_number": "string" } Phone The phone number, in its canonical international E.164 numbering plan format.

national_number required string [ 1 .. 14 ] characters The national number, in its canonical international E.164 numbering plan format. 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).

Copy { "national_number": "string" } Phone The phone number, in its canonical international E.164 numbering plan format.

country_code required string [ 1 .. 3 ] characters The country calling code (CC), in its canonical international E.164 numbering plan format. 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).

national_number required string [ 1 .. 14 ] characters The national number, in its canonical international E.164 numbering plan format. 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).

Copy { "country_code": "str", "national_number": "string" } Phone Type The phone type.

string The phone type.

Enum: "FAX" "HOME" "MOBILE" "OTHER" "PAGER" Copy "FAX" phone_with_type The phone information.

phone_type
string The phone type.

Enum: "FAX" "HOME" "MOBILE" "OTHER" "PAGER" phone_number required object The phone number, in its canonical international E.164 numbering plan format. Supports only the national_number property.

CopyExpand allCollapse all { "phone_type": "FAX", "phone_number": { "national_number": "string" } } platform_fee The platform or partner fee, commission, or brokerage fee that is associated with the transaction. Not a separate or isolated transaction leg from the external perspective. The platform fee is limited in scope and is always associated with the original payment for the purchase unit.

amount required object The fee for this transaction.

payee
object The recipient of the fee for this transaction. If you omit this value, the default is the API caller.

CopyExpand allCollapse all { "amount": { "currency_code": "str", "value": "string" }, "payee": { "email_address": "string", "merchant_id": "stringstrings" } } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } Portable Postal Address (Medium-Grained) The portable international postal address. Maps to AddressValidationMetadata and HTML 5.1 Autofilling form controls: the autocomplete attribute.

address_line_1
string <= 300 characters The first line of the address, such as number and street, for example, 173 Drury Lane. Needed for data entry, and Compliance and Risk checks. This field needs to pass the full address.

address_line_2
string <= 300 characters The second line of the address, for example, a suite or apartment number.

admin_area_2
string <= 120 characters A city, town, or village. Smaller than admin_area_level_1.

admin_area_1
string <= 300 characters The highest-level sub-division in a country, which is usually a province, state, or ISO-3166-2 subdivision. This data is formatted for postal delivery, for example, CA and not California. Value, by country, is:

UK. A county. US. A state. Canada. A province. Japan. A prefecture. Switzerland. A kanton. postal_code string <= 60 characters The postal code, which is the ZIP code or equivalent. Typically required for countries with a postal code or an equivalent. See postal code.

country_code required string = 2 characters ^([A-Z]{2}|C2)$ The 2-character ISO 3166-1 code that identifies the country or region.

Note: The country code for Great Britain is GB and not UK 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. Copy { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } pricing_scheme The pricing scheme details.

pricing_model required string [ 1 .. 24 ] characters The pricing model for the billing cycle.

Enum Value Description FIXED A fixed pricing scheme where the customer is charged a fixed amount. VARIABLE A variable pricing scheme where the customer is charged a variable amount. AUTO_RELOAD A auto-reload pricing scheme where the customer is charged a fixed amount for reload. price
object The price the customer will be charged based on the pricing model

reload_threshold_amount object The threshold amount on which the reload charge would be triggered. This will be associated with the account-balance where if the account-balance goes below this amount then customer would incur reload charge.

CopyExpand allCollapse all { "pricing_model": "FIXED", "price": { "currency_code": "str", "value": "string" }, "reload_threshold_amount": { "currency_code": "str", "value": "string" } } processor_response The processor response information for payment requests, such as direct credit card transactions.

avs_code
string The address verification code for Visa, Discover, Mastercard, or American Express transactions.

Enum Value Description 0 For Maestro, all address information matches. 1 For Maestro, none of the address information matches. 2 For Maestro, part of the address information matches. 3 For Maestro, the merchant did not provide AVS information. It was not processed. 4 For Maestro, the address was not checked or the acquirer had no response. The service is not available. A For Visa, Mastercard, or Discover transactions, the address matches but the zip code does not match. For American Express transactions, the card holder address is correct. B For Visa, Mastercard, or Discover transactions, the address matches. International A. C For Visa, Mastercard, or Discover transactions, no values match. International N. D For Visa, Mastercard, or Discover transactions, the address and postal code match. International X. E For Visa, Mastercard, or Discover transactions, not allowed for Internet or phone transactions. For American Express card holder, the name is incorrect but the address and postal code match. F For Visa, Mastercard, or Discover transactions, the address and postal code match. UK-specific X. For American Express card holder, the name is incorrect but the address matches. G For Visa, Mastercard, or Discover transactions, global is unavailable. Nothing matches. I For Visa, Mastercard, or Discover transactions, international is unavailable. Not applicable. M For Visa, Mastercard, or Discover transactions, the address and postal code match. For American Express card holder, the name, address, and postal code match. N For Visa, Mastercard, or Discover transactions, nothing matches. For American Express card holder, the address and postal code are both incorrect. P For Visa, Mastercard, or Discover transactions, postal international Z. Postal code only. R For Visa, Mastercard, or Discover transactions, re-try the request. For American Express, the system is unavailable. S For Visa, Mastercard, Discover, or American Express, the service is not supported. U For Visa, Mastercard, or Discover transactions, the service is unavailable. For American Express, information is not available. For Maestro, the address is not checked or the acquirer had no response. The service is not available. W For Visa, Mastercard, or Discover transactions, whole ZIP code. For American Express, the card holder name, address, and postal code are all incorrect. X For Visa, Mastercard, or Discover transactions, exact match of the address and the nine-digit ZIP code. For American Express, the card holder name, address, and postal code are all incorrect. Y For Visa, Mastercard, or Discover transactions, the address and five-digit ZIP code match. For American Express, the card holder address and postal code are both correct. Z For Visa, Mastercard, or Discover transactions, the five-digit ZIP code matches but no address. For American Express, only the card holder postal code is correct. Null For Maestro, no AVS response was obtained. cvv_code
string The card verification value code for for Visa, Discover, Mastercard, or American Express.

Enum Value Description 0 For Maestro, the CVV2 matched. 1 For Maestro, the CVV2 did not match. 2 For Maestro, the merchant has not implemented CVV2 code handling. 3 For Maestro, the merchant has indicated that CVV2 is not present on card. 4 For Maestro, the service is not available. E For Visa, Mastercard, Discover, or American Express, error - unrecognized or unknown response. I For Visa, Mastercard, Discover, or American Express, invalid or null. M For Visa, Mastercard, Discover, or American Express, the CVV2/CSC matches. N For Visa, Mastercard, Discover, or American Express, the CVV2/CSC does not match. P For Visa, Mastercard, Discover, or American Express, it was not processed. S For Visa, Mastercard, Discover, or American Express, the service is not supported. U For Visa, Mastercard, Discover, or American Express, unknown - the issuer is not certified. X For Visa, Mastercard, Discover, or American Express, no response. For Maestro, the service is not available. All others For Visa, Mastercard, Discover, or American Express, error. Copy { "avs_code": "A", "cvv_code": "E" } recurring_billing_plan_metadata The merchant level Recurring Billing plan metadata for the Billing Agreement.

billing_cycles required Array of objects [ 1 .. 3 ] items An array of billing cycles for trial billing and regular billing. A plan can have at most two trial cycles and only one regular cycle.

name
string [ 1 .. 127 ] characters Name of the recurring plan.

one_time_charges required object Price and currency for any one-time charges due at plan signup.

CopyExpand allCollapse all { "billing_cycles": [ { "tenure_type": "REGULAR", "total_cycles": 1, "sequence": 1, "pricing_scheme": { "pricing_model": "FIXED", "price": { "currency_code": "str", "value": "string" }, "reload_threshold_amount": { "currency_code": "str", "value": "string" } }, "start_date": "string" } ], "name": "string", "one_time_charges": { "setup_fee": { "currency_code": "str", "value": "string" }, "shipping_amount": { "currency_code": "str", "value": "string" }, "taxes": { "currency_code": "str", "value": "string" }, "product_price": { "currency_code": "str", "value": "string" }, "subtotal": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } } sepa_debit_details object (sepa_debit_details) Copy { } sepa_debit_experience_context Customizes the payer experience during the approval process for the SEPA Debit payment.

locale
string [ 2 .. 10 ] characters ^[a-z]{2}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|[...Show pattern The BCP 47-formatted locale of pages that the PayPal payment experience shows. PayPal supports a five-character code. For example, da-DK, he-IL, id-ID, ja-JP, no-NO, pt-BR, ru-RU, sv-SE, th-TH, zh-CN, zh-HK, or zh-TW.

return_url required string The URL where the customer is redirected after the customer approves the payment.

cancel_url required string The URL where the customer is redirected after the customer cancels the payment.

Copy { "locale": "string", "return_url": "string", "cancel_url": "string" } setup_token_request Setup Token Request where the source defines the type of instrument to be stored.

payment_source required object The payment method to vault with the instrument details.

customer
object Customer in merchant's or partner's system of records.

CopyExpand allCollapse all { "payment_source": { "card": { "name": "string", "number": "stringstrings", "security_code": "stri", "expiry": "string", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "experience_context": { "brand_name": "string", "return_url": "http://example.com", "cancel_url": "http://example.com", "locale": "string", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" }, "verification_method": "SCA_WHEN_REQUIRED" }, "paypal": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "billing_plan": { "billing_cycles": [ { "tenure_type": "REGULAR", "total_cycles": 1, "sequence": 1, "pricing_scheme": { "pricing_model": "FIXED", "price": { "currency_code": null, "value": null }, "reload_threshold_amount": { "currency_code": null, "value": null } }, "start_date": "string" } ], "name": "string", "one_time_charges": { "setup_fee": { "currency_code": "str", "value": "string" }, "shipping_amount": { "currency_code": "str", "value": "string" }, "taxes": { "currency_code": "str", "value": "string" }, "product_price": { "currency_code": "str", "value": "string" }, "subtotal": { "currency_code": "str", "value": "string" }, "total_amount": { "currency_code": "str", "value": "string" } } }, "experience_context": { "brand_name": "string", "return_url": "http://example.com", "cancel_url": "http://example.com", "shipping_preference": "GET_FROM_FILE", "locale": "string", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } }, "venmo": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "experience_context": { "brand_name": "string", "shipping_preference": "GET_FROM_FILE", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } }, "token": { "id": "string", "type": "SETUP_TOKEN" } }, "customer": { "merchant_customer_id": "string", "id": "string" } } setup_token_response Minimal representation of a cached setup token.

payment_source
object The setup payment method details.

links
Array of objects [ 1 .. 32 ] items An array of related HATEOAS links.

id
string [ 1 .. 36 ] characters ^[0-9a-zA-Z_-]+$ The PayPal-generated ID for the vault token.

customer
object Customer in merchant's or partner's system of records.

status
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Default: "CREATED" The status of the payment token.

Enum Value Description CREATED A setup token is initialized with minimal information, more data must be added to the setup-token to be vaulted PAYER_ACTION_REQUIRED A contingecy on payer approval is required before the payment method can be saved. APPROVED Setup token is ready to be vaulted. If a buyer approval contigency was returned, it is has been approved. VAULTED The payment token has been vaulted. TOKENIZED A vaulted payment method token has been tokenized for short term (one time) use. CopyExpand allCollapse all { "payment_source": { "card": { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" }, "paypal": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "account_id": "stringstrings", "phone_number": { "country_code": "str", "national_number": "string", "extension_number": "string" } }, "venmo": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "user_name": "string" } }, "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "id": "string", "customer": { "merchant_customer_id": "string", "id": "string" }, "status": "CREATED" } setup_token_response Minimal representation of a cached setup token.

payment_source
object The setup payment method details.

links
Array of objects [ 1 .. 32 ] items An array of related HATEOAS links.

id
string [ 1 .. 36 ] characters ^[0-9a-zA-Z_-]+$ The PayPal-generated ID for the vault token.

customer
object Customer in merchant's or partner's system of records.

status
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Default: "CREATED" The status of the payment token.

Enum Value Description CREATED A setup token is initialized with minimal information, more data must be added to the setup-token to be vaulted PAYER_ACTION_REQUIRED A contingecy on payer approval is required before the payment method can be saved. APPROVED Setup token is ready to be vaulted. If a buyer approval contigency was returned, it is has been approved. VAULTED The payment token has been vaulted. TOKENIZED A vaulted payment method token has been tokenized for short term (one time) use. CopyExpand allCollapse all { "payment_source": { "card": { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" }, "paypal": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "account_id": "stringstrings", "phone_number": { "country_code": "str", "national_number": "string", "extension_number": "string" } }, "venmo": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "user_name": "string" } }, "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "id": "string", "customer": { "merchant_customer_id": "string", "id": "string" }, "status": "CREATED" } shipping_detail The shipping details.

type
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ A classification for the method of purchase fulfillment (e.g shipping, in-store pickup, etc). Either type or options may be present, but not both.

Enum Value Description SHIPPING The payer intends to receive the items at a specified address. PICKUP_IN_PERSON DEPRECATED. Please use "PICKUP_FROM_PERSON" instead. PICKUP_IN_STORE The payer intends to pick up the item(s) from the payee's physical store. Also termed as BOPIS, "Buy Online, Pick-up in Store". Seller protection is provided with this option. PICKUP_FROM_PERSON The payer intends to pick up the item(s) from the payee in person. Also termed as BOPIP, "Buy Online, Pick-up in Person". Seller protection is not available, since the payer is receiving the item from the payee in person, and can validate the item prior to payment. name
object The name of the person to whom to ship the items. Supports only the full_name property.

phone_number
object The phone number of the recipient of the shipped items, which may belong to either the payer, or an alternate contact, for delivery. [Format - canonical international E.164 numbering plan]

address object The address of the person to whom to ship the items. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } shipping_option The options that the payee or merchant offers to the payer to ship or pick up their items.

id required string <= 127 characters A unique ID that identifies a payer-selected shipping option.

label required string <= 127 characters A description that the payer sees, which helps them choose an appropriate shipping option. For example, Free Shipping, USPS Priority Shipping, Expédition prioritaire USPS, or USPS yōuxiān fā huò. Localize this description to the payer's locale.

selected required boolean If the API request sets selected = true, it represents the shipping option that the payee or merchant expects to be pre-selected for the payer when they first view the shipping.options in the PayPal Checkout experience. As part of the response if a shipping.option contains selected=true, it represents the shipping option that the payer selected during the course of checkout with PayPal. Only one shipping.option can be set to selected=true.

type
string A classification for the method of purchase fulfillment.

Enum Value Description SHIPPING The payer intends to receive the items at a specified address. PICKUP DEPRECATED. To ensure that seller protection is correctly assigned, please use 'PICKUP_IN_STORE' or 'PICKUP_FROM_PERSON' instead. Currently, this field indicates that the payer intends to pick up the items at a specified address (ie. a store address). PICKUP_IN_STORE The payer intends to pick up the item(s) from the payee's physical store. Also termed as BOPIS, "Buy Online, Pick-up in Store". Seller protection is provided with this option. PICKUP_FROM_PERSON The payer intends to pick up the item(s) from the payee in person. Also termed as BOPIP, "Buy Online, Pick-up in Person". Seller protection is not available, since the payer is receiving the item from the payee in person, and can validate the item prior to payment. amount
object The shipping cost for the selected option.

CopyExpand allCollapse all { "id": "string", "label": "string", "selected": true, "type": "SHIPPING", "amount": { "currency_code": "str", "value": "string" } } shipping_type A classification for the method of purchase fulfillment.

string A classification for the method of purchase fulfillment.

Enum Value Description SHIPPING The payer intends to receive the items at a specified address. PICKUP DEPRECATED. To ensure that seller protection is correctly assigned, please use 'PICKUP_IN_STORE' or 'PICKUP_FROM_PERSON' instead. Currently, this field indicates that the payer intends to pick up the items at a specified address (ie. a store address). PICKUP_IN_STORE The payer intends to pick up the item(s) from the payee's physical store. Also termed as BOPIS, "Buy Online, Pick-up in Store". Seller protection is provided with this option. PICKUP_FROM_PERSON The payer intends to pick up the item(s) from the payee in person. Also termed as BOPIP, "Buy Online, Pick-up in Person". Seller protection is not available, since the payer is receiving the item from the payee in person, and can validate the item prior to payment. Copy "SHIPPING" store_in_vault_instruction Defines how and when the payment source gets vaulted.

string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Defines how and when the payment source gets vaulted.

Value Description ON_SUCCESS Defines that the payment_source will be vaulted only when at least one authorization or capture using that payment_source is successful. Copy "ON_SUCCESS" tax_info The tax ID of the customer. The customer is also known as the payer. Both tax_id and tax_id_type are required.

tax_id required string [ 1 .. 14 ] characters The customer's tax ID value.

tax_id_type required string [ 1 .. 14 ] characters The customer's tax ID type.

Enum Value Description BR_CPF The individual tax ID type, typically is 11 characters long. BR_CNPJ The business tax ID type, typically is 14 characters long. Copy { "tax_id": "string", "tax_id_type": "BR_CPF" } The authorization state The authorization state of the wallet instrument during transaction.

string [ 1 .. 100 ] characters ^[0-9A-Z_]+$ The authorization state of the wallet instrument during transaction.

Enum Value Description NOT_STARTED The authorization state is not started. PENDING The authorization state is pending. CREATED The authorization state is created. CANCELLED The authorization state is cancelled. REVOKED The authorization state is revoked. REFUSED The authorization state is refused. CANCELLATION_REQUESTED The authorization state is in process on cancellation. CANCELLATION_REFUSED The authorization state is refused to cancel. LODGED The authorization state is lodged. Copy "NOT_STARTED" The authorization status The authorization status of the wallet instrument.

string [ 1 .. 100 ] characters ^[0-9A-Z_]+$ The authorization status of the wallet instrument.

Enum Value Description AUTHORIZED The authorization status is authorized. BLOCKED The authorization status is blocked. FAILED The authorization status is failed. NOT_APPLICABLE Authorization not applicable. NOT_SUPPORTED Authorization not supported. UNAUTHORIZED The authorization status is unauthorized. Copy "AUTHORIZED" three_d_secure_authentication_response Results of 3D Secure Authentication.

authentication_status
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ The outcome of the issuer's authentication.

Enum Value Description Y Successful authentication. N Failed authentication / account not verified / transaction denied. U Unable to complete authentication. A Successful attempts transaction. C Challenge required for authentication. R Authentication rejected (merchant must not submit for authorization). D Challenge required; decoupled authentication confirmed. I Informational only; 3DS requestor challenge preference acknowledged. enrollment_status
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Status of authentication eligibility.

Enum Value Description Y Yes. The bank is participating in 3-D Secure protocol and will return the ACSUrl. N No. The bank is not participating in 3-D Secure protocol. U Unavailable. The DS or ACS is not available for authentication at the time of the request. B Bypass. The merchant authentication rule is triggered to bypass authentication. authentication_id
string [ 1 .. 255 ] characters The externally received 3ds authentication id, to be returned in card detokenization response.

Copy { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } three_d_secure_authentication_response Results of 3D Secure Authentication.

authentication_status
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ The outcome of the issuer's authentication.

Enum Value Description Y Successful authentication. N Failed authentication / account not verified / transaction denied. U Unable to complete authentication. A Successful attempts transaction. C Challenge required for authentication. R Authentication rejected (merchant must not submit for authorization). D Challenge required; decoupled authentication confirmed. I Informational only; 3DS requestor challenge preference acknowledged. enrollment_status
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Status of authentication eligibility.

Enum Value Description Y Yes. The bank is participating in 3-D Secure protocol and will return the ACSUrl. N No. The bank is not participating in 3-D Secure protocol. U Unavailable. The DS or ACS is not available for authentication at the time of the request. B Bypass. The merchant authentication rule is triggered to bypass authentication. Copy { "authentication_status": "Y", "enrollment_status": "Y" } token_id_request The Tokenized Payment Source representing a Request to Vault a Token.

id required string [ 1 .. 255 ] characters The PayPal-generated ID for the token.

type required string [ 1 .. 255 ] characters The tokenization method that generated the ID.

Value Description SETUP_TOKEN The setup token, which is a temporary reference to payment source. Copy { "id": "string", "type": "SETUP_TOKEN" } token_request Payment Token Request where the source defines the type of instrument to be stored.

payment_source required object The payment method to vault with the instrument details.

customer
object Customer in merchant's or partner's system of records.

CopyExpand allCollapse all { "payment_source": { "card": { "name": "string", "number": "stringstrings", "security_code": "stri", "expiry": "string", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "token": { "id": "string", "type": "SETUP_TOKEN" } }, "customer": { "merchant_customer_id": "string", "id": "string" } } universal_product_code The Universal Product Code of the item.

type required string [ 1 .. 5 ] characters ^[0-9A-Z_-]+$ The Universal Product Code type.

Enum Value Description UPC-A N/A UPC-B N/A UPC-C N/A UPC-D N/A UPC-E N/A UPC-2 N/A UPC-5 N/A code required string [ 6 .. 17 ] characters The UPC product code of the item.

Copy { "type": "UPC-A", "code": "string" } url Describes the URL.

string (url) Describes the URL.

Copy "http://example.com" Vault Instruction Vault Instruction on action to be performed after a successful payer approval.

string [ 1 .. 255 ] characters ^[A-Z_]+$ Default: "ON_CREATE_PAYMENT_TOKENS" Vault Instruction on action to be performed after a successful payer approval.

Enum Value Description ON_CREATE_PAYMENT_TOKENS Vault the payment method after API caller performs a successful POST on Payment Tokens. ON_PAYER_APPROVAL Vault the payment method on successful payer authentication and approval. Copy "ON_CREATE_PAYMENT_TOKENS" vault payment tokens Collection of payment tokens saved for a given customer.

total_items integer [ 1 .. 50 ] Total number of items.

total_pages integer [ 1 .. 10 ] Total number of pages.

payment_tokens
Array of objects [ 0 .. 64 ] items links
Array of objects [ 1 .. 32 ] items An array of related HATEOAS links.

customer
object This object defines a customer in your system. Use it to manage customer profiles, save payment methods and contact details.

CopyExpand allCollapse all { "total_items": 1, "total_pages": 1, "payment_tokens": [ { "payment_source": { "card": { "name": "string", "last_digits": "stri", "verification": { "network_transaction_id": "string", "date": "stri", "network": "VISA", "time": "string", "amount": { "currency_code": "str", "value": "string" }, "processor_response": { "avs_code": "A", "cvv_code": "E" }, "three_d_secure": null }, "network_transaction_reference": { "id": "stringstr", "date": "stri", "network": "VISA", "time": "stringstringstringst" }, "authentication_result": { "three_d_secure": { "authentication_status": "Y", "enrollment_status": "Y", "authentication_id": "string" } }, "brand": "VISA", "expiry": "strings", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st", "id": "string" }, "verification_status": "VERIFIED", "bin_details": { "bin": "string", "issuing_bank": "string", "products": [ "string" ], "bin_country_code": "string" }, "type": "CREDIT" }, "paypal": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "account_id": "stringstrings", "phone_number": { "country_code": "str", "national_number": "string", "extension_number": "string" } }, "venmo": { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "email_address": "string", "payer_id": "string", "name": { "given_name": "string", "surname": "string" }, "phone": { "phone_type": "FAX", "phone_number": { "national_number": "string" } }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" }, "user_name": "string" }, "apple_pay": { "card": { "name": "string", "last_digits": "stri", "type": "CREDIT", "brand": "VISA", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } } }, "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "id": "string", "customer": { "merchant_customer_id": "string", "id": "string" } } ], "links": [ { "href": "string", "rel": "string", "method": "GET" } ], "customer": { "merchant_customer_id": "string", "id": "string" } } vault_instruction_base Basic vault instruction specification that can be extended by specific payment sources that supports vaulting.

store_in_vault
string [ 1 .. 255 ] characters ^[0-9A-Z_]+$ Defines how and when the payment source gets vaulted.

Value Description ON_SUCCESS Defines that the payment_source will be vaulted only when at least one authorization or capture using that payment_source is successful. Copy { "store_in_vault": "ON_SUCCESS" } vault_sepa_debit_response An API resource used in the response of securely storing a SEPA Debit.

iban_last_chars string [ 4 .. 34 ] characters [a-zA-Z0-9]{4} The last 4 characters of the SEPA IBAN number.

billing_address object The billing address for this SEPA bank account. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties.

CopyExpand allCollapse all { "iban_last_chars": "string", "billing_address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } } venmo_request A resource representing a request to vault Venmo.

description string [ 1 .. 128 ] characters The description displayed to the consumer on the approval flow for a digital wallet, as well as on the merchant view of the payment token management experience. exp: PayPal.com.

usage_pattern
string [ 1 .. 30 ] characters Expected business/charge model for the billing agreement.

Enum Value Description IMMEDIATE On-demand instant payments – non-recurring, pre-paid, variable amount, variable frequency. DEFERRED Pay after use, non-recurring post-paid, variable amount, irregular frequency. RECURRING_PREPAID Pay upfront fixed or variable amount on a fixed date before the goods/service is delivered. RECURRING_POSTPAID Pay on a fixed date based on usage or consumption after the goods/service is delivered. THRESHOLD_PREPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, before the goods/service is delivered. THRESHOLD_POSTPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, after the goods/service is delivered. UNSCHEDULED_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. UNSCHEDULED_PREPAID Unscheduled card on file plan where the merchant can bill buyer upfront based on an agreed logic, but amount due and frequency can vary. Inclusive of automatic reload plans. SUBSCRIPTION_PREPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due before the good/service is delivered. SUBSCRIPTION_POSTPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due after the goods/services are delivered. INSTALLMENT_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. INSTALLMENT_PREPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due before the good/service is delivered. permit_multiple_payment_tokens
boolean Default: false Create multiple payment tokens for the same payer, merchant/platform combination. Use this when the customer has not logged in at merchant/platform. The payment token thus generated, can then also be used to create the customer account at merchant/platform. Use this also when multiple payment tokens are required for the same payer, different customer at merchant/platform. This helps to identify customers distinctly even though they may share the same PayPal account. This only applies to PayPal payment source.

usage_type
string [ 1 .. 255 ] characters The usage type associated with a digital wallet payment token.

Enum Value Description MERCHANT The PayPal Payment Token will be used for future transaction directly with a merchant. PLATFORM The PayPal Payment Token will be used for future transaction on a platform. A platform is typically a marketplace or a channel that a payer can purchase goods and services from multiple merchants. customer_type
string [ 1 .. 255 ] characters The customer type associated with a digital wallet payment token. This is to indicate whether the customer acting on the merchant / platform is either a business or a consumer.

Enum Value Description CONSUMER The customer vaulting the PayPal payment token is a consumer on the merchant / platform. BUSINESS The customer vaulting the PayPal payment token is a business on merchant / platform. shipping
object The shipping address for the Payer.

experience_context
object Customizes the Vault creation flow experience for your customers.

CopyExpand allCollapse all { "description": "string", "usage_pattern": "IMMEDIATE", "permit_multiple_payment_tokens": false, "usage_type": "MERCHANT", "customer_type": "CONSUMER", "shipping": { "type": "SHIPPING", "name": { "full_name": "string" }, "phone_number": { "country_code": "str", "national_number": "string" }, "address": { "address_line_1": "string", "address_line_2": "string", "admin_area_2": "string", "admin_area_1": "string", "postal_code": "string", "country_code": "st" } }, "experience_context": { "brand_name": "string", "shipping_preference": "GET_FROM_FILE", "vault_instruction": "ON_CREATE_PAYMENT_TOKENS" } } venmo_response Full representation of a Venmo Payment Token.

description string [ 1 .. 128 ] characters The description displayed to the consumer on the approval flow for a digital wallet, as well as on the merchant view of the payment token management experience. exp: PayPal.com.

usage_pattern
string [ 1 .. 30 ] characters Expected business/charge model for the billing agreement.

Enum Value Description IMMEDIATE On-demand instant payments – non-recurring, pre-paid, variable amount, variable frequency. DEFERRED Pay after use, non-recurring post-paid, variable amount, irregular frequency. RECURRING_PREPAID Pay upfront fixed or variable amount on a fixed date before the goods/service is delivered. RECURRING_POSTPAID Pay on a fixed date based on usage or consumption after the goods/service is delivered. THRESHOLD_PREPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, before the goods/service is delivered. THRESHOLD_POSTPAID Charge payer when the set amount is reached or monthly billing cycle, whichever comes first, after the goods/service is delivered. UNSCHEDULED_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. UNSCHEDULED_PREPAID Unscheduled card on file plan where the merchant can bill buyer upfront based on an agreed logic, but amount due and frequency can vary. Inclusive of automatic reload plans. SUBSCRIPTION_PREPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due before the good/service is delivered. SUBSCRIPTION_POSTPAID Subscription plan where the amount due and the billing frequency are fixed, and there is no defined duration with the payment due after the goods/services are delivered. INSTALLMENT_POSTPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due after the goods/services are delivered. INSTALLMENT_PREPAID Merchant-managed installment plan when the amount to be paid and the billing frequency are fixed, but there is a defined number of payments with the payment due before the good/service is delivered. permit_multiple_payment_tokens
boolean Default: false Create multiple payment tokens for the same payer, merchant/platform combination. Use this when the customer has not logged in at merchant/platform. The payment token thus generated, can then also be used to create the customer account at merchant/platform. Use this also when multiple payment tokens are required for the same payer, different customer at merchant/platform. This helps to identify customers distinctly even though they may share the same PayPal account. This only applies to PayPal payment source.

usage_type
string [ 1 .. 255 ] characters The usage type associated with a digital wallet payment token.

Enum Value Description MERCHANT The PayPal Payment Token will be used for future transaction directly with a merchant. PLATFORM The PayPal Payment Token will be used for future transaction on a platform. A platform is typically a marketplace or a channel that a payer can purchase goods and services from multiple merchants. customer_type
string [ 1 .. 255 ] characters The customer type associated with a digital wallet payment token. This is to indicate whether the customer acting on the merchant / platform is either a business or a consumer.

Enum Value Description CONSUMER The customer vaulting the PayPal payment token is a consumer on the merchant / platform. BUSINESS The customer vaulting the PayPal payment token is a business on merchant / platform. shipping
object The shipping address for the Payer.

email_address
string [ 3 .. 254 ] characters (?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-...Show pattern The email address of the payer.

payer_id
string = 13 characters ^[2-9A-HJ-NP-Z]{13}$ The PayPal-assigned ID for the payer.

name
object The name of the payer. Supports only the given_name and surname properties.

phone
object The phone number of the customer. Available only when you enable the Contact Telephone Number option in the Profile & Settings for the merchant's PayPal account. The phone.phone_number supports only national_number.

address object The address of the payer. Supports only the address_line_1, address_line_2, admin_area_1, admin_area_2, postal_code, and country_code properties. Also referred to as the billing address of the customer.

user_name
string [ 1 .. 50 ] characters The Venmo username, as chosen by the user.