verify-webhook

verify-webhook is a skill for Claude Code from theYahia/WWmcp. It costs 17 tokens per session (424 once invoked), scanned A, original, MIT.

A security check for Orange Money payment webhooks, which are messages sent by a payment service to your server. It asks Orange for the transaction status instead of trusting the message alone.

In plain words
What is it for?
Use it to verify the order ID, amount, and payment token, compare the payment service's result with the webhook, and decide whether fulfilment is safe.
Why use it?
It helps block forged payment messages and underpayment attempts before an order is released.

Skill for Claude Code

Written for Claude Code: argument-hint in frontmatter.

Good fit Use it to verify the order ID, amount, and payment token, compare the payment service's result with the webhook, and decide whether fulfilment is safe.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/theyahia/wwmcp/verify-webhook
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add theYahia/WWmcp --skill verify-webhook
Clone the repo
git clone --depth 1 https://github.com/theYahia/WWmcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for verify-webhook

README.md
[![agentmods](https://agentmods.dev/badge/skills/theyahia/wwmcp/verify-webhook/github.svg)](https://agentmods.dev/skills/theyahia/wwmcp/verify-webhook)
Your own site
<a href="https://agentmods.dev/skills/theyahia/wwmcp/verify-webhook"><img src="https://agentmods.dev/badge/skills/theyahia/wwmcp/verify-webhook/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for verify-webhook

Your own site · 80×15
<a href="https://agentmods.dev/skills/theyahia/wwmcp/verify-webhook"><img src="https://agentmods.dev/badge/skills/theyahia/wwmcp/verify-webhook.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 17 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 424 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00017 $0.00424
Opus 5 $0.00009 $0.00212
Sonnet 5 $0.00003 $0.00085
Haiku 4.5 $0.00002 $0.00042

Measured 6d ago against content hash f0553610f787, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

verify-webhook scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

servers/orange-money/.claude/skills/verify-webhook/SKILL.md · 50 lines

What it actually says

/verify-webhook — Webhook validation

Algorithm

  1. Take order_id, amount and pay_token out of the webhook payload the user received. Never act on the payload's status field alone — that field is attacker-controllable if the notif_url is reachable from the internet.
  2. Call validate_webhook with order_id, amount and pay_token. This re-queries Orange Money's transactionstatus endpoint, so the answer comes from Orange, not from the payload.
  3. Compare the authoritative status to what the payload claimed. If they differ, treat the payload as forged and say so loudly.
  4. Compare the amount to the order total on the user's side. A matching order_id with a smaller amount is the classic underpayment attack.
  5. If anything is inconclusive, call get_payment_status with the same three fields for a second read before releasing goods.

Response format

## Webhook validation — CMD-2026-0142

| Field | Payload said | Orange says |
|-------|--------------|-------------|
| status | SUCCESS | SUCCESS |
| amount | 15,000 XOF | 15,000 XOF |

**Verdict**: VALID — safe to fulfil.

Notes

  • A mismatch verdict means do not fulfil. Say that plainly rather than hedging.
  • Orange Money retries notifications; the same order_id arriving twice is normal. Fulfilment must be idempotent on order_id.
  • This tool proves the transaction state. It does not prove the request came from Orange — that is why re-querying rather than signature-checking is the pattern here.

Examples

/verify-webhook CMD-2026-0142 15000 abc123token
/verify-webhook ORDER-88 5000 xyz789token
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 50 lines · 17 tokens per session scan A f0553610f787

Subscribe to this mod's changes

verify-webhook is a skill published in the GitHub repository theYahia/WWmcp (29 stars, last pushed 5d ago), licensed MIT. It adds 17 tokens to every session and 424 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-06.

Related

Other skills, from other repositories

brc-products

Fetch Brainrot Creations products for contextual promotion.

Brainrot-Creations/claude-plugins · 9 tokens

lemonsqueezy-tier-setup

Discovers and verifies the subscription tier structure of a Lemon Squeezy store and emits the .env lines and a summary table needed to wire it into your app. Use when the user says "tier setup", "set up subscription tiers in Lemon Squeezy", "verify my Lemon Squeezy tiers", "match variants to my config", or after…

heysash/lemonsqueezy-mcp · 90 tokens

lemonsqueezy

Operate Lemon Squeezy — the Merchant of Record for digital products and SaaS — via its JSON:API REST endpoints. Covers stores, products, variants, checkouts, orders, subscriptions, customers, and license keys. Use when the user wants MoR billing (EU VAT, chargebacks, sales tax all handled for 5% + fees) instead of…

mnlt/teleport · 84 tokens

javascript-typescript

Professional JavaScript and TypeScript development skill covering modern ES6+, TypeScript, Node.js, Express, React, testing frameworks, and best practices. Use this skill when developing JavaScript/TypeScript applications, building React/Node.js projects, implementing RESTful APIs, or need guidance on modern JS/TS…

ProjAnvil/MindForge · 69 tokens

product-price-monitor

Watch product, flight, or listing prices; alert on target.

NousResearch/hermes-agent · 17 tokens

okx-cex-trade

Use when the user asks to 'buy BTC', 'sell ETH', 'place a limit order', 'place a market order', 'cancel my order', 'amend my order', 'long BTC perp', 'short ETH swap', 'open a position', 'close a position', 'set take profit', 'limit take profit', 'immediate TP', 'set stop loss', 'self-trade prevention', 'stpMode'…

okx/agent-trade-kit · 278 tokens