Solutions / Promocodes

One code, one grant, once.

Campaign authoring, bulk code inventory, and a two-phase redemption that cannot strand a consumed code when the downstream grant fails.

Redemption Single-use guarantee
Dispatch Two-phase
Abuse Velocity-controlled
What it owns

Promocodes, precisely

01

Campaigns

Versioned and scoped by segment, jurisdiction, brand and channel, with budgets and schedules fixed before launch.

02

Code inventory

Bulk unique codes or shared codes with usage caps, per-player limits, expiry and administrative void.

03

Single use, cell-wide

A single-use code is consumed exactly once, including under concurrent redemption from two devices.

04

Reserve then confirm

If the downstream grant fails, the code is released rather than burned. Nobody has to hand-fix a customer’s ruined welcome offer.

05

Attribution

Affiliate, channel and campaign references captured at redemption and exported as events for the partner programme.

06

Abuse controls

Velocity limits and guessing resistance applied at the redemption boundary, where they actually help.

Contracts it exposes
CommandsRedeemCode · IssueCodes · VoidCode
ReadsGetCampaign · GetRedemption
EventsCodeRedeemed · RedemptionRejected · AttributionCaptured
What it never does
Grant value itself
Keep a ledger of any kind
Become a second bonus engine

Every module on this platform is defined as much by what it is forbidden to do as by what it owns. That is what makes a boundary auditable instead of aspirational.

This service turns a marketing artifact into at most one authorised downstream command per allowed use. The guarantee is the product.

See it running

Every module here surfaces as screens an operator uses on a Monday. Ask for a walkthrough of the ones that decide your week.