-
SlowBearDigger authored
the platform-agnostic layer every cart adapter sits on, extracted so HikaShop, VirtueMart, WHMCS and others share one engine instead of each carrying a copy of the money math and the settle loop. - Gateway: per-order subaddress derivation, fiat->XMR with a pluggable rate source (CoinGecko default, fixed rate, or a custom URL), the monero: URI, and the HMAC poll token. - OrderStore: the storage contract an adapter implements over its cart's order API; ArrayOrderStore is the in-memory reference/test double. - Settler: the poll -> detect -> settle loop. fails closed -- an empty or zero expected amount never settles, and a settle requires a real on-chain txid. - pay_card: the customer-facing payment card, one canonical copy vendored into each adapter at build time. verification stays view-key only: no monero-wallet-rpc, no daemon. gateway and settler suites run under plain php (no composer).
SlowBearDigger authoredthe platform-agnostic layer every cart adapter sits on, extracted so HikaShop, VirtueMart, WHMCS and others share one engine instead of each carrying a copy of the money math and the settle loop. - Gateway: per-order subaddress derivation, fiat->XMR with a pluggable rate source (CoinGecko default, fixed rate, or a custom URL), the monero: URI, and the HMAC poll token. - OrderStore: the storage contract an adapter implements over its cart's order API; ArrayOrderStore is the in-memory reference/test double. - Settler: the poll -> detect -> settle loop. fails closed -- an empty or zero expected amount never settles, and a settle requires a real on-chain txid. - pay_card: the customer-facing payment card, one canonical copy vendored into each adapter at build time. verification stays view-key only: no monero-wallet-rpc, no daemon. gateway and settler suites run under plain php (no composer).
This project is licensed under the MIT License.
Learn more
Loading