Core Concepts
Understand the key building blocks of RevKeen
RevKeen uses a relationship-based object model where entities connect to enable powerful billing workflows. Understanding these relationships is key to using the platform effectively.
Object Hierarchy
+------------------------------------------------------------------+
| MERCHANT |
| (Your Business Account) |
+------------+---------------------------------------------+-------+
| |
v v
+----------------------+ +----------------------+
| PRODUCTS | | CUSTOMERS |
| - Name, Description | | - Name, Email |
| - Fulfillment Type | | - Payment Methods |
| - Benefits | | - Addresses |
+----------+-----------+ +-----------+----------+
| |
v |
+----------------------+ |
| PRICES | |
| - One-time | |
| - Recurring | |
| - Pay-what-you-want | |
+----------+-----------+ |
| |
v |
+----------------------+ |
| CHECKOUT LINKS |<-------------------------------+
| - Public URL |
| - Customization |
| - Analytics |
+----------+-----------+
| |
v v
+------------------------------------------------------------------+
| CHECKOUT SESSION |
| (Customer completes payment) |
+----------+-------------------------------------------+-----------+
| |
v v
+----------------------+ +----------------------+
| SUBSCRIPTIONS | | INVOICES |
| (Recurring billing) | | - Invoice Line Items|
| - Subscription Items+--------------------> - Due date |
| - Trial period | | - Status lifecycle |
+----------------------+ +-----------+----------+
|
+----------------------+
|
v
+----------------------+
| ORDERS |
| (Fulfillment) |
| - Order Line Items |
| - Tracking |
+----------+-----------+
|
v
+----------------------+
| PAYMENTS |
| - Payment attempts |
| - Refunds |
| - Disputes |
+----------------------+Core Objects
Product
A product represents something you sell -- a physical item, digital download, or service. Products do not have prices directly; instead, you attach one or more Prices to a product.
Key Fields:
name-- Display namedescription-- Detailed descriptionfulfillment_type-- physical | digital | none (service)is_active-- Whether product is available for sale
Price
A price defines how much a product costs and how it is billed. A single product can have multiple prices (e.g., monthly and annual billing options).
Price Types:
- One-time -- Single payment (e.g., $99)
- Recurring -- Repeated billing (e.g., $29/month)
- Pay-what-you-want -- Customer chooses amount
Checkout Link (Payment Link)
A checkout link is a shareable URL that customers can use to purchase your products. When a customer completes checkout, it creates an Invoice. For recurring products, a Subscription is also created. When paid invoices contain products with fulfillment, an Order is created.
Customer
A customer represents someone who has purchased from you or who you will invoice. Customers can have multiple payment methods and addresses.
Invoice
An invoice is a request for payment. Invoices can be Manual (created by you for custom charges) or Automatic (generated by subscriptions).
Invoice Line Item Sources:
price-- From a product priceorder_line_item-- From an ordersubscription_item-- From a subscriptionadjustment-- Manual adjustment
Order
An order is a fulfillment container created when a paid invoice contains products that require delivery (physical or digital). Orders are created for both one-time and recurring products that have a fulfillment type.
Subscription
A subscription represents ongoing recurring billing. Subscriptions automatically generate invoices at each billing period.
Subscription Items allow multiple products in a single subscription, similar to Stripe's model.
Event
Events provide a complete audit trail of everything that happens in your account. Use events to track customer activity, payment history, and administrative actions.
Learn More
- Core Objects Reference -- Detailed documentation for each object type
- Quickstart -- Create your first product and checkout link