Migrating off the Receipt API
The Receipt API is deprecated. Its own specification says so: “This API is deprecated — please switch to Transaction POS Log API.” It remains documented here for teams still running against it.
What it did
The Receipt API served two directions at once:
- Writing in. Posting receipts from external systems like webshops, so customers could return goods in a physical store, giving FiftyTwo one point of entry for receipts.
- Reading out. Retrieving receipts produced by FiftyTwo (or posted through the method above), and end-of-day reports.
That split is exactly why it was replaced: the two directions have different requirements, and they are now two APIs.
The mapping
Post an external receipt — now Register Sale
Read receipts for a chain — now Transaction POS Log
Read receipts for a single store — now Transaction POS Log
End-of-day report — now Transaction POS Log
Why the read side is worth migrating
The Receipt API is poll-only. TPLA pushes events over Apache Pulsar, so you stop long-polling, react in real time, and get ordered replay after an outage. The REST cursor endpoints remain for backfill.
Migration order
Move reads to TPLA REST first
The cursor endpoints map almost one-to-one. This is a low-risk change you can verify by comparing output against the Receipt API for the same cursor.
Then subscribe to events
Once your parser handles the TPLA payload, subscribe to Pulsar. The payload is identical, so nothing downstream changes.