Skip to main content
Welcome to the preview portal — This is an early release of the new Doc Hub experience, with more content coming soon.

Create a Customer-Set Price Link


Use the information in this section to create customer-set price links that you can send or display to your customers. Your customers can then use the link to pay on a secure -hosted website.

Customer-set links are typically used to make donations. To create a link for customers to make purchases, see Create a Fixed-Price Link.

Partner Information

If your merchant account is associated with a partner, you can include your partner solution ID (PSID) in the request for tracking and reporting purposes. To submit your PSID, include the clientReferenceInformation.partner.solutionId request field, and set its field value to your PSID.

Sending the Request

For environment base URLs, see Endpoints: Pay by Link.

Endpoint

POST /ipl/v2/payment-links

POST /ipl/v2/payment-links

Example

{    "processingInformation": {        "linkType": "DONATION"    },    "purchaseInformation": {        "purchaseNumber": "68435461384354384836"    },    "orderInformation": {        "amountDetails": {            "minAmount": "1",            "currency": "USD",            "totalAmount": "1"        },        "lineItems": [            {                "productName": "Fundraiser",                "unitPrice": "1"            }        ]    }}
{  "_links": {    "self": {      "href": "/ipl/v2/payment-links/68435461384354384836",      "method": "GET"    },    "update": {      "href": "/ipl/v2/payment-links/68435461384354384836",      "method": "PATCH"    }  },  "id": "68435461384354384836",  "submitTimeUtc": "2024-08-08T14:51:16.505077155Z",  "status": "ACTIVE",  "processingInformation": {    "linkType": "DONATION",    "requestPhone": false,    "requestShipping": false  },  "purchaseInformation": {    "purchaseNumber": "68435461384354384836",    "createdDate": "2024-08-08T14:51:16.523",    "paymentLink": "/ebc2/payByLink/pay/nQpuAeme4aRwucfJtAq8AyLwdUjcWRGdhGAyPrLmIh0LGDaW4hvdnHCqf1lSRUJV"  },  "orderInformation": {    "amountDetails": {      "totalAmount": 1,      "currency": "USD",      "minAmount": 1    },    "lineItems": [      {        "productName": "Fundraiser"      }    ]  }}
Required Fields
orderInformation.amountDetails.currency string

ISO currency code (for example, USD).

orderInformation.amountDetails.minAmount string

Minimum amount a customer can enter. Required for donation links.

orderInformation.amountDetails.totalAmount string

Default suggested amount displayed to the customer, who can change it before paying subject to minAmount and maxAmount constraints. For a single-item donation link, set to the same value as orderInformation.lineItems[].unitPrice.

orderInformation.lineItems[].productName string

Name of the product or cause.

orderInformation.lineItems[].unitPrice string

Price per unit. For a single-item donation link, set to the same value as orderInformation.amountDetails.totalAmount. totalAmount is the aggregate amount; unitPrice is the per-item amount — for a single item these must match.

processingInformation.linkType string

Set to DONATION.

purchaseInformation.purchaseNumber string

Set to a unique identifier for the customer-set price link.

Optional Fields
clientReferenceInformation.partner.developerId string

Set to your developer ID.

clientReferenceInformation.partner.solutionId string

Set to your partner solution ID (PSID).

orderInformation.amountDetails.maxAmount string

Maximum payment amount. The customer cannot submit a payment above this value. For donation links, capping the maximum amount prevents unexpectedly large charges.

orderInformation.lineItems[].productDescription string

Description of the product or cause.

orderInformation.lineItems[].productSku string

Product SKU or identifier.

orderInformation.lineItems[].quantity integer

Number of units.

processingInformation.requestPhone boolean

When true, the payment page prompts the customer to enter a phone number before completing payment.

processingInformation.requestShipping boolean

When true, adds a required shipping address field to the payment form.

Response

A successful response returns HTTP 201 with the payment link details, including:

  • id — Unique identifier for the payment link.
  • status — ACTIVE for a new payment link.
  • purchaseInformation.paymentLink — The URL to share with customers.

Last published: October 28, 2026

Not available for your audience

This page isn't available for your current audience selection.