Skip to content
Next drop: Friday, October 9

Report · REP-011 · v1.0

Antares · Profitability by customer, product or line

Which customers, products or lines make money after serving them, which ones destroy it, and the 3 price, mix or cost-to-serve decisions that move the most.

PremiumGlobal standardStandard 2026.10Controls 6/6MonthlyXLSXDOCXPPTX
Meridian Coffee Co. (Demo) · Profitability by customer, product or line · October 2026REP-011 · p. 1/1
FICTITIOUS DATA · USD thousands · RS2026.10Repporti checks 6/6 · REP-011 v1.0
FICTITIOUS DATA · Meridian Coffee Co. (Demo)Checks 6/6
REP-011 · Profitability by customer, product or line · October 2026 · illustrative example with fictitious data
  • Word (.docx), 6 A4 pages, ready to export to PDF
  • Excel (.xlsx) with Sales, Cost_to_serve, Allocation, Profitability, Pareto, Bridge, Control and Charts sheets, with live formulas
  • Optional PowerPoint (.pptx) with 1 to 3 slides

Turns the period's sales by customer and product into a 6-page report: gross profit, cost to serve (freight, commissions, promotions), contribution and contribution margin by customer, line and channel, the 80/20 Pareto, the tail that destroys contribution, and 3 decisions with their calculated impact, owner and date.

Before calculating, your AI reconciles sales and each cost-to-serve item with the trial balance and closes the bridge from contribution to operating profit; if something does not tie out, it stops and asks. Fixed costs are not allocated to customers, because that allocation is arbitrary and hides the decisions.

It never recommends «dropping» a customer and never invents causes: the options are price, minimum order, service charge, channel change or renegotiation, each with its figure. The Repporti kit checks that every figure in the Word file exists in the calculation before it prints the seal. Terms and format come from the Repporti Standard for your country, framework and language.

What it includes

6 sections, in this order

  1. 01In 30 seconds: how many items make 80% of contribution, how much the tail destroys and the decision being asked for
  2. 02Profitability map by the main dimension: revenue, gross profit, cost to serve and contribution
  3. 0380/20 Pareto with the cumulative curve
  4. 04Tail and low margin, each item with its measurable cause or «[to be confirmed]»
  5. 05Contribution margin by line and channel
  6. 06Decisions with impact, owner and date; appendix with the allocation method, the bridge to operating profit, controls and glossary

Controls 6/6

What it checks before writing a single figure

  • C1Complete sales: no repeated rows, codes present, numeric revenue and cost; negative revenue only with the credit note explained.

  • C2Reconciled to the trial balance: total net revenue and cost of sales match the period's trial balance (N/A without a trial balance).

  • C3Reconciled cost to serve: each item adds up to its account balance and no customer with cost to serve is missing from sales.

  • C4Gross margins between 0% and 90% or explained, and the bridge on the Control sheet: total contribution − unallocated fixed costs = operating profit per the trial balance.

  • C5Figures table valid for the kit: numeric values, no repeated lines, valid units, costs with a single sign and gross profit = revenue − cost of sales (cuadre.py validar).

  • C6Traceable figures: every figure in the Word file (and the PowerPoint) exists in calculo.json with the same rounding (cuadre.py verificar).

If the script ran

Repporti controls 6/6 · REP-011 v1.0 · RS2026.10 · {fecha} · fingerprint {hash}

If it did not run

NOT VERIFIED — controls not executed by code. Review the Control sheet of the XLSX.

If a control fails, the AI stops, shows the difference and asks how to proceed. It never forces the numbers to reconcile.

Prompt outline

What the prompt contains, block by block

  1. 0Before you paste your filesFixed594
  2. 1Role, audience and business context741
  3. 2Parameters733
  4. 3Repporti standard328
  5. 4Data contract1,245
  6. 5Questions first542
  7. 6Validation with a hard stop1,057
  8. 7Calculation by code1,213
  9. 7-bisNo-code modeFixed497
  10. 8Formulas1,526
  11. 9Structure1,418
  12. 10Writing without «AI slop» and without invention1,002
  13. 11Theme and notation1,019
  14. 12QA, traceability and seal976
The text is delivered when you copy, with your license. It is never on this page.≈ 33,104 characters + cuadre.py (919 lines)

Core available in: Spanish · English

Repporti Standard

It comes out adapted to your report profile

Compatible with every country and framework in the Standard: when you copy, it is composed with your profile (country, accounting framework, report language, currency, unit and year-end). Terminology, number format and statement names come from the Standard, not from the prompt.

See the Repporti Standard

How to use it

From the trial balance to the report in three steps

  1. 01Configure and copyCheck your report profile (country, framework, language, currency) and the period. The prompt is assembled in your browser.
  2. 02Paste into your AIOpen ChatGPT or Claude, attach your anonymized files and paste the prompt.
  3. 03Review and deliverReview the controls table and the seal. If something does not reconcile, the AI stops and asks.

Anonymize before pasting

  • Company name → an alias (“Client 07”); tax ID → “ID-XX”.
  • Customers, suppliers and employees → codes (C001, P001, E001). The mapping table stays on your computer.
  • Use an AI that does not train on your data: business plan, API or training turned off.

Repporti neither receives nor stores your files or your figures: the prompt is assembled in your browser and your files go straight to your AI.

Who it is for

Made for whoever delivers the report

Finance manager / CFOAccountant / firm
Area
Profitability and costs
Frequency
Monthly
Industry
Retail and wholesale, Manufacturing, Services

Compatibility

Which AI it works with

LevelAI
With code executionChatGPT · ClaudeDesigned for plans with data analysis (ChatGPT) or code execution (Claude): cuadre.py runs inside the AI.
No-code modeCopilot · GeminiGenerates the Excel file with formulas and a Control sheet. The footer says “NOT VERIFIED” unless you run cuadre.py on your computer.

Questions

About this report

Can I analyse it by product or channel instead of by customer?

Yes. You choose the main dimension (customer, product, line or channel) and the others come out as summaries. A customer's cost to serve is split across its lines or channels in proportion to its revenue in each.

What if I don't have cost to serve by customer?

You give the total of each item (its account in the trial balance) and the driver used to allocate it: kg, orders, deliveries or % of revenue. The AI states it as an assumption and leaves the drivers editable on the Allocation sheet.

Why doesn't it allocate fixed costs to customers?

Because any allocation of overheads or depreciation is arbitrary and can make a contributing customer look unprofitable. They are shown separately, in the bridge from contribution to operating profit. If you ask, the AI allocates them and flags the allocation as arbitrary.

What about credit notes and returns?

Sales must be net of discounts and returns. A row with negative revenue is only accepted if notas.txt explains the credit note; otherwise the AI stops and asks.

What if my AI cannot run code?

It switches to no-code mode: it builds the Excel file with formulas by dimension and a Control sheet, and the Word footer says «NOT VERIFIED». You can run cuadre.py on your computer and get the seal later.

Profitability and costs

More reports in this area

See the whole area