An IT operations team may need to know which tills have sent their data, how many sales receipts are available and which stores need attention. An automated report can combine these questions while making data coverage visible.
Code calculates counts and amounts using agreed definitions. AI receives those results and writes the commentary, without recalculating totals or inventing reasons for differences.
A small dataset
This fictional dataset covers the business day of 7 October 2026 in Europe/Rome. Amounts are aggregated by till. In this exercise, returns are positive amounts subtracted from gross sales; verify the source system's convention before applying it operationally.
| Store | Till | Sales receipts | Gross EUR | Returns EUR | Complete upload |
|---|---|---|---|---|---|
| ST017 | POS01 | 120 | 4,800.00 | 200.00 | Yes |
| ST017 | POS02 | 80 | 3,200.00 | 0.00 | Yes |
| ST018 | POS01 | 95 | 3,800.00 | 100.00 | Yes |
| ST018 | POS02 | Unavailable | Unavailable | Unavailable | No |
Net sales here means gross less returns. It does not represent payment-method settlement or an accounting reconciliation.
Calculate before writing
The three complete tills report 295 receipts, EUR 11,800.00 gross and EUR 300.00 in returns. Available net sales are EUR 11,500.00. Coverage is three of four expected tills, or 75%.
ST017 has complete data from both tills and EUR 7,800.00 net. ST018 has one complete till out of two and EUR 3,700.00 available net; its daily total remains incomplete. Missing data is not zero sales.
Use integer cents or decimal arithmetic for money. Deduplicate by source keys and replace earlier versions of the same summary instead of adding them. Define treatment of voids, returns, late closings and closed stores.
The daily workflow
Extract the completed business day, record extraction time and compare received tills with the expected inventory. Business days may differ from calendar dates: use the source definition and specify the timezone and interval.
Produce stable tables and anomalies before requesting a narrative. Late arrivals produce a new report version identifying the changed values; do not silently replace an already distributed report.
A prompt for the commentary
Write an operational summary of at most 150 words using these aggregates.
Period: business day of 7 October 2026, Europe/Rome.
Coverage: 3 complete tills out of 4 expected. Available receipts: 295.
Available gross: EUR 11800.00. Returns: EUR 300.00.
Available net: EUR 11500.00. ST018 POS02: no data available.
Report the supplied values without recalculating them.
State that the total is incomplete.
Do not infer a technical failure, growth, decline or lost sales.
Finish with the checks needed to complete the report.
An authored reference summary is:
Available data covers three of the four expected tills: 295 sales receipts, EUR 11,800.00 gross and EUR 300.00 in returns, giving EUR 11,500.00 available net sales. The total remains incomplete because ST018 POS02 has not supplied data. Check upload status and obtain the missing summary before finalising the report.
Verify the reporting routine
Replay a delivery: totals should stay unchanged. Remove a till: coverage should decrease without inserting a zero. Add a return and check its sign. Apply a late correction and verify the new report version.
Compare days only when scope and coverage are comparable. If yesterday included every till and today does not, show that difference before drawing conclusions about overall sales.
Adapt the template in the free AI toolkit, available without registration. Continue with the structured prompts course to practise separating instructions from data.