Stellar Testnet. No real money.
Live on Stellar Testnet

Know the moment a Stellar payment lands.

Webhook watches your wallets, checks every payment against your rules, and POSTs a signed event to your server seconds after the ledger closes. Server down? We keep retrying for two days.

No card · No node to run · First webhook in about five minutes

WEBHOOK
Payment receipt · #000412
Stellar Testnet

LEDGER1204331
TIME14:02:11 UTC
FROMGCQJ…QH3S
TOShop till
MEMOINV-0412

ASSET USDCPASS
AMOUNT ≥ 50PASS
MEMO MATCHPASS

TOTAL250.0000000 USDC

*** DELIVERED 200 OK · 312 MS ***
POST api.shopkit.ng/hooks/stellar
7 decimalsExact amount strings, never rounded.
SignedHMAC-SHA256 on every request.
10 attemptsBackoff over two days, then replay with one click.
FreeOn testnet while you build.
How it works

Three steps. No indexer to host, no polling loop to babysit.

01 · WATCH

Add a wallet

Paste a public G… address. We confirm its trustlines and start reading every ledger for payments to it.

02 · VERIFY

Set the rules

Asset, exact or ranged amount, memo, allowed senders. A payment that misses is rejected with a reason code, so you always know why.

03 · DELIVER

Get a signed webhook

Verified or rejected, your server hears about it seconds after the ledger closes. If it doesn't answer 2xx, we keep trying for two days.

TimeWatchAmountStatus
14:02:11Shop till250.0000000 USDCdelivered
14:02:18Invoices1500.0000000 USDCdelivered
14:02:25Shop till12.0000000 USDCrejected
14:02:31Donations25.5000000 XLMretrying
14:02:40Shop till95.0000000 USDCdelivered
14:02:47Invoices480.2500000 USDCdelivered
14:02:53Shop till60.0000000 USDCdelivered
14:03:02Donations1200.0000000 XLMdelivered
The dashboard

Every payment, rule and retry in one place.

Watch payments land live, see exactly why one was rejected, and replay anything your server missed.

webhook · overview

Overview

Last 24 hours · Stellar Testnet

Send test webhookCreate watch
Payments detected · 24h
1284
+12% vs yesterday
Verified / rejected
1231 / 53
95.9% verified
Webhook success
98.4%
21 retried · 2 failed
Median delivery
412 ms
p95 1.9 s
Payments per hourverifiedrejectedthis hour
Built for money

The tedious parts of taking payments, handled.

Rules, not regex

Exact, min, max or range on the amount. Memo equals, present or absent. A sender allowlist when you need one. Every payment shows which rule passed and which failed.

passfailAMOUNT_BELOW_MIN

Retries you can see

Every attempt is logged with its status code, latency and the first 1 KB of your response. Missed a deploy? Replay every failed event since any time.

failedretryingdelivered

Secrets stay secret

Signing secrets and API keys are shown once. Rotating keeps the old secret valid for 24 hours, so you deploy without dropping events. Paste an S… secret key by mistake and we refuse it.

Made for real-world networks

The dashboard is light, works on a 360 px phone and holds its place on a slow connection. If the network lags, we catch up ledger by ledger. Nothing is skipped.

For developers

Verify one header. Ship the feature.

One shared secret, one HMAC, one comparison. The payload carries the payment exactly as it landed on the ledger, tx hash included, so you can check it yourself.

// Express: verify the signature, then trust the payload
const raw = express.raw({ type: "application/json" });

app.post("/hooks/stellar", raw, (req, res) => {
  const t = req.get("Webhook-Timestamp");
  const expected = crypto
    .createHmac("sha256", process.env.WEBHOOK_SECRET)
    .update(t + "." + req.body)
    .digest("hex");
  const sent = req.get("Webhook-Signature"); // v1=<hex>
  if (!matches(sent, expected)) {
    return res.sendStatus(400);
  }
  const { type, data } = JSON.parse(req.body);
  if (type === "payment.received") {
    markInvoicePaid(data.payment.memo, data.payment.amount);
  }
  res.sendStatus(200); // anything else and we retry
});
// matches(): a constant-time compare. Full version in the docs.

Ship your first payment webhook today.

Free on testnet. All you need is a wallet address and a URL that returns 200.

Start free on testnet
webhook · payment webhooks for StellarTestnet only. No real money moves.