---
title: "Create a fiscal invoice"
method: POST
path: "/api/fiscal/invoices"
tags: ["Invoices"]
---

# Create a fiscal invoice

`POST /api/fiscal/invoices`

Submit an invoice for fiscal processing. The system assigns a monotonic
fiscal number, computes taxes, signs the invoice via Cloud Signing Service,
and appends it to the hash-chained Fiscal Ledger.

## Headers

- `x-tenant-id` string, required

## Request body

- CreateInvoiceRequest
  - `jurisdiction` string, required — ISO 3166-1 alpha-2 country code
  - `merchantTin` string, required
  - `outletId` string, required
  - `posTerminalId` string, required
  - `cashierId` string, required
  - `client` InvoiceClient, required
    - `name` string, required
    - `tin` string, nullable
    - `classification` 'ASSUJETTI' | 'NON_ASSUJETTI' | 'EXPORTE' | 'DIPLOMATIQUE' | 'ETAT_PROJETS', required
  - `invoiceType` 'STANDARD' | 'PROFORMA' | 'CREDIT_NOTE' | 'DEBIT_NOTE' | 'COPY', required
  - `currency` string, required
  - `taxGroups` TaxGroup[], required
    - `taxGroupCode` string, required — Tax group code (e.g., TG01–TG14 for DRC)
    - `taxGroupLabel` string, required
    - `baseAmtMinor` integer, required — Base amount in minor units
    - `taxAmtMinor` integer, required
    - `totalAmtMinor` integer, required
    - `currency` string, required
  - `totals` InvoiceTotals, required
    - `subtotalMinor` integer, required
    - `taxMinor` integer, required
    - `totalMinor` integer, required
    - `currency` string, required
  - `payments` InvoicePayment[], required
    - `method` 'CASH' | 'CARD' | 'MOBILE_MONEY' | 'BANK_TRANSFER', required
    - `amountMinor` integer, required
    - `currency` string, required

## Response `201`

Invoice created

- CreateInvoiceResponse
  - `invoiceId` string, uuid
  - `fiscalNumber` string — Monotonic fiscal number as string
  - `authCode` string — 8-character authorization code
  - `qrPayload` string — Full QR verification URL
  - `signature` string — Cloud signing signature

## Other responses

- `400` — Validation error
- `401` — Missing or invalid authentication
- `422` — Invoice validation error
- `500` — Internal server error

---

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