paymob-check-hmac
CommandAudit a Paymob webhook HMAC verification implementation for correctness and safe failure behavior.
Explain a Paymob error code, HTTP status, or error message and give the cause and fix.
> /plugin marketplace add PaymobAccept/Paymob-AI-Integration-Skill> /plugin install paymob-integration@paymob
description: Explain a Paymob error code, HTTP status, or error message and give the cause and fix. argument-hint: "[error code, HTTP status, or error message]" allowed-tools: Read Glob
The user wants this Paymob error explained: $ARGUMENTS
**Locating the skill files.** `SKILL.md` and its `references/` directory live together. Use the first of these that exists:
1. `${CLAUDE_PLUGIN_ROOT}/skills/paymob-integration/` — plugin install 2. `~/.claude/skills/paymob-integration/` — personal skill install. `~` is the user's home directory; on Windows expand it yourself (`%USERPROFILE%\.claude\skills\…`), since a literal `~` will not resolve there. 3. `skills/paymob-integration/` — repository checkout, relative to the working directory
`${CLAUDE_PLUGIN_ROOT}` is substituted only for plugin installs. If you see it unexpanded, you are not in one — use path 2 or 3. If none resolve, search for `SKILL.md` under any `paymob-integration` directory. Paths written as `references/…` below are relative to whichever root you resolved.
**If you cannot read the files, say so and stop.** Do not explain a Paymob error from memory — a plausible-sounding wrong cause sends the merchant to debug the wrong layer.
1. Read the **Troubleshooting** table in `SKILL.md` and match `$ARGUMENTS` against its rows (by HTTP status, error text, or symptom). Quote the cause(s) listed for the matching row — do not paraphrase from memory, read the table each time in case it has changed. 2. If the fix involves code, open the reference file matching the user's project language/framework — `references/code-nodejs.md`, `references/code-python.md`, `references/code-php.md`, `references/code-dotnet.md`, `references/code-ruby.md`, or `references/code-frontend.md` — and adapt its corrected snippet to the user's project. Do not write a fix that contradicts what's in that file (for example, don't invent a different HMAC digest, header scheme, or amount unit than what the reference shows). 3. If the matching row is the HMAC-mismatch row, also read `references/hmac-verification.md` before answering and get the field order, digest algorithm, and the `obj.id`/`order.id` (POST) vs `id`/`order_id` (GET redirect) distinction from that file directly — never restate the field order from memory or from this command file, since this file intentionally carries no copy of it. 4. If `$ARGUMENTS` does not match any row in the table, say so explicitly rather than guessing at a cause. Then:
5. If the error persists after the fix, or it points to the account rather than code (for example, live keys are missing or a method isn't enabled), suggest reproducing the request in the wizard's **Code Lab** (see `references/post-integration.md` §4). If it still fails there, suggest `/paymob-support-ticket` to draft a redacted ticket.
Claude.ai / ChatGPT / Lovable skill upload: Download paymob-integration.zip — do not use GitHub's Code → Download ZIP. Give any AI coding agent expert, workflow-driven knowledge of the Paymob payment gateway across Egypt, UAE, KSA, and Oman.
Audit a Paymob webhook HMAC verification implementation for correctness and safe failure behavior.
Walk through Paymob's integration chooser and recommend the right payment model and checkout surface for this merchant.
Audit a Paymob integration for go-live readiness and report a pass/fail checklist plus the Paymob-side approval steps still…
Recommend which Paymob payment methods to enable for a merchant's business, with regional availability, refund support, and what…
Draft a redacted Paymob support ticket from the current issue and route it to the right channel (Mobe, forum, wizard Contact…
Show Paymob sandbox test card and wallet credentials, optionally filtered by payment method.
Implement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass.