How a Real-Time Loyalty Platform Processes Transactions at Enterprise Scale
Most platforms can post a transaction in real time. Far fewer can make the loyalty decision in real time — evaluating every rule, calculating the earn, checking tier and eligibility, and returning the answer in sub-second time while the member is still at the counter.
Most platforms can post a transaction in real time. Far fewer can make the loyalty decision in real time: evaluating every rule, calculating the earn, checking tier and eligibility, and optimizing the discount across the whole basket, then returning the answer in sub-second time while the member is still at the counter. That second claim is the hard one, and it is what separates a loyalty platform that changes member behavior from one that reports on it the next morning.
Real-time at enterprise scale is an architectural choice made at the foundation, not a feature bolted on at the edge, and a real-time API in front of a batch core cannot close the gap after the fact. ReactorCX, the real-time loyalty platform from Loyalty Methods, was built for that requirement first. It processes more than 2.6 billion transactions a year across its clients and runs the convenience and fuel programs for 7-Eleven, Speedway, and BP in real time, every transaction, every store.
Real-time loyalty processing means the platform makes the loyalty decision (what a member earns, which tier they reach, which offer they qualify for) at the moment the transaction happens, synchronously, and returns it before the sale closes. ReactorCX, the real-time loyalty platform from Loyalty Methods, was built around that one requirement. The decision does not wait for an overnight cycle. It happens at the pump, at the register, in the app, inside the point-of-sale system's timeout window.
That sounds like a speed feature. It is an architectural choice, and it is the one that separates an enterprise loyalty platform that changes member behavior from one that reports on it the next morning. 7-Eleven runs its convenience program this way across more than 10,000 stores: roughly 1.82 billion transactions a year, each processed in real time, with zero downtime since 2018. Speedway and BP run their fuel and convenience programs on the same real-time loyalty engine.
What does real-time loyalty processing actually mean at enterprise scale?
There are two different claims hiding inside the word real-time, and only one of them is hard.
Posting a transaction in real time is the easy claim. The register sends the sale, the platform records it, an acknowledgment comes back. Most platforms can do this. Making the loyalty decision in real time is the hard claim: evaluating which rules apply, calculating the earn, checking tier and eligibility, optimizing the discount across the whole basket, and returning the answer while the member is still standing there. That is the work that has to finish in sub-second time, on every transaction, at every store, at once.
ReactorCX was designed for the hard claim first. The founding question was not "how do we add real-time later" but "what is the most demanding requirement, and what if we build for that?" Build for synchronous decisioning on every transaction, and the easier paths (streaming, events, file-based loads) inherit a foundation that already clears a higher bar. A platform built the other way around, batch at the core with real-time attached at the edge, cannot reverse that order after the fact.
Why does batch processing quietly cost a loyalty program money?
Batch means delay, and in loyalty, delay means decay.
Here is the pattern. A member buys fuel at 7:14 a.m. A platform that processes loyalty in batch records the sale immediately but computes the consequence later, on a nightly or periodic cycle. The points post overnight. The tier upgrade lands the next day. The offer that the purchase qualified them for arrives after they have already driven away. Every one of those is a moment that has passed. The reward that could have shaped the next visit instead confirms a visit that already happened. The decay is not theoretical: McKinsey reports that 71% of consumers expect personalized interactions and 76% are frustrated when they do not get them, and that faster-growing companies derive markedly more of their revenue from personalization than their slower-growing peers [McKinsey, 2023].
At enterprise transaction volumes, that gap compounds. ReactorCX processes more than 2.6 billion transactions a year across its clients, and the operative word is processes, not records. The loyalty decision happens at the moment of the transaction, not on a downstream schedule, which is why a member can earn at the pump and see what that earn made available before finishing the fill.
This is also where a common misunderstanding about batch lives. ReactorCX does ingest files. Partner accruals, bulk enrollments, catalog loads, and migrations all arrive through FeedXChange™, the platform's file-based gateway. The difference is what happens after the file lands: each record is split into an individual transaction and run through the same real-time engine that handles a live swipe at the register. It looks like batch because it is a file. It behaves like real-time because every record is evaluated the same way a live event is. Batch is a delivery mechanism in ReactorCX. It is never where the decision waits.
How does a real-time loyalty platform process a single transaction?
Follow one purchase through ReactorCX's processing model and the architecture becomes concrete.
The channel (a POS lane, a mobile app, a fuel controller) sends the activity to the platform over a REST API, with the basket broken into line items and tender items.
The engine resolves the member, applies the rule stack in a defined order, and evaluates everything the purchase touches: base earn, active promotions, partner rules, tier accelerators, streak progress.
If the basket qualifies for competing discounts, the arbitration step calculates the optimal allocation across every item rather than defaulting to whichever single offer is largest.
The platform returns the processed result, with a rule-execution trace attached, in sub-second time. The same activity also publishes as an event — ReactorCX emits more than 56,000 events a minute.
The order of that evaluation is not left to chance. A program that runs 400 promotions every six weeks, as 7-Eleven does, would collapse into unpredictable output if rules fired arbitrarily. ReactorCX fixes the sequence (load data, then base rules, then promotions, then partner rules, then tier rules) so the same basket produces the same result every time. Predictable execution is what makes a real-time loyalty platform safe to run at this volume, not just fast.
The same activity that produced the member's answer also publishes as an event. ReactorCX emits more than 56,000 events a minute, each carrying full context: member, timestamp, source rule, accrual lineage. Those events are what let a brand fire the congratulations message, the tier notification, or the next offer the instant the earn happens, without polling or callbacks.
Can real-time processing hold up at enterprise transaction volumes?
The question every enterprise buyer eventually asks is not whether real-time works in a demo. It is whether it holds on the worst day.
For 7-Eleven, the worst day is 7-Eleven Day, when free-Slurpee traffic turns ordinary volume into a spike. ReactorCX handles it by scaling horizontally on its own: capacity rises with the load and falls again when the surge passes, without manual intervention and without degradation. The same engine that returns a sub-second answer on an ordinary Tuesday returns one in the middle of a national promotion. Real-time at enterprise scale is not a peak number you hit once. It is a response time you hold every time.
Is real-time processing accurate enough for finance to trust?
Speed is worthless if the number is wrong, and at enterprise scale a wrong number gets expensive fast. A single miscalculated earning rule does not stay small. It compounds across every qualifying transaction until someone notices, and at billions of transactions a year, "until someone notices" can mean millions in unintended liability in an hour.
This is why real-time processing and deterministic accuracy have to be the same system, not a trade-off between them. In ReactorCX, every earn is an accrual tagged to the exact rule that created it, with its currency, expiration, and full lineage. Redemptions draw down those accruals in first-in-first-out order. Activities are immutable once recorded, so corrections post as new offsetting activities rather than edits, and the audit trail stays intact. The liability balance updates on every transaction, in real time, which means a program's outstanding liability is a number finance can prove on any given day rather than reconstruct at month-end.
A real-time loyalty platform that cannot show its work is a risk. One that decides in sub-second time and records every decision with traceable lineage is the opposite: it makes the program faster and more auditable at once.
Real-time is not a feature Loyalty Methods attached to ReactorCX after the fact. It is the requirement the platform was built to meet, and every other capability (the event stream, the file gateway, the discount engine, the liability ledger) sits on top of that one decision. 7-Eleven, Speedway, and BP do not run real-time loyalty engines because real-time is a useful option. They run them because in convenience and fuel, the moment is the business. The decision either happens now, or it happens too late.
Frequently asked questions
- What is a real-time loyalty platform?
- A real-time loyalty platform makes the loyalty decision (earn, tier, eligibility, discount) at the moment a transaction happens and returns it synchronously, rather than computing it on a later batch cycle. ReactorCX returns that decision in sub-second time, which is what lets a member earn and see the result before a sale closes.
- How is real-time loyalty processing different from batch processing?
- Batch processing records the transaction immediately but computes the loyalty consequence later, so points, tiers, and offers arrive after the moment that prompted them. Real-time processing decides at the moment itself, and in ReactorCX even file-based loads are split into individual transactions and run through the same real-time engine, so batch is a delivery method, not a delay in the decision.
- Can a real-time loyalty engine handle enterprise transaction volumes?
- Yes. ReactorCX processes more than 2.6 billion transactions a year across its clients and scales horizontally to absorb peak-day surges without degradation, holding sub-second response times whether the load is an ordinary day or a national promotion.
- Does real-time processing make loyalty accounting harder to audit?
- No, it makes it easier. ReactorCX updates outstanding liability on every transaction and records each earn as an accrual with full lineage back to the rule that created it, so finance can prove the liability balance on any given day rather than reconstruct it at month-end.
- Can a real-time loyalty platform still import files or run batch data loads?
- Yes, and in ReactorCX a file is a delivery method rather than a delay in the decision. Partner accruals, bulk enrollments, catalog loads, and migrations all arrive through FeedXChange™, the platform's file-based gateway. After a file lands, each record is split into an individual transaction and run through the same real-time engine that handles a live swipe at the register, so the data looks like batch but behaves like real-time.
- How does a real-time loyalty platform connect to point-of-sale, the app, and other channels?
- Channels send activity to the platform over a REST API, with the basket broken into line items and tender items. ReactorCX resolves the member, applies the rule stack in order, evaluates everything the purchase touches, and returns the processed result in sub-second time, inside the point-of-sale system's timeout window. The same interface serves a point-of-sale lane, a mobile app, or a fuel controller, so every channel acts on one balance and one source of truth.
- How does a real-time loyalty platform decide which offer or discount applies to a basket?
- It arbitrates across the whole basket rather than defaulting to the single largest offer. When a purchase qualifies for competing promotions, ReactorCX calculates the optimal allocation across every item in sub-second time, then returns the result with a rule-execution trace attached. That is the difference between a platform that picks one discount and one that solves for the best total outcome on every transaction.
- Why does the order in which loyalty rules execute matter?
- Because at enterprise volume, rules that fire arbitrarily produce unpredictable output. A program that runs hundreds of promotions at once needs the same basket to produce the same result every time. ReactorCX fixes the sequence, loading data, then base rules, then promotions, then partner rules, then tier rules, so execution is deterministic. Predictable order is what makes a real-time loyalty platform safe to run at scale, not just fast.
- How does a real-time loyalty platform send notifications the moment an earn happens?
- The same activity that produces the member's answer also publishes as an event carrying full context: member, timestamp, source rule, and accrual lineage. ReactorCX emits more than 56,000 of these events a minute, which is what lets a brand fire a congratulations message, a tier notification, or the next offer the instant the earn happens, without polling or callbacks. Real-time recognition depends on this event stream as much as on the speed of the decision itself.
- What is loyalty program liability?
- Loyalty program liability is the value of every point and reward a program has issued but not yet redeemed, recorded as money the brand owes. It grows with every qualifying transaction, which is why a single miscalculated earning rule can move millions in unintended liability before anyone notices. ReactorCX records each earn as an accrual tagged to the rule that created it, updates the outstanding balance on every transaction, and keeps activities immutable, so finance can prove the liability on any given day rather than reconstruct it at month-end.
- Does a real-time loyalty platform change member behavior or just record it?
- It changes behavior, which is the entire point of processing in real time. A batch platform records a purchase and computes the consequence later, so the points, tier, or offer arrive after the moment that prompted them. A real-time platform like ReactorCX returns the decision while the member is still at the counter, so the reward can shape the next visit instead of confirming one that already happened.
American Airlines Group Inc., Quarterly Report on Form 10-Q (filed April 2026): current loyalty program liability of $4.2 billion as of March 31, 2026, the near-term portion of a larger deferred-revenue balance. americanairlines.gcs-web.com
McKinsey & Company, "The value of getting personalization right (or wrong) is multiplying" and "What is personalization?" (2023): consumer expectations for personalized interactions (71% expect, 76% frustrated when absent) and personalization revenue findings.
See Real-Time Loyalty Processing in Action
ReactorCX processes 2.6 billion transactions a year in real time. Talk to us about what sub-second loyalty decisioning looks like at your scale.
Request a Demo