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
idstringoptional

Unique identifier for the product.

namestringoptional

The display name of the product or billing plan.

descriptionstringoptional

A brief description of the product or plan.

default_priceintegeroptional

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

purchase_typestringoptional

The type of purchase. One of recurring or one_time.

shippablebooleanoptional

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

recurringobjectoptional

Recurring billing configuration containing interval and interval_count.

activebooleanoptional

Whether the product is currently active and available for purchase.

imagestringoptional

URL of the product image.

urlstringoptional

URL for the product.

metadatadictionaryoptional

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

objectstringoptional

The object type, always "product".

livemodebooleanoptional

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

createdintegeroptional

Unix timestamp when the product was created.

updatedintegeroptional

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
namestring

The display name of the product or billing plan.

default_priceinteger

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

descriptionstringoptional

A brief description of the product or plan.

purchase_typestring

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

shippablestringoptional

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

recurring_intervalstringoptional

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

billing_creditsintegeroptional

The number of billing credits included with this product.

billing_detailsobjectoptional

Additional billing configuration for the product.

billing_details.billing_typestringoptional

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

billing_details.billing_creditsintegeroptional

The number of billing credits allocated for the billing period.

billing_details.can_rolloverbooleanoptional

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

metadatadictionaryoptional

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
}