Billing Products

Billing Products define the items or plans available for purchase by your customers. Products can be one-time purchases or recurring subscriptions with configurable billing intervals and credits.

The Billing Product Object

Attributes
idstring

Unique identifier for the product.

namestring

The display name of the product or billing plan.

descriptionstring

A brief description of the product or plan.

default_priceinteger

The default price of the product in cents (e.g., 5000 = $50.00).

purchase_typestring

The type of purchase. One of recurring or one_time.

shippableboolean

Indicates whether the product is a physical item that requires shipping.

recurringobject

Recurring billing configuration containing interval and interval_count.

activeboolean

Whether the product is currently active and available for purchase.

imagestring

URL of the product image.

urlstring

URL for the product.

metadatadictionary

A dictionary of key-value pairs for storing additional information about the product.

objectstring

The object type, always "product".

livemodeboolean

Indicates if this is in live mode (true) or sandbox/testing (false).

createdinteger

Unix timestamp when the product was created.

updatedinteger

Unix timestamp when the product was last updated.

Billing Product Object
{
  "id": "84818d2a-9ae1-4c35-a2fc-8592a82a4d36",
  "name": "Silver Billing Plan",
  "created": 1758886372,
  "updated": 1758886372,
  "livemode": false,
  "image": null,
  "metadata": {},
  "description": "Best plan for you!",
  "url": null,
  "shippable": false,
  "purchase_type": "recurring",
  "recurring": {
    "interval": "monthly",
    "interval_count": 1
  },
  "object": "product",
  "active": true,
  "default_price": 5000
}

Create a Product

Creates a new billing product or plan.

Parameters
nameREQUIREDstring

The display name of the product or billing plan.

default_priceREQUIREDinteger

The default price of the product in cents (e.g., 5000 = $50.00).

descriptionstring

A brief description of the product or plan.

purchase_typeREQUIREDstring

The type of purchase. Accepted values: recurring, one_time.

shippablestring

Indicates whether the product is a physical item that requires shipping. Accepted values: true, false.

recurring_intervalstring

The billing frequency for recurring products. Accepted values: monthly, yearly, weekly.

billing_creditsinteger

The number of billing credits included with this product.

billing_detailsobject

Additional billing configuration for the product.

billing_details.billing_typestring

The method used to collect payment. Accepted values: request_payment, charge_automatically.

billing_details.billing_creditsinteger

The number of billing credits allocated for the billing period.

billing_details.can_rolloverboolean

Whether unused credits can roll over to the next billing period.

metadatadictionary

A dictionary of key-value pairs for storing additional information about the product.

Returns

Returns the created product object if successful. Returns an error if the request is invalid.

POST/v1/products
curl -X POST "https://api.framepayments.com/v1/products" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer API_KEY" \
  -d '{
    "name": "Silver Billing Plan",
    "default_price": 5000,
    "description": "Best plan for you!",
    "purchase_type": "recurring",
    "shippable": "false",
    "recurring_interval": "monthly",
    "billing_credits": 200000,
    "billing_details": {
      "billing_type": "request_payment",
      "billing_credits": 200000,
      "can_rollover": true
    }
  }'
Response
{
  "id": "84818d2a-9ae1-4c35-a2fc-8592a82a4d36",
  "name": "Silver Billing Plan",
  "created": 1758886372,
  "updated": 1758886372,
  "livemode": false,
  "image": null,
  "metadata": {},
  "description": "Best plan for you!",
  "url": null,
  "shippable": false,
  "purchase_type": "recurring",
  "recurring": {
    "interval": "monthly",
    "interval_count": 1
  },
  "object": "product",
  "active": true,
  "default_price": 5000
}