Skip to main content

Update a Customer-Set Price Link


Overview

Send a PATCH request to update a customer-set price payment link. The same endpoint (PATCH /ipl/v2/payment-links/{id}) is used for all link types; the linkType field value determines which update behavior applies. A customer-set price link uses linkType: DONATION, which lets the buyer enter their own payment amount. To update a fixed-price link, see Update a Fixed-Price Link.

When sending an update request, include all of the fields from the original request to create the link. If you exclude a field, the information corresponding to that field is removed from the updated payment page.

Status-only updates (deactivating or reactivating a link) are a permitted exception — you can send only the status field without including the other link fields.

Sending the Request

Endpoint: PATCH /ipl/v2/payment-links/{id}

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

For India Production, use the base URL.

Set {id} to the payment number ID contained in the create payment link response.

Required Fields

processingInformation.linkType

Set to DONATION.

orderInformation.amountDetails.currency

Three-character ISO 4217 currency code. For example, USD.

orderInformation.amountDetails.totalAmount

Default amount displayed to the customer. The customer can change this value before paying, subject to minAmount and maxAmount constraints.

orderInformation.amountDetails.minAmount

Minimum payment amount. The customer cannot submit a payment below this value.

orderInformation.lineItems[].productName

Name of the product or service.

orderInformation.lineItems[].unitPrice

Price per unit.

Optional Fields

clientReferenceInformation.partner.developerId

Set to your developer ID.

clientReferenceInformation.partner.solutionId

Set to your partner solution ID (PSID).

orderInformation.amountDetails.maxAmount

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

Description of the product or service.

orderInformation.lineItems[].productSku

Product SKU or identifier.

orderInformation.lineItems[].quantity

Number of units.

processingInformation.requestPhone

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

processingInformation.requestShipping

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

status

Include this field to activate or deactivate a payment link. Set to one of these values:

  • ACTIVE: The payment link is usable to complete a payment.
  • INACTIVE: The payment link is not usable to complete a payment.

Example

Production:

PATCH /ipl/v2/payment-links/{id}

Test:

PATCH /ipl/v2/payment-links/{id}
{    "processingInformation": {        "linkType": "DONATION"    },    "orderInformation": {        "amountDetails": {            "minAmount": "1",            "currency": "USD",            "totalAmount": "5"        },        "lineItems": [            {                "productName": "Fundraiser",                "unitPrice": "5"            }        ]    }}
{  "_links": {    "self": {      "href": "/ipl/v2/payment-links/78759658968978",      "method": "GET"    },    "update": {      "href": "/ipl/v2/payment-links/78759658968978",      "method": "PATCH"    }  },  "id": "78759658968978",  "submitTimeUtc": "2024-08-15T21:11:46.163224519Z",  "status": "ACTIVE",  "processingInformation": {    "linkType": "DONATION",    "requestPhone": false,    "requestShipping": false  },  "purchaseInformation": {    "purchaseNumber": "78759658968978",    "createdDate": "2024-08-15T21:08:24.593",    "paymentLink": "/ebc2/payByLink/pay/e1PxwGdhJWtz3MBXCE7DvuXoYlT7G0I2kyb3gRrQY6bLWbH5769guEPlUri2z7Kc"  },  "orderInformation": {    "amountDetails": {      "totalAmount": 5,      "currency": "USD"    },    "lineItems": [      {        "productName": "Fundraiser",        "unitPrice": 5,        "quantity": 1      }    ]  }}

You can deactivate a payment link to no longer allow your customers to use the link. To do this, include the status field in your update request and set it to INACTIVE. If you want to activate the payment link again, you can send your update request with the status field set to ACTIVE.

Production:

PATCH /ipl/v2/payment-links/{id}

Test:

PATCH /ipl/v2/payment-links/{id}
{  "status": "INACTIVE"}

Response

A successful response returns HTTP 200 with the updated payment link details. The response shape matches the create payment link response — see Create a Customer-Set Price Link for field descriptions.

Common error responses:

  • 400 — A required field is missing, a field value is invalid, or minAmount exceeds totalAmount.
  • 401 — Authentication failed. Verify your credentials.
  • 404 — No payment link found for the specified {id}.

Last published: September 29, 2026