Payment Links
Create shareable payment links for quick, no-code payment collection.
Payment Links
Payment Links let you accept stablecoin payments without writing any code. Create a link in the dashboard, share it with your customers, and PayzCore handles the rest.
How It Works
1. Create a payment link in the dashboard (title, amount, token)
2. Share the URL: pay.payzcore.com/l/your-slug
3. Customer opens the link, fills in their info, clicks "Continue to Payment"
4. PayzCore creates a payment, customer selects network and pays
5. You receive a webhook notification when payment completesEach payment link is tied to a project. The project's wallet, webhook URL, and settings apply to all payments created through the link.
Creating a Payment Link
- Go to Payment Links in the dashboard sidebar
- Click Create Link
- Fill in the details:
| Field | Required | Description |
|---|---|---|
| Project | Yes | Which project receives the payments |
| Title | Yes | Displayed to the buyer (e.g., "Premium Plan", "Donation") |
| Slug | Yes | URL path — pay.payzcore.com/l/{slug}. Auto-generated from title, editable. Lowercase letters, numbers, and hyphens only. |
| Amount Type | Yes | Fixed (you set the price) or Open (buyer enters the amount) |
| Amount | If fixed | Payment amount in USD (min $0.10) |
| Token | Yes | USDT or USDC |
| Description | No | Additional context shown to the buyer |
| Buyer Fields | Yes | Configure which fields the buyer sees (see below) |
Buyer Information Fields
You can control what information to collect from the buyer:
| Field | Options | Default |
|---|---|---|
| Required / Optional / Hidden | Required | |
| Name | Required / Optional / Hidden | Optional |
| Note | Required / Optional / Hidden | Optional |
Buyer information is stored in the payment's metadata field and included in webhook payloads:
{
"metadata": {
"_buyer_email": "[email protected]",
"_buyer_name": "John Doe",
"_buyer_note": "Order #1234",
"_payment_link_id": "uuid",
"_payment_link_slug": "premium-plan"
}
}Buyer fields use the
_prefix to avoid collisions with your own metadata keys.
The Buyer Experience
When a customer opens your payment link:
- They see your store name, logo, and verified badge (if your project is verified)
- They fill in the required fields (email, name, note — based on your configuration)
- For open amount links, they enter how much they want to pay
- They click Continue to Payment
- They're redirected to the standard PayzCore payment page where they select a network and send the payment
Unverified Merchant Warning
If your project is not verified by an admin, buyers will see an "Unverified Merchant" warning badge. This helps protect buyers from potential scams. Contact support to get your project verified.
Managing Payment Links
Dashboard
The Payment Links page shows all your links with:
- Title, slug, and status (active/inactive)
- Amount type and token
- Payment count and total amount received
- Creation date
Click any link to view its detail page with full stats and a list of all payments created through it.
Actions
| Action | Description |
|---|---|
| Copy URL | Copy the payment link URL to clipboard |
| Toggle Active | Enable or disable the link. Disabled links show "Payment Link Unavailable" to visitors. |
| Delete | Permanently remove the link. Existing payments are not affected. |
Editing
Payment link settings (title, amount, fields) are set at creation and cannot be changed afterward. To modify settings, create a new link and deactivate the old one.
Webhooks
Payments created through payment links trigger the same webhook events as API-created payments:
payment.completed— Full payment receivedpayment.overpaid— More than expectedpayment.expired— Payment window expiredpayment.partial— Partial payment
The webhook payload includes metadata with the buyer information and _payment_link_slug to identify which link originated the payment.
Rate Limits
Payment link pages are public (no authentication required). To prevent abuse:
- 10 payment creations per minute per IP address
- 100 payment creations per hour per payment link slug
These limits are separate from your API rate limits.
Store Branding
Payment link pages display your project's branding. Configure these in Project Settings:
| Setting | Where it appears |
|---|---|
| Store Name | Header of the payment page |
| Store Logo | Next to the store name |
| Brand Color | Accent color on the payment page |
| Support Email | Shown when the link is inactive ("Contact the merchant") |
Example Use Cases
- Digital products — Sell ebooks, courses, or software with a fixed-price link
- Donations — Accept open-amount contributions
- Invoicing — Send a payment link instead of bank details
- One-time services — Freelance work, consulting sessions
- Subscriptions — Create a link for each billing period (manual renewal)
Limits
You can create a limited number of payment links based on your plan. The limit counts across all projects you own.
| Plan | Payment Links |
|---|---|
| Free | 3 |
| Pro | 25 |
Payments created through links count toward your daily webhook and API call quotas as usual. Account administrators can set custom payment link limits for individual users.
If you need more payment links, upgrade to Pro or contact your administrator for a custom override.
See Also
- Getting Started - Account setup and first payment
- Webhooks Guide - Webhook events and signature verification
- Address Modes - How addresses are assigned to payments
Address Modes
Choose between 4 address modes: per_payment and per_user (HD wallet with xPub), or dedicated and pool (static addresses). Each mode fits different payment flows.
Webhooks
PayzCore webhook events (payment.completed, expired, partial, overpaid), HMAC-SHA256 signature verification, retry logic with exponential backoff, and integration examples.