---
title: "Create an add-on"
method: POST
path: "/api/add-ons"
tags: ["Add-Ons"]
---

# Create an add-on

`POST /api/add-ons`

Create a one-time charge add-on with multi-currency pricing.

## Request body

- CreateAddOnDto
  - `name` string, required — Display name
  - `code` string, required — Unique code for the add-on
  - `description` string
  - `invoiceDisplayName` string — Custom name shown on invoices
  - `prices` AddOnPriceDto[], required — Prices in different currencies
    - `currency` string, required — ISO 4217 currency code
    - `amount` number, required — Price amount
  - `createdAt` string — Backdate createdAt (ISO 8601). For data imports.

## Response `201`

Add-on created

- AddOnResponse
  - `id` string, required
  - `name` string, required
  - `code` string, required
  - `description` string
  - `invoiceDisplayName` string
  - `prices` AddOnPriceResponse[], required
    - `id` string, required
    - `addOnId` string, required
    - `currency` string, required
    - `amount` string, required — Decimal amount as string
  - `createdAt` string, required
  - `updatedAt` string, required

## Other responses

- `400` — Invalid data or duplicate code

---

[API](https://skmtc.net/novabilling/apis/novabilling-api.md) · [All operations](https://skmtc.net/novabilling/apis/novabilling-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/novabilling/novabilling-api/revisions/0e449a4e0dc8/schema)
