---
id: UJ-023
title: Create, approve, issue, send, and receipt an invoice
actors: [billing staff, approver]
surface: app.zync.is/invoices
goal: Produce a valid invoice, obtain required approval, deliver it, and issue the related statutory receipt when payment arrives.
trigger: User creates a draft from customer/items/time/expense or runs a generation flow.
preconditions:
  - Customer exists; invoice numbering/VAT/payment settings configured; required adapter/approval policy available.
success_state: Invoice has a valid lifecycle state, delivery history, tax document/artifact, and optional receipt/payment links.
source_specs:
  - docs/specs/2026-05-30-invoices-core.md
  - docs/specs/2026-05-30-invoices-adapters.md
  - docs/specs/2026-05-31-invoice-draft-library.md
  - docs/specs/2026-06-01-invoice-approval-workflow.md
  - docs/specs/2026-05-31-invoice-pdf-customization.md
  - docs/specs/2026-05-31-invoice-email-history.md
  - docs/specs/2026-06-01-invoice-receipt-document.md
  - docs/specs/2026-05-31-contract-to-invoice.md
  - docs/specs/2026-05-31-proposal-to-invoice-direct.md
  - docs/specs/2026-05-31-invoice-adapter-setup-ui.md
  - docs/specs/2026-05-31-invoice-credit-notes.md
  - docs/specs/2026-05-31-invoice-settings-page.md
  - docs/specs/2026-05-31-product-service-library.md
---

## Happy path

1. Billing user starts an invoice from a customer, products/services, approved time, expenses, contract, or template → Zync creates a draft with calculated lines/tax.
2. User edits and validates customer, currency, dates, terms, discounts, VAT, and line sources → server validation confirms totals and tenant numbering rules.
3. If configured, invoice enters approval; approver approves or rejects with a reason.
4. User issues the approved invoice → Zync assigns immutable invoice identity, tax state, PDF/HTML artifact, and audit event.
5. User sends by configured email/portal/payment link → delivery history records send outcome; customer sees only eligible portal state.
6. Payment flow records successful payment → staff issues a receipt document when required; receipt is linked to invoice/payment and available for authorized download.

## Alternate and failure paths

- Validation/approval rejection → invoice remains draft/rejected and cannot be issued.
- Adapter unavailable, send failure, duplicate request, or numbering conflict → preserve idempotency and show retry/recovery state.
- Invoice is canceled/voided → follow statutory reversal rules; never edit an issued document in place.

## Permissions and boundaries

- Draft editing, approval, issuance, and receipt issuance may belong to different permissions.
- Customer portal never sees drafts/canceled invoices by default.

## Source specs

- `docs/specs/2026-05-30-invoices-core.md`
- `docs/specs/2026-05-30-invoices-adapters.md`
- `docs/specs/2026-05-31-invoice-draft-library.md`
- `docs/specs/2026-06-01-invoice-approval-workflow.md`
- `docs/specs/2026-05-31-invoice-pdf-customization.md`
- `docs/specs/2026-05-31-invoice-email-history.md`
- `docs/specs/2026-06-01-invoice-receipt-document.md`
- `docs/specs/2026-05-31-contract-to-invoice.md`
- `docs/specs/2026-05-31-proposal-to-invoice-direct.md`
- `docs/specs/2026-05-31-invoice-adapter-setup-ui.md`
- `docs/specs/2026-05-31-invoice-credit-notes.md`
- `docs/specs/2026-05-31-invoice-settings-page.md`
- `docs/specs/2026-05-31-product-service-library.md`
