Anything that can post a signed form and receive a signed JSON webhook works (Shopify custom apps, Laravel, Django, Node, Magento…). Checklist:
- Create the order as pending and use its ID as
invoice_id. - Redirect the customer with the signed form. Never expose the API secret to the browser.
- On webhook: verify signature → check amount → skip duplicates → mark paid → return
200. - Use
return_urlonly to show a thank-you page; do not trust it as proof of payment. - Optionally run a small job that calls the Status API for orders still pending after a while.
MAA INVEST Pay Docs