Rewardly Docs

Quickstart

Send your first reward in about five minutes.

Create an account and API key

Sign up for a merchant account, then go to Developers → Create key. Give the key read and write scopes and copy the secret — it's shown once.

export REWARDLY_KEY="rk_live_..."

Fund your wallet

Rewards draw from your prepaid wallet. Top up from the dashboard (Wallet → Add funds) or via the API:

curl -X POST https://paybilt-rewards-api.fly.dev/v1/topups \
  -H "Authorization: Bearer $REWARDLY_KEY" \
  -H "Content-Type: application/json" \
  -d '{"amountCents": 10000}'

With Stripe payments enabled the response includes a checkoutUrl to finish payment; the wallet is credited when checkout completes.

Send a reward

Send a $50 choice reward — the recipient picks any mix of gift cards adding up to $50:

curl -X POST https://paybilt-rewards-api.fly.dev/v1/rewards \
  -H "Authorization: Bearer $REWARDLY_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-1042-reward" \
  -d '{
    "type": "CHOICE",
    "valueCents": 5000,
    "recipient": { "email": "casey@example.com", "firstName": "Casey" },
    "message": "Thanks for being an awesome customer!"
  }'

The response includes the reward and its redemptionUrl. Casey also gets a branded email with the same link.

{
  "reward": {
    "id": "rw_...",
    "type": "CHOICE",
    "status": "SENT",
    "valueCents": 5000,
    "remainingValueCents": 5000
  },
  "redemptionUrl": "https://paybilt-rewards-redeem.fly.dev/r/..."
}

Track it

Poll GET /v1/rewards/:id or subscribe to webhooks for reward.opened, reward.redeemed, and card.issued events.

Next steps

On this page