RevKeen Docs
Getting Started

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 name
  • description -- Detailed description
  • fulfillment_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

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 price
  • order_line_item -- From an order
  • subscription_item -- From a subscription
  • adjustment -- 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

On this page