> ## Documentation Index
> Fetch the complete documentation index at: https://storekit.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Payment Links Reference

> Reference for storekit payment links: link types, pricing modes, link and transaction statuses, creation fields, customer field modes, MCP tools and webhooks.

Quick lookup for the terms used across the payment links guides. For how-to detail follow the links in each section.

## Link Types

| Dashboard label | Behaviour                                                           | API value  |
| --------------- | ------------------------------------------------------------------- | ---------- |
| **One-off**     | Closes after one successful payment                                 | `one_off`  |
| **Reusable**    | Stays open until deactivated, expired or the payment cap is reached | `reusable` |

Fixed at creation.

## Pricing Modes

| Dashboard label      | Behaviour                                                                | API value  |
| -------------------- | ------------------------------------------------------------------------ | ---------- |
| **Set price**        | Customer pays the **Price** you enter                                    | `fixed`    |
| **Customer chooses** | Customer enters an amount, optionally within **Minimum** and **Maximum** | `variable` |

Fixed at creation. **Minimum** and **Maximum** can be edited afterwards.

## Link Statuses

| Status        | How a link gets here                                                       | Can it be changed?     |
| ------------- | -------------------------------------------------------------------------- | ---------------------- |
| **Active**    | Created, or reactivated with **Activate**                                  | **Deactivate**         |
| **Inactive**  | **Deactivate**                                                             | **Activate**           |
| **Expired**   | **Link expiry date** passed                                                | No — create a new link |
| **Completed** | One-off link paid, or reusable link reached **Maximum number of payments** | No — create a new link |

Details in [Managing Payment Links](/docs/payment-links/managing-payment-links#statuses).

## Transaction Statuses

| Status             | Meaning                            | Refundable?                   |
| ------------------ | ---------------------------------- | ----------------------------- |
| **Pending**        | Payment started, not yet confirmed | No                            |
| **Paid**           | Payment succeeded                  | Yes                           |
| **Partial Refund** | Part of the payment refunded       | Yes, up to **Max refundable** |
| **Refunded**       | Fully refunded                     | No                            |

Details in [Refunds and Transactions](/docs/payment-links/refunds-and-transactions).

## Creation Fields

Labels as shown on the **New Payment Link** page. The detail page uses shorter labels for the same fields, given in brackets where they differ.

| Field                                                                   | Required                            | Editable later |
| ----------------------------------------------------------------------- | ----------------------------------- | -------------- |
| **Store**                                                               | Yes                                 | No             |
| **Title**                                                               | Yes                                 | Yes            |
| **Description shown to the customer** (**Description**)                 | No                                  | Yes            |
| **Link type** (**Link Type**)                                           | Yes                                 | No             |
| **Pricing** (**Amount Type**)                                           | Yes                                 | No             |
| **Price**                                                               | With **Set price**                  | No             |
| **Minimum** / **Maximum** (**Min Amount** / **Max Amount**)             | No                                  | Yes            |
| **Image**                                                               | No                                  | Yes            |
| **Customer fields** — **Name**, **Email**, **Phone**, **Business name** | No                                  | Yes            |
| **Reference**                                                           | No                                  | Yes            |
| **Link expiry date** (**Expiry Date**)                                  | No                                  | Yes            |
| **Maximum number of payments** (**Max Payments**)                       | No, reusable only                   | Yes            |
| **After successful payment** (**After Payment**)                        | Yes, defaults to **Show thank you** | Yes            |
| **Custom thank you message** (**Success Message**)                      | No                                  | Yes            |
| **Redirect URL after payment** (**Redirect URL**)                       | With **Redirect to URL**            | Yes            |

### Customer Field Modes

| Dashboard label | Behaviour on the checkout page | API value  |
| --------------- | ------------------------------ | ---------- |
| **Off**         | Field not shown                | `disabled` |
| **Optional**    | Shown, marked *optional*       | `optional` |
| **Required**    | Shown, must be filled to pay   | `required` |

The four fields map to `collectCustomerName`, `collectEmail`, `collectPhone` and `collectBusinessName`.

## Where Links Come From

The detail page shows **Created via** for each link:

| Value       | Created by                                                                                                                          |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `dashboard` | **Payment Links** → **Create Payment Link**                                                                                         |
| `order`     | The **Send Payment Link** prompt on an order — see [Collecting Payment for an Unpaid Order](/docs/payment-links/collecting-for-an-order) |
| `mcp`       | An AI assistant connected through storekit MCP                                                                                      |
| `api`       | Direct API integration                                                                                                              |

## Payment Link IDs

Every payment link has an ID prefixed `plink_`, for example `plink_019dbc4d828174419d9ff9fae24aea7b`. It appears in the dashboard URL when the link is open, in MCP tool responses and in webhook payloads, and it is the last part of the customer-facing URL: `https://<your ordering domain>/pay/plink_…`.

## Developers

### MCP Tools

Connected AI assistants use these tools; see [MCP tools](/docs/developers/mcp/tools) for parameters.

| Tool                  | Type                                                                    |
| --------------------- | ----------------------------------------------------------------------- |
| `list-payment-links`  | Read                                                                    |
| `get-payment-link`    | Read                                                                    |
| `create-payment-link` | Write — the assistant asks for approval unless you have auto-allowed it |
| `get-payment-link-qr` | Read — returns a PNG                                                    |

### Webhook Events

| Event                           | Fired when                              |
| ------------------------------- | --------------------------------------- |
| `payment_link.created`          | A payment link is created               |
| `payment_link.paid`             | A payment is collected through a link   |
| `payment_link.refund.created`   | A refund is requested                   |
| `payment_link.refund.succeeded` | The payment gateway confirms the refund |
| `payment_link.refund.failed`    | The payment gateway rejects the refund  |

Payloads are documented in [Webhook events](/docs/developers/webhooks/webhook-events#payments-events).


## Related topics

- [Managing Payment Links](/docs/payment-links/managing-payment-links.md)
- [Payment Link Refunds and Transactions](/docs/payment-links/refunds-and-transactions.md)
- [Webhook Events](/docs/developers/webhooks/webhook-events.md)
- [Sharing a Payment Link](/docs/payment-links/sharing-a-payment-link.md)
- [Payment Links Overview](/docs/payment-links/overview.md)
