Understanding One Time Payments
A one time payment represents a single transaction between you and your customer. When a customer makes a one time payment, they are charged once for the full amount of the purchase.Key Concepts
Payment Status
A payment can be in different states throughout its lifecycle:- Pending: The payment has been initiated but not yet completed
- Paid: The payment has been successfully processed
- Refunded: The payment has been refunded to the customer
- Partially Refunded: The payment has been partially refunded to the customer
Creating a One Time Payment
To create a one time payment:- Create a one-time product in your Creem dashboard (set billing type to “one-time”)
- Generate a checkout session for the payment
- Direct your customer to the checkout URL
- Next.js
- TypeScript SDK
- Better Auth
- REST API
Handling Successful Payments
After a successful payment, users are redirected to yoursuccess_url with payment details as query parameters:
| Query parameter | Description |
|---|---|
checkout_id | The ID of the checkout session created for this payment. |
order_id | The ID of the order created after successful payment. |
customer_id | The customer ID, based on the email that executed the successful payment. |
product_id | The product ID that the payment is related to. |
request_id | Optional. The request/reference ID you provided when creating this checkout. |
signature | All previous parameters signed by Creem using your API-key, verifiable by you. |
Managing Payments
Creem provides several payment management features:- Refund payments: Process full or partial refunds directly through the Creem Dashboard
- Payment history: View detailed transaction history
- Payment metadata: Add custom data to payments for tracking
- Custom fields: Collect additional information during checkout