Hello,
We are building a СУПТО-compliant POS backend for a Bulgarian venue operator, using ErpNet.FP as the fiscal abstraction layer against a Datecs FP-700MX (firmware 3.00 22Jul25, protocol bg.dt.x.isl.com, serial DA023700).
We are designing the Z-report / fiscal day close flow, and hit a specific compliance problem around the FP-700MX's automatic midnight Z-report (required by Н-18 amendments 2022).
The problem:
If our POS fails to close the fiscal day before midnight, the Datecs FP-700MX autonomously issues a Z-report at 23:59:59. Our СУПТО software has no way to know this happened: no push notification, no status flag change visible via GET /status. We need to detect the drift between our last recorded Z-report number and the printer's current Z-counter in order to synthesize the closure record and maintain a gapless Appendix 29 audit trail.
What we have tested, we confirmed via live probe that:
- POST /rawrequest is exposed in our build (HTTP 405 on GET → POST works)
- Command 64 ({"rawRequest": "64\t"}) is accepted with ok: true
- On our current device the rawResponse data field is empty because the FM was just formatted (no fiscal days closed yet, no UIC set — this is a pre-production unit)
We therefore believe that on a production-commissioned unit with at least one closed fiscal day, Command 64 should return the last Z-report number and closure date, which would give us the non-destructive read we need.
Our questions:
- Is our assumption correct: will POST /rawrequest with {"rawRequest": "64\t"} return the Z-report sequence number on a live, fiscalized FP-700MX unit with the bg.dt.x.isl driver?
- What is the exact field layout of Command 64's rawResponse on a live unit? (We need to know which tab-delimited field position contains the Z-counter, so we can write a parser in our Fiscal Abstraction Layer.)
- Is there a cleaner, first-class GET endpoint planned or already available in a newer build that exposes the last Z-report number without printing? Something like GET /printers/{id}/fiscalDayInfo would be ideal for our use case.
- Is the autonomous midnight Z-report a known pattern that other СУПТО integrators have solved via ErpNet.FP? If so, what is the recommended approach?
Thank you in advance for your support on.
regards,
Hello,
We are building a СУПТО-compliant POS backend for a Bulgarian venue operator, using ErpNet.FP as the fiscal abstraction layer against a Datecs FP-700MX (firmware 3.00 22Jul25, protocol bg.dt.x.isl.com, serial DA023700).
We are designing the Z-report / fiscal day close flow, and hit a specific compliance problem around the FP-700MX's automatic midnight Z-report (required by Н-18 amendments 2022).
The problem:
If our POS fails to close the fiscal day before midnight, the Datecs FP-700MX autonomously issues a Z-report at 23:59:59. Our СУПТО software has no way to know this happened: no push notification, no status flag change visible via GET /status. We need to detect the drift between our last recorded Z-report number and the printer's current Z-counter in order to synthesize the closure record and maintain a gapless Appendix 29 audit trail.
What we have tested, we confirmed via live probe that:
We therefore believe that on a production-commissioned unit with at least one closed fiscal day, Command 64 should return the last Z-report number and closure date, which would give us the non-destructive read we need.
Our questions:
Thank you in advance for your support on.
regards,