onari

Rewards

Who pays for what, voucher codes, and reward statuses.

View as Markdown

Onari decides who wins. Paying is either done by Onari (voucher codes) or by your server, when Onari tells it to.

RewardWho delivers itWhat your server does
Voucher codeOnari: one of your uploaded codes is given to the winner and shown in their Rewards Hub.Nothing required. The code is also in the reward.issued webhook if you want to send it by SMS or email.
CashbackYouCredit the player's wallet or account when reward.issued arrives.
Airtime or dataYouSend it through your provider.
Perk (free delivery, fee waiver…)YouApply the perk to the player's account.

Voucher codes

Your team uploads codes in Rewards → Voucher codes (paste or CSV). Each winner gets one unused code. If the codes run out, the win is recorded as failed with reason no_codes_left; add more codes and resend it from the dashboard. The winner never loses the win.

Statuses

StatusMeaning
issuedWon. If it's yours to pay, pay it.
deliveredPaid or handed over. Voucher codes are delivered as soon as they're assigned.
failedCouldn't be given yet (for example, no voucher codes left).

Mark cash, airtime and perk rewards as paid in Rewards → Payouts so your team can see what's outstanding.

Paying exactly once

Each reward has an ID, and reward.issued carries idempotency_key: "rw_<reward id>". Store it with the payment on your side and check it before paying, so a webhook retry never pays twice. See Webhooks.

On this page