← ClaudeAtlas

paynow-integrationlisted

Build, review, or debug Paynow Zimbabwe payment gateway integrations — in PHP/Laravel, Node.js/Express, or any language over raw HTTP. Covers web redirect checkout, Express Checkout (EcoCash, OneMoney, InnBucks, O'mari, Zimswitch, card tokens), SHA-512 hashing, status-update callbacks, polling, test mode and going live. Use this skill whenever the user mentions Paynow or paynow.co.zw, and also whenever they mention EcoCash, OneMoney, InnBucks, O'mari or Zimswitch in a payments context, or ask to add a payment gateway, checkout flow, mobile-money payment or payment callback to a Zimbabwean app — even if they never say "Paynow". Use it too when reviewing or debugging existing payment code for hash mismatches, duplicate charges, double-fulfilment, or orders that were paid but never fulfilled.
67even/paynow-integration-skill · ★ 1 · AI & Automation · score 74
Install: claude install-skill 67even/paynow-integration-skill
# Paynow Zimbabwe Integration Paynow is a Zimbabwean payment aggregator sitting in front of Visa/Mastercard, Zimswitch, EcoCash, OneMoney, InnBucks and O'mari. This skill gets an integration right the first time and keeps money from going missing. ## Start here: which integration style? | Style | What happens | Use when | |---|---|---| | **Web / redirect** | POST the transaction, get a `browserurl`, send the customer's browser there | Card payments, general checkout, you want Paynow to own the payment UI | | **Express Checkout** | You collect the phone number or card token yourself and POST it. Customer authorises on their handset. **No redirect.** | Mobile money, in-app checkout, recurring card billing | Both use the same hashing, the same callback and the same status vocabulary. Express Checkout adds `method`, and for card rails a `merchanttrace`. If the user hasn't said which, ask — it changes the UI they need to build. Mobile money means building a "waiting for authorisation" screen; redirect means they build nothing. ## The transport, in one breath Every merchant→Paynow call is an **HTTP POST** with `Content-Type: application/x-www-form-urlencoded`. Responses are **not JSON** — they come back as a URL-encoded query string that you must split and URL-decode yourself: ``` Status=Ok&BrowserUrl=http%3a%2f%2f...&PollUrl=http%3a%2f%2f...&Hash=8614C21D... ``` People lose hours to this. `res.json()` and `json_decode()` return nothing useful. ## The five rules that stop