API reference
Payment links
A payment link is a reusable URL, https://. Each visit that starts paying creates one order and one checkout session. amount_type: "fixed" uses the link's amount or prices; amount_type: "open" lets the payer type an amount between min_amount and max_amount (donations, tips, "pay what you owe").
The payment_link object
JSON
{
"id": "plink_gg6as78pk82ndt25m36vjeey",
"object": "payment_link",
"livemode": true,
"created": "2026-09-10T10:05:00.000Z",
"updated": "2026-09-10T10:05:00.000Z",
"active": true,
"name": "Ethiopia Yirgacheffe, 1 kg",
"url": "https://pay.orrerie.com/l/plink_gg6as78pk82ndt25m36vjeey",
"amount_type": "fixed",
"amount": "21.99",
"currency": "USD",
"min_amount": null,
"max_amount": null,
"line_items": [
{
"price": "price_mbk5s5r45kwheaq89dbmk2gz",
"quantity": 1,
"adjustable_quantity": {
"enabled": true,
"minimum": 1,
"maximum": 10
}
}
],
"collect": {
"email": "required",
"name": "optional",
"shipping_address": "hidden"
},
"success_url": "https://acme.example/thanks",
"allow_publishable_key": true,
"order_expiry_seconds": 3600,
"max_uses": null,
"uses": 17,
"paid_uses": 14,
"expires_at": null,
"metadata": {}
}| Field | Meaning |
|---|---|
amount_type | One of fixed, open. |
Every field
Fields of the payment_link object
| Field | Type | Meaning |
|---|---|---|
id | string | Unique identifier: the object prefix, an underscore, 24 lower-case Crockford base32 characters. |
object | string | The type of this object. |
livemode | boolean | true for live mode (real money); false for test mode (simulated payments). |
created | string (date-time) | When the object was created. RFC 3339, UTC, milliseconds. |
updated | string (date-time) | When the object last changed. |
active | boolean | false once the link is switched off: its page takes no new payments. |
name | string | The link's name, as payers see it. |
url | string | The link's page on the payer site. |
amount_type | string | One of fixed, open. |
amount | string or null | The fixed amount of a link priced by amount; null for a link priced by its line items or an open amount. |
currency | string | The currency the link is priced in. |
min_amount | string or null | The least a payer may type on an open link; null for the platform's minimum. |
max_amount | string or null | The most a payer may type on an open link; null for the tier's limit. |
line_items | array of objects | What the link sells, when it is priced from prices. |
line_items[]. | string | The price_ id sold. |
line_items[]. | integer | How many, unless the payer may choose. |
line_items[]. | object | Whether the payer may choose the quantity, and between which bounds. |
collect | object | Which details the link's page asks the payer for. |
collect. | string | required, optional or hidden. |
collect. | string | required, optional or hidden. |
collect. | string | required, optional or hidden. |
success_url | string or null | Where the payer is sent after paying; null for the payer site's own page. |
allow_publishable_key | boolean | true when a publishable key may start checkouts from the link. |
order_expiry_seconds | integer | How long each order the link makes stays payable, in seconds. |
max_uses | integer or null | How many paid orders the link takes before it switches off; null for no limit. |
uses | integer | How many orders the link has made. |
paid_uses | integer | How many of them were paid. |
expires_at | string or null | When the link switches itself off; null for never. |
metadata | object | Up to 50 keys of your own data. Key up to 40 characters, value a string up to 500 characters. Never used by Orrerie; never put secrets or personal data here. |
Endpoints
- GETList payment links/v1/payment_links
- POSTCreate a payment link/v1/payment_links
- GETRetrieve a payment link/v1/payment_links/{id}
- PATCHUpdate a payment link/v1/payment_links/{id}
Events
Webhook events whose data.object is an object of this page.