ComOps

Home

Documents that know what they came from

In ComOps a document is rarely typed from scratch. A quotation becomes a sales order, an order becomes a shipment and an invoice, and an invoice that turned out wrong becomes a credit or debit note pointing back at it. Every hop carries the lines and the amounts forward, and every hop leaves the link behind it.

One chain, no re-typing

Accepting a quotation creates the sales order and marks the quotation converted, with the two joined. Converting the sales order copies its lines into the invoice, and the due date comes from the payment terms agreed with that customer rather than from a date somebody picks. A shipment can raise the invoice for what actually went out. A proforma becomes the real invoice once it has been issued, and that conversion refuses to run twice on the same proforma or at all on one that was never issued. Each hop is a conversion the system performs under its own guard, so nothing is copied across by hand.

Corrections are documents, not deletions

ComOps issues invoices, proformas, credit notes and debit notes, and an issued invoice is never deleted. It is annulled or corrected, and either way a document remains. Annulment asks a series of questions before it does anything: a reason must be given, the period must not be locked, the invoice must exist and must not already be annulled, it must be in a status that can be annulled, no live credit or debit note may still reference it, and where payments have already been allocated to it the annulment does not orphan them, it forces a reissue onto a fresh draft. Notes carry a reference back to the invoice they correct and the invoice screen looks the other way, so the lineage reads in both directions.

Numbering that holds under concurrency

Each document type has its own numbering series, resolved when the document is issued. The next number is taken under a lock on the sequence row itself, so two people issuing at the same moment take two different numbers instead of the same one twice. Series are administrable: you can inspect one, change it or create another, and the number a document was given stays with that document. Numbers stay sequential and gap-free under concurrent use because of that lock.

A closed month stays closed

The lock on a closed period is checked before issuing an invoice, before converting a proforma or a sales order, before an invoice generated from a recurring contract, before issuing a credit note, and before recording a customer or supplier payment. Any of those attempted into a closed month stops with an error that names the month, so a correction belonging in the current period cannot quietly land in one that has already been reported.

Totals you cannot type

The net, the VAT and the gross on a document header are never entered by hand. They are written from the line calculation, all three together from one result, every time tax is applied. A draft can recalculate its VAT from the products at any point, so a rate change reaches an open draft in one action. What is outstanding on an invoice reconciles with what has been allocated against it, and a check the software runs asserts exactly that. See how the rate itself is decided on the VAT engine page.

Issued on a schedule, visible to the customer

A recurring contract issues its invoices as they fall due, through the same code path as the button a person presses, so a scheduled invoice meets the same guards as one somebody issues by hand. The PDF is rendered inside ComOps from the same document. Your customer can sign in to a portal and see their own orders and invoices and download that same PDF without anyone emailing it again. The same document also produces the standards-compliant e-invoice described on the e-invoicing page.

Questions we get asked

Can I delete an invoice?

No. An issued invoice is annulled with a stated reason, or corrected by a credit or debit note. Either way the original document, the correction and the link between them all stay.

Two people issue an invoice in the same second. Do they get the same number?

No. The number is taken under a lock on the sequence row, so the second issue waits for the first and takes the next number.

Want to see a correction traced back to the invoice it came from?

Request access

Served by SERVBG.COM | Сервирано от СЕРВБГ ООД