Skip to main content
A payment link is a reusable checkout URL (https://tribridge.xyz/p/{slug}) that works without your customers needing an account — share it in an invoice, a DM, or a store button. Links are created and managed from your dashboard (Payment Links) — amount (fixed or customer-typed), chain/asset pinning, test vs live mode, and required payer fields are all chosen there. This API reference only covers the two public endpoints your site or app needs to open a link headlessly:

Get a payment link

Read a link’s public details — name, amount, pinned chain, required fields. No key.

Create a checkout from a link

Materialize a fresh checkout session for a payer and get its gateway URL. No key.

Headless flow

1

Fetch the link

GET /payment-links/public/{slug} — render the name, description, and amount on your page; show email/name inputs if require_email / require_name are set.
2

Materialize a checkout

POST /payment-links/public/{slug}/checkout — returns a new payment_id per call (plus checkout_url, a relative path: prepend your site origin, e.g. https://tribridge.xyz).
3

Send the payer to checkout

Navigate the payer to the full checkout_url. The payment is pinned to the link’s chain and asset — the payer can’t switch them (409 ASSET_LOCKED if they try).
4

Fulfill on webhook

Same as API payments: wait for the verified payment.completed event (see Webhooks).
Fixed vs custom amount: fixed links ignore the optional amount field on checkout. Custom-amount links (allow_custom_amount) require it — every call creates a brand-new pending payment, so call the checkout endpoint once per payer.