Dibee Fleet Platform Handbook
On this page

Proforma invoice statuses

Reference

A proforma invoice moves from a draft the issuer is still editing, through the billed company's answer, to the point where the real VAT invoice is issued. This page lists each status, who can move a proforma out of it, what is recorded and who is told.

Overview#

The issuer of a proforma is a merchant or the platform; the billed party is a tenant, or a merchant for its own platform subscription. The accept and dispute steps below are for tenants. The issuer drafts and sends; the billed tenant accepts or disputes; the issuer finalizes an accepted proforma, which leads to the real VAT invoice. Every move is made with a button on the proforma's detail page, is recorded in the proforma's audit log, and is refused — never repeated — if the proforma is no longer in the status the move starts from. What a proforma is and who sees it are covered in Proforma invoices.

Statuses#

StatusMeaningVisible to the billed tenant?
DraftThe issuer is preparing it and can still edit itNo
SentSent to the tenant, waiting for an answerYes
AcceptedThe tenant agreed to itYes
DisputedThe tenant pushed back, with a reasonYes
FinalizedThe issuer has turned the accepted proforma into a VAT invoice requestYes
VoidA status the system can hold; no action sets itYes

Proformas the platform raises automatically for subscriptions are created already Sent; see Subscription pricing and billing cycles.

stateDiagram-v2
    state "Draft" as draft
    state "Sent" as sent
    state "Accepted" as accepted
    state "Disputed" as disputed
    state "Finalized" as finalized
    [*] --> draft: issuer creates
    [*] --> sent: subscription billing
    draft --> sent: issuer sends
    sent --> accepted: tenant accepts
    sent --> disputed: tenant disputes with a reason
    disputed --> draft: issuer reopens
    accepted --> finalized: issuer finalizes
Diagram source (Mermaid)

Transitions#

From → toButtonWhoWhat is recordedWho is notified
Draft → SentSend to tenantThe issuerSent atThe billed tenant's users who can accept proformas (Tenant Owner, Admin, Accountant)
Sent → AcceptedAccept (takes effect at once, no confirmation step)The billed tenantAccepted at, Accepted byNobody
Sent → DisputedDispute, then Submit dispute with a reasonThe billed tenantDispute reason (required, up to 500 characters; a blank reason is refused)The issuer's users who can issue proformas — the merchant's, or platform operators for a platform-issued proforma
Disputed → DraftReopenThe issuerThe proforma becomes editable again and the tenant no longer sees it until it is sent again; the dispute reason is shown only while it is Disputed, and Sent at is updated on the next sendNobody
Accepted → FinalizedFinalize invoiceThe issuerFinalized at, Finalized by, Issuance recordNobody

"The issuer" means users of the issuing merchant with the issue permission (Merchant Owner, Admin, Accountant), or a platform operator for a platform-issued proforma; "the billed tenant" means Tenant Owner, Admin or Accountant of that tenant. Supervisors can do none of these. Permissions are listed on Proforma invoices.

Rules#

  • Only an accepted proforma can be finalized. A disputed one must be reopened, corrected, sent and accepted first.
  • What finalize means depends on the issuer. For a merchant, the platform records that the merchant owes a VAT invoice; the merchant issues it on its own e-invoice system, and the obligation closes when that invoice reaches the platform and is matched. For the platform, finalize requests a VAT e-invoice that the platform issues itself; it is refused when the proforma total differs from its transaction amount, or when that transaction already has an e-invoice request — as every subscription billing proforma does, whose VAT invoice comes from subscription billing instead. See Finalize an accepted proforma invoice.
  • Accepted and Finalized are final. An accepted proforma can only move on to Finalized, and a finalized one cannot move at all; check a proforma before accepting it.
  • Statuses only change through these actions.
  • Repeated clicks are harmless. Refreshing the page after an action is refused and sends no second notification.
Updated 2026-10-31 · Applies to commit afa8d231 · Built 2026-11-02