Add-on

Cashmaal Gateway

Accept payments via Cashmaal, a multi-currency gateway popular in Pakistan and India. Deactivate to hide Cashmaal from checkout; existing configuration (API keys, currency) is kept and restored on reactivation. Delete to remove Cashmaal entirely, including its saved configuration.

  • Version 1.0.18

Add-on

Buy and install it from Add-ons in your admin panel.

Changelog

  1. Version 1.0.18 4 Nov 2026

    - A Cashmaal payment reported without Cashmaal's own transaction id is no longer taken for the payment that paid the order: a second payment like that is kept for review instead of being missed, while a buyer coming back to the return page after their own payment still sees it as paid.

  2. Version 1.0.17 27 Oct 2026

    - Reads its keys whether they are stored as typed or sealed by the store, so a later update can keep gateway keys sealed in the database. A sealed key that can no longer be opened counts as not set, and the gateway refuses the payment instead of sending it.
    - A sealed key that cannot be opened is never sent to the payment provider, even when the store's key-sealing support is missing: the gateway refuses the payment as if the key were not set.
    - Checking a payment with Cashmaal now gives up after a set time instead of waiting forever, so a slow answer no longer holds the buyer's page open.

  3. Version 1.0.16 23 Oct 2026

    - A payment settled by Cashmaal is recorded as paid through Cashmaal, even if the buyer switched the request to another gateway in a second tab first.

  4. Version 1.0.15 23 Oct 2026

    - A held Cashmaal payment is no longer shown to the buyer as a second charge when the order was confirmed through Check with gateway; only a genuinely separate payment is marked to refund, and only once.
    - If a buyer pays with Cashmaal while the add-on for that purchase is switched off, they now see 'Confirming your payment' and Cashmaal keeps resending the payment until the add-on is back on; a Cashmaal payment on an order you approved by hand or that was paid another way is now kept for you to review.
    - A Cashmaal payment for an order whose add-on is switched off is now listed for you to review and the buyer is told it is held, and a real Cashmaal payment on an order approved by hand or paid from the wallet is no longer ignored.
    - A Cashmaal payment made before the buyer switched to another payment method is now kept for you to refund instead of being lost.
    - A Cashmaal payment made for the wrong amount or currency is now kept for your review instead of being dropped.
    - If a Cashmaal payment can't be processed right away, Cashmaal is now asked to send it again instead of being told it was handled.

  5. Version 1.0.14 22 Oct 2026

    - A payment for an order that was settled another way (approved by hand, wallet coins, or Check with gateway) is now kept for the store to refund, instead of being taken as the payment that paid it.
    - When the store can't tell whether a Cashmaal payment is the one that paid the order, it is kept for review instead of being taken as that payment. An older order that recorded no payment counts as Cashmaal's only when it was paid with Cashmaal and not approved by hand.

  6. Version 1.0.12 18 Oct 2026

    - A request paid before the store recorded which payment won (Cashmaal 1.0.10 and older) is never shown or kept as paid twice when Cashmaal reports its payment again, or the buyer reloads the return page: only a payment provably other than the one that paid it is kept for a refund. An IPN arriving while the gateway has no API key is answered so Cashmaal sends it again later.
    - A second Cashmaal payment on a request that was already paid is now kept for the store as a second payment (and Cashmaal is told it was handled), instead of being refused and dropped; the same payment sent again is simply acknowledged. A buyer who comes back from Cashmaal after the request closed now sees the held-for-review page, and their payment is kept, instead of a bare "already processed" page. A gateway switched off while a buyer was paying still checks that payment, and a gateway without its API key no longer asks Cashmaal with an empty key. The payment form's values are escaped.

  7. Version 1.0.11 18 Oct 2026

    - The page a buyer returns to after a Cashmaal payment that couldn't settle its request now says what happened: if the order was already paid by another payment, that this one is held for the store to refund; if the payment couldn't be recorded, that the store is checking it and not to pay again. Before, both were told the request had closed and the payment was held. Needs kernel 1.1.478.

  8. Version 1.0.10 17 Oct 2026

    - A Cashmaal payment confirmed after its request had failed or expired is now kept under Payment requests > Paid, not ordered, for you to refund or fulfil. Before, Cashmaal's notification was turned away and the payment was lost. Cashmaal's own record of the transaction decides, never the notification itself. Nothing is credited and the request stays closed. Needs kernel 1.1.478; an older kernel logs it and turns it away as before. One paid at another amount or currency than the request's is kept too, marked for you to check in Cashmaal before refunding it. A pending request is now settled under Cashmaal's own id for the transaction.