{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/PaymentLinkRequest",
"title": "PaymentLinkRequest",
"properties": {
"allowedPaymentMethods": {
"description": "List of payment methods to be presented to the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`",
"items": {
"type": "string"
},
"type": "array"
},
"amount": {
"description": "The payment amount and currency.",
"$ref": "#/components/schemas/Amount"
},
"applicationInfo": {
"description": "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).",
"$ref": "#/components/schemas/ApplicationInfo"
},
"billingAddress": {
"description": "The address where to send the invoice.",
"$ref": "#/components/schemas/Address"
},
"blockedPaymentMethods": {
"description": "List of payment methods to be hidden from the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`",
"items": {
"type": "string"
},
"type": "array"
},
"captureDelayHours": {
"x-addedInVersion": "69",
"description": "The delay between the authorisation and scheduled auto-capture, specified in hours.",
"format": "int32",
"type": "integer"
},
"countryCode": {
"description": "The shopper's two-letter country code.",
"type": "string"
},
"dateOfBirth": {
"x-addedInVersion": "69",
"description": "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD",
"format": "date",
"type": "string"
},
"deliverAt": {
"description": "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.",
"format": "date-time",
"type": "string"
},
"deliveryAddress": {
"description": "The address where the purchased goods should be delivered.",
"$ref": "#/components/schemas/Address"
},
"description": {
"description": "A short description visible on the payment page.\nMaximum length: 280 characters.",
"type": "string"
},
"expiresAt": {
"x-addedInVersion": "71",
"description": "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with time zone offset: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.",
"format": "date-time",
"type": "string"
},
"installmentOptions": {
"additionalProperties": {
"$ref": "#/components/schemas/InstallmentOption"
},
"description": "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.",
"type": "object"
},
"lineItems": {
"description": "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.",
"items": {
"$ref": "#/components/schemas/LineItem"
},
"type": "array"
},
"manualCapture": {
"description": "Indicates if the payment must be [captured manually](https://docs.adyen.com/online-payments/capture).",
"type": "boolean"
},
"mcc": {
"x-addedInVersion": "69",
"description": "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.",
"type": "string"
},
"merchantAccount": {
"description": "The merchant account identifier for which the payment link is created.",
"type": "string"
},
"merchantOrderReference": {
"description": "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.",
"type": "string"
},
"metadata": {
"additionalProperties": {
"type": "string"
},
"description": "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.",
"maxLength": 80,
"type": "object"
},
"recurringProcessingModel": {
"description": "Defines a recurring payment type. Required when `storePaymentMethodMode` is set to **askForConsent** or **enabled**.\nPossible values:\n* **Subscription** A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n",
"enum": [
"CardOnFile",
"Subscription",
"UnscheduledCardOnFile"
],
"type": "string"
},
"reference": {
"description": "A reference that is used to uniquely identify the payment in future communications about the payment status.",
"type": "string"
},
"requiredShopperFields": {
"x-addedInVersion": "67",
"description": "List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\nPossible values:\n* **billingAddress** The address where to send the invoice.\n* **deliveryAddress** The address where the purchased goods should be delivered.\n* **shopperEmail** The shopper's email address.\n* **shopperName** The shopper's full name.\n* **telephoneNumber** The shopper's phone number.\n",
"items": {
"enum": [
"billingAddress",
"deliveryAddress",
"shopperEmail",
"shopperName",
"telephoneNumber"
],
"type": "string"
},
"type": "array"
},
"returnUrl": {
"description": "Website URL used for redirection after payment is completed.\nIf provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.",
"type": "string"
},
"reusable": {
"description": "Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only.",
"type": "boolean"
},
"riskData": {
"x-addedInVersion": "65",
"description": "Any risk-related settings to apply to the payment.",
"$ref": "#/components/schemas/RiskData"
},
"shopperEmail": {
"description": "The shopper's email address.",
"type": "string"
},
"shopperLocale": {
"description": "The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`.\n\nFor a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#language).",
"type": "string"
},
"shopperName": {
"description": "The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program.",
"$ref": "#/components/schemas/Name"
},
"shopperReference": {
"description": "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.",
"maxLength": 256,
"minLength": 3,
"type": "string"
},
"shopperStatement": {
"x-addedInVersion": "69",
"description": "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.",
"type": "string"
},
"showRemovePaymentMethodButton": {
"default": true,
"description": "Set to **false** to hide the button that lets the shopper remove a stored payment method.",
"type": "boolean"
},
"socialSecurityNumber": {
"x-addedInVersion": "69",
"description": "The shopper's social security number.",
"type": "string"
},
"splitCardFundingSources": {
"x-addedInVersion": "69",
"default": false,
"description": "Boolean value indicating whether the card payment method should be split into separate debit and credit options.",
"type": "boolean"
},
"splits": {
"description": "An array of objects specifying how to split a payment when using [Adyen for Platforms](https://docs.adyen.com/marketplaces-and-platforms/processing-payments#providing-split-information), [Classic Platforms integration](https://docs.adyen.com/marketplaces-and-platforms/classic/processing-payments#providing-split-information), or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).",
"items": {
"$ref": "#/components/schemas/Split"
},
"type": "array"
},
"store": {
"description": "The physical store, for which this payment is processed.",
"type": "string"
},
"storePaymentMethodMode": {
"x-addedInVersion": "68",
"description": "Indicates if the details of the payment method will be stored for the shopper. Possible values:\n* **disabled** No details will be stored (default).\n* **askForConsent** If the `shopperReference` is provided, the UI lets the shopper choose if they want their payment details to be stored.\n* **enabled** If the `shopperReference` is provided, the details will be stored without asking the shopper for consent. \n When set to **askForConsent** or **enabled**, you must also include the `recurringProcessingModel` parameter.",
"enum": [
"askForConsent",
"disabled",
"enabled"
],
"type": "string"
},
"telephoneNumber": {
"x-addedInVersion": "68",
"description": "The shopper's telephone number.",
"type": "string"
},
"themeId": {
"x-addedInVersion": "67",
"description": "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.",
"type": "string"
}
},
"required": [
"amount",
"reference",
"merchantAccount"
],
"type": "object"
}