Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/own-pay/OwnPay-Documentation/llms.txt

Use this file to discover all available pages before exploring further.

Payment links are reusable checkout URLs that let you collect payments from customers without the overhead of creating a formal invoice. You can fix the price for a specific product (e.g. Hosting Setup Fee — 2,500 BDT) or leave the amount open for customer-defined inputs like donations or variable service fees. Once created, a payment link can be shared via email, SMS, social media, or any other channel. Every successful payment through the link is recorded as a transaction in your ledger — making payment links a lightweight but fully auditable collection tool.
  1. Log in to the OwnPay admin panel.
  2. In the left sidebar under the PAYMENTS section, click Payment Links.

Page Layout

The payment links module includes a Dashboard List showing all existing links and a Create Link Form for generating new ones. Each row in the list represents one payment link:
ColumnDescription
TitleThe customer-facing name of the product or service (e.g. Monthly Hosting Fee).
AmountThe locked price in the selected currency, or Custom if the customer sets their own amount.
UsesA running count of successful payments completed through this link.
StatusCurrent availability: active, inactive, or expired.
LinkThe relative public checkout path (e.g. /pay/hosting-setup-fee-32bb).
ActionsEdit the link settings, or Copy Link to copy the full public checkout URL to your clipboard.
Accessed by clicking + Create Link. The form has two sections: Link Details — Core configuration: Title, Description, Amount (fixed or blank for custom), and Currency. Settings — Advanced options: Max Uses limit, Expiry date/time, and the Require Shipping Address toggle for physical goods.
1

Click '+ Create Link'

Press the + Create Link button in the top-right corner of the Payment Links page.
2

Enter a descriptive title

Type a clear, customer-facing name in the Title field (e.g. Hosting Setup Fee or Conference Registration). This title appears on the customer’s checkout screen.
3

Add a description (optional)

Use the Description text area to provide additional context for the customer — such as what is included, delivery timelines, or terms. This is shown beneath the title on checkout.
4

Set the amount

  • Fixed price: Enter a numeric value in the Amount field (e.g. 2500). The checkout locks the price and the customer cannot modify it.
  • Custom amount: Leave the Amount field blank. The checkout will prompt the customer to enter their own payment amount. Ideal for donations or variable-fee services.
5

Select the currency

Choose the billing currency from the Currency dropdown (e.g. BDT). Ensure at least one active payment gateway supports this currency, or customers will see a payment method error on checkout.
6

Configure usage limits (optional)

  • Max Uses: Set a numeric limit (e.g. 1 for a single-use link, 100 for a batch). Set to 0 for unlimited uses.
  • Expires At: Pick a date and time after which the link automatically deactivates. Leave blank to keep the link open indefinitely.
7

Enable shipping address collection (optional)

Check Require Shipping Address if you are selling physical goods that need delivery. This adds mandatory address fields to the checkout form.
8

Click 'Create Link'

Press Create Link to save. The new link appears in the dashboard list with active status.
9

Copy and share the link

In the Actions column, click Copy Link to copy the full public checkout URL. Share it anywhere — email, SMS, social media, or embedded as a button on your website.
FieldRequiredDefaultDescription
TitleYesCustomer-facing product or service name. Visible on checkout.
DescriptionNoOptional explanatory note shown on the checkout screen.
AmountNoFixed checkout price. Leave blank to allow customer-defined amounts.
CurrencyYesBDTCurrency used to bill the customer.
Max UsesNo0 (unlimited)Maximum number of successful payments before the link auto-expires. 0 = unlimited.
Expires AtNoDate and time after which the link becomes inaccessible. Leave blank for no expiry.
Require Shipping AddressNoUncheckedForces the checkout to collect a physical delivery address from the customer.
Every successful payment via a payment link increments the use_count counter in the database. When use_count reaches max_uses, the link’s status automatically changes to expired. Any subsequent visitor to that URL will see a Link Expired error page. To reactivate, edit the link and increase the Max Uses value.
If an Expires At date and time is set, the link becomes inaccessible to customers once that moment passes — regardless of how many times it has been used. This is useful for limited-time offers or event registrations with a hard close date.
When a payment link has no fixed amount, the customer is presented with a numeric input field on the checkout screen to type their desired payment value. The minimum accepted value is enforced by the active gateway’s minimum transaction limits. All amounts are recorded in the link’s currency.
Monitor the performance of each payment link directly from the dashboard list:
  • Uses counter: Shows how many successful payments have been completed through each link. Compare this against your expected audience size to gauge conversion rate.
  • Status badge: An expired badge means the link has hit its usage cap or passed its expiry date.
  • Transactions page: All payments made through payment links are recorded as standard transactions. Navigate to Transactions and filter by the link’s associated gateway to inspect individual payment records.
For high-volume campaigns, set a generous Max Uses limit and rely on Expires At for time-based control instead. This avoids links unexpectedly expiring mid-campaign if your usage estimate was too conservative.

Best Practices

Single-Use Links for Specific Customers

Set Max Uses to 1 when generating a payment link intended for exactly one customer. This prevents the link from being reused or shared, giving you invoice-like exclusivity without the formal invoice structure.

Activate Gateways Before Sharing

Before distributing a link, confirm at least one active payment gateway supports the link’s currency. Customers who visit a link with no available payment methods will see an error and cannot complete checkout.

Never Change a Live Slug

Once a link has been shared with customers, do not edit the URL slug. Changing the slug breaks all previously shared URLs, resulting in 404 errors for customers who click older links.

Use Invoices for Itemized Billing

Payment links are ideal for simple, single-amount collections. If you need line items, due dates, formal invoice numbers, or specific customer assignment, use Invoices instead.
Ensure that your configured manual gateways or API gateways are active and healthy before sharing payment links. If all gateways for a given currency are inactive, customers landing on the checkout page will be unable to select a payment method and cannot complete payment.

Troubleshooting

SymptomLikely CauseFix
Customer sees a Link Expired pageThe link reached its Max Uses limit or the Expires At time has passed.Edit the link in the admin panel and increase Max Uses or remove/extend the expiry date.
Customer cannot select a payment methodNo active gateways are configured for the link’s currency.Navigate to Payment Gateways and activate at least one gateway (e.g. manual bKash/Nagad or a card processor) for the relevant currency.
Old shared links return a 404 errorThe URL slug was changed after the link was distributed.Edit the link and restore the original slug, or re-share the updated URL with all affected customers.
Uses counter not incrementingA gateway webhook failed to confirm the payment, leaving the transaction in pending status.Check Developer → Webhook Logs and resolve any failed callback events for the affected gateway.

Transactions

Inspect the individual payment records generated by each checkout through a payment link.

Invoices

Issue formal, multi-line invoices when structured billing with due dates and item detail is required.

Ledger

Review the double-entry ledger entries created when a payment link checkout is completed.

Dashboard

Monitor payment link revenue alongside all other financial activity on the platform.

Build docs developers (and LLMs) love