Products
Manage your product catalog for use in invoices and receipts.
Products represent the goods and services you sell. Create products once and reference them in invoices and receipts for consistent pricing and tax handling.
The Product Object
The product object contains all information about a sellable item, including pricing, tax classification, and custom metadata.
{
"id": "prod_abc123",
"name": "Software License - Annual",
"sku": "SW-LIC-ANNUAL",
"description": "Annual software license subscription",
"unit_price": 299.00,
"currency": "USD",
"tax_code": "STD",
"category": "software",
"active": true,
"metadata": {
"license_type": "annual",
"seats": 5
},
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
Tax Codes
Each product must have a tax code that determines how VAT is calculated. Available tax codes:
| Code | Rate | Description |
|---|---|---|
| STD | 15% | Standard rate VAT for most goods and services |
| ZER | 0% | Zero-rated items (exports, basic food items) |
| EXM | N/A | Exempt items (financial services, medical) |
Create a Product
Create a new product in your catalog. Products can be used as line items in invoices and receipts.
/v1/productsCreates a new product in your catalog.
Request Body
namestring required The product name displayed on invoices and receipts.
Example: Software License - Annual
skustringStock keeping unit for inventory tracking.
Example: SW-LIC-ANNUAL
descriptionstringDetailed product description.
unit_pricenumber required Default unit price for the product.
Example: 299.00
currencystring default: USDThree-letter ISO currency code.
tax_codestring required Tax classification: STD, ZER, or EXM.
Example: STD
categorystringProduct category for organization.
metadataobjectCustom key-value pairs for additional data.
Example Request
{
"name": "Software License - Annual",
"sku": "SW-LIC-ANNUAL",
"description": "Annual software license subscription",
"unit_price": 299.00,
"currency": "USD",
"tax_code": "STD",
"category": "software",
"metadata": {
"license_type": "annual",
"seats": 5
}
}
Response
{
"id": "prod_abc123",
"name": "Software License - Annual",
"sku": "SW-LIC-ANNUAL",
"description": "Annual software license subscription",
"unit_price": 299.00,
"currency": "USD",
"tax_code": "STD",
"category": "software",
"active": true,
"metadata": {
"license_type": "annual",
"seats": 5
},
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
List Products
Retrieve a paginated list of products from your catalog.
/v1/productsReturns a paginated list of products.
Query Parameters
activebooleanFilter by active status.
categorystringFilter by product category.
searchstringSearch by name or SKU.
Response
{
"data": [
{
"id": "prod_abc123",
"name": "Software License - Annual",
"sku": "SW-LIC-ANNUAL",
"unit_price": 299.00,
"active": true
},
{
"id": "prod_def456",
"name": "Support Package",
"sku": "SUP-PKG-PREM",
"unit_price": 99.00,
"active": true
}
],
"meta": {
"current_page": 1,
"per_page": 20,
"total": 45
}
}
Update a Product
Update an existing product. Only the fields you include will be updated.
/v1/products/{product_id}Updates the specified product.
Path Parameters
product_idstring required The unique identifier of the product.
Example Request
{
"unit_price": 349.00,
"description": "Annual software license subscription - Premium"
}
Response
{
"id": "prod_abc123",
"name": "Software License - Annual",
"sku": "SW-LIC-ANNUAL",
"description": "Annual software license subscription",
"unit_price": 299.00,
"currency": "USD",
"tax_code": "STD",
"category": "software",
"active": true,
"metadata": {
"license_type": "annual",
"seats": 5
},
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}