Integrations & API

Automate gift sending with our open API.

Send HuurayPay gift cards from your HR system, CRM or backend. Open REST API, free sandbox and quick help from our engineering team.

Use cases

What you can automate.

From a single trigger in your HRIS to thousands of gifts a month from your product backend — HuurayPay fits the stack you already run.

HR & payroll

Trigger gifts from your HRIS

Birthdays, anniversaries, onboarding and offboarding — send HuurayPay straight from the system your people team already uses.

CRM & sales

Reward without leaving your CRM

Pay out on closed deals, NPS responses, referrals and survey completions. Every gift is tracked back to the record that triggered it.

Product & engineering

Embed gifting in your own product

Drop HuurayPay into onboarding flows, loyalty programs and customer journeys with a clean REST API your team will actually enjoy.

Example

Send a gift card in a single request.

Grab your API key from the HuurayPay dashboard. The sandbox is free — every endpoint behaves exactly like production.

  • REST + JSON over HTTPS
  • Language-agnostic — use the stack you already have
  • Clear documentation with copy-paste examples
  • Webhooks for delivery, redemption and reconciliation
Open the API reference →
send-gift.ts
const response = await fetch(
  "https://api.huuray.com/v1/orders",
  {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.HUURAY_API_KEY}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      recipient: { email: "maria@firma.dk" },
      amount: 500,
      currency: "DKK",
      message: "Tillykke med fødselsdagen!"
    })
  }
);

// => { status: 201, id: "order_abc123" }

Embedding

Embed the order flow in your own portal.

Drop the full HuurayPay purchase flow into your employee portal, intranet or customer area as a single iframe. Pre-fill recipient details with query parameters — or pass in an entire recipients array.

  • Pre-fill recipient name, email and phone
  • Pre-fill company, amount and scheduled send time
  • Pass in an entire recipients list in one go
  • Inherits your brand colours and logo automatically
send.huuray.com/embed?first_name=Maria…Embedded order flow

Recipient

Name
Maria Olsen
Email
maria@firma.dk
Pre-filled

Amount

500 DKKPre-filled

Get started

Test free in the sandbox.

Create a HuurayPay account, grab your API key and send test orders to the sandbox — no commitment, no card required.

  1. 01

    Create a free account

    Takes under two minutes. No card details required to start exploring the platform.

  2. 02

    Grab your API key

    Available straight from the HuurayPay dashboard the moment you sign in.

  3. 03

    Build and test

    The sandbox uses the exact same endpoints as production. Switch to a prod key when you are ready to ship.

Secure by default

TLS-only endpoints, scoped API keys and full audit logs on every order.

Built for scale

From a handful of birthdays to bulk campaigns across 170+ countries.

Webhooks included

React to delivery, redemption and refund events in your own systems.

Engineering support

Talk to a real engineer when you are scoping or debugging an integration.

Webhooks

React the moment a gift moves.

HuurayPay pushes signed JSON events to your endpoint whenever an order is created, delivered, redeemed or refunded — so your HRIS, CRM or data warehouse stays in sync without polling.

order.created

Fired the moment a gift order is accepted by the API. Use it to log the order in your own system.

order.delivered

Fired when the recipient receives the gift on the chosen channel — email, SMS or link.

order.redeemed

Fired when the recipient picks a gift card. Perfect for reconciliation and reporting.

order.refunded

Fired when an unredeemed gift is refunded back to your balance.

order.delivered
POST /your-endpoint
Huuray-Signature: t=1716998400,
  v1=9f8c2b1e4a…
Content-Type: application/json

{
  "id": "evt_01HXYZ…",
  "type": "order.delivered",
  "created": 1716998400,
  "data": {
    "order_id": "order_abc123",
    "recipient": {
      "email": "maria@firma.dk",
      "name": "Maria Olsen"
    },
    "amount": 500,
    "currency": "DKK",
    "delivered_at": "2026-05-27T09:20:00Z",
    "channel": "email"
  }
}
verify-webhook.ts
import { createHmac, timingSafeEqual } from "crypto";

export function verifyHuurayWebhook(
  rawBody: string,
  header: string,
  secret: string
) {
  // Header: "t=<timestamp>,v1=<signature>"
  const parts = Object.fromEntries(
    header.split(",").map((p) => p.split("="))
  );

  const signed = `${parts.t}.${rawBody}`;
  const expected = createHmac("sha256", secret)
    .update(signed)
    .digest("hex");

  const ok = timingSafeEqual(
    Buffer.from(parts.v1, "hex"),
    Buffer.from(expected, "hex")
  );

  // Reject anything older than 5 minutes
  const fresh =
    Math.abs(Date.now() / 1000 - Number(parts.t)) < 300;

  return ok && fresh;
}
Always verify the signature

Compute the HMAC-SHA256 over `${timestamp}.${rawBody}` with your webhook secret and compare in constant time.

Reject stale timestamps

Drop events older than 5 minutes to prevent replay attacks, even if the signature is valid.

Respond 2xx fast, then process

Acknowledge within a few seconds and queue heavy work — HuurayPay retries with exponential backoff on non-2xx responses.

Questions?

Common questions about integration.

Does the API cost extra?+

No. API access and the sandbox are included with every HuurayPay business account — you only pay for the gift cards you actually send.

Where do I find my API key?+

Sign in to the HuurayPay dashboard and open the developer settings. Sandbox and production keys are listed there separately.

Which programming languages are supported?+

Any language that can speak HTTPS — Node, Python, .NET, Go, PHP, Ruby and more. The API is plain REST + JSON, so it fits any stack.

Can I test the integration without using real money?+

Yes. The sandbox uses the exact same endpoints as production and accepts test orders for free. Switch to a production key when you are ready.

Can I embed the order flow on my own site?+

Yes — the full HuurayPay purchase flow can be embedded as an iframe with pre-filled recipient details, amounts and branding.

Can you help us with the integration?+

Absolutely. Reach out and our engineering team will help scope the integration, review your design and unblock you along the way.

Need technical help or a custom integration? Get in touch.

Your next reward is three clicks away

No setup fee. No monthly cost. Just a 3% service fee on what you send — and a gift experience your recipients will remember. Join 10,000+ companies already using Huuray.

Works withApple PayGoogle Wallet
Happy employee receiving a HuurayPay gift card