Ponkan
Education

Getting Started with Checkout Links

Learn how to create shareable payment pages and start accepting payments in minutes using Ponkan's checkout links.

DM

Daniel Moreno

March 18, 2026

Getting Started with Checkout Links

If you've ever wanted to sell something online without building an entire storefront, checkout links are your answer. They're shareable, hosted payment pages that let you start accepting payments in minutes — no frontend code required on the customer side.

In this guide, we'll walk through everything you need to know to create and manage checkout links with the Ponkan API.

A checkout link is a unique URL that points to a hosted payment page. When a customer visits the link, they see your products, enter their payment details, and complete a purchase. An order is created automatically and you get paid.

Think of checkout links as your instant storefront. You can share them anywhere — email, social media, your website, a QR code on a business card — and customers can buy without needing an account.

Prerequisites

Before you begin, you'll need:

  1. A Ponkan account with at least one product created
  2. An API access token with write permissions (go to Settings > API in your dashboard)

Step 1: Create a product

If you don't have any products yet, create one first:

curl -X POST https://yourapp.com/api/v1/products \ -H "Authorization: Bearer YOUR_TOKEN" \ -d name="Classic T-Shirt" \ -d description="100% cotton premium tee" \ -d price_cents=2500

This creates a product priced at $25.00. All monetary values in Ponkan are represented in cents to avoid floating-point precision issues.

Now bundle your product into a checkout link:

curl -X POST https://yourapp.com/api/v1/checkout_links \ -H "Authorization: Bearer YOUR_TOKEN" \ -d label="T-Shirt Store" \ -d 'product_ids[]=PRODUCT_ID_HERE'

The response includes a slug field. Your checkout page is now live at:

That's it. Share the URL and start selling.

Step 3: Bundle multiple products

Checkout links can include multiple products. Customers see all of them on the payment page:

curl -X POST https://yourapp.com/api/v1/checkout_links \ -H "Authorization: Bearer YOUR_TOKEN" \ -d label="Summer Bundle" \ -d 'product_ids[]=TSHIRT_ID' \ -d 'product_ids[]=HOODIE_ID' \ -d 'product_ids[]=CAP_ID'

Advanced options

Custom slugs

By default, Ponkan generates a random 12-character slug. You can specify your own for cleaner URLs:

curl -X POST https://yourapp.com/api/v1/checkout_links \ -H "Authorization: Bearer YOUR_TOKEN" \ -d label="Summer Sale" \ -d slug="summer-2026" \ -d 'product_ids[]=PRODUCT_ID'

This gives you https://yourapp.com/checkout/summer-2026 — much nicer for marketing.

Expiration dates

Running a flash sale or limited-time offer? Set an expiration:

curl -X POST https://yourapp.com/api/v1/checkout_links \ -H "Authorization: Bearer YOUR_TOKEN" \ -d label="Flash Sale" \ -d expires_at="2026-06-30T23:59:59Z" \ -d 'product_ids[]=PRODUCT_ID'

After the expiration date, the checkout page will no longer accept purchases.

Pre-assigning customers

For personalized checkout experiences, you can pre-assign a customer. Their information will be pre-filled on the payment page:

curl -X POST https://yourapp.com/api/v1/checkout_links \ -H "Authorization: Bearer YOUR_TOKEN" \ -d label="Invoice for Jane" \ -d customer_id="CUSTOMER_UUID" \ -d 'product_ids[]=PRODUCT_ID'

Adding a description

Include HTML-formatted descriptions that appear on the checkout page:

curl -X POST https://yourapp.com/api/v1/checkout_links \ -H "Authorization: Bearer YOUR_TOKEN" \ -d label="Premium Package" \ -d 'description=<p>Includes lifetime updates and priority support.</p>' \ -d 'product_ids[]=PRODUCT_ID'

Don't want to delete a link permanently? Deactivate it instead:

curl -X PATCH https://yourapp.com/api/v1/checkout_links/LINK_ID \ -H "Authorization: Bearer YOUR_TOKEN" \ -d active=false

Reactivate it later by setting active=true.

Updating products

Replace the products on an existing checkout link:

curl -X PATCH https://yourapp.com/api/v1/checkout_links/LINK_ID \ -H "Authorization: Bearer YOUR_TOKEN" \ -d 'product_ids[]=NEW_PRODUCT_ID'

Permanently remove a checkout link and its URL:

curl -X DELETE https://yourapp.com/api/v1/checkout_links/LINK_ID \ -H "Authorization: Bearer YOUR_TOKEN"

Use cases

Checkout links are versatile. Here are some common ways to use them:

  • Product launches — Create a checkout link for your new product and share it across all your channels.
  • Social selling — Drop a link in your Instagram bio, Twitter, or email newsletter.
  • Embedded buy buttons — Use the checkout URL as the href on a "Buy Now" button on your website.
  • Limited-time offers — Set an expiration date for early-bird pricing or flash sales.
  • Client payments — Send a personalized checkout link to a specific customer.

Tracking orders

Once customers start purchasing through your checkout links, orders appear automatically in your dashboard. You can also fetch them via the API:

curl https://yourapp.com/api/v1/orders?sort=newest \ -H "Authorization: Bearer YOUR_TOKEN"

Each order includes the customer details, items purchased, payment status, and timestamps.

What's next

Checkout links are the fastest way to go from zero to accepting payments. For more complex scenarios — like building a full storefront with a shopping cart — check out our guide on building with the Ponkan API. If you need to bill clients on a recurring basis, take a look at automating your team invoicing.

Education