Description
Sifalo Pay for WooCommerce is a payment gateway that lets customers in Somalia, Somaliland and Djibouti pay with the mobile money wallet or card they already use, while you get paid through your Sifalo Pay account. Enter your API credentials once and every supported payment method appears at checkout automatically.
Supported payment methods
- Mobile money: EVC Plus, ZAAD, eDahab, Sahal, Premier Wallet
- Cards: Mastercard and Visa
- New methods added to Sifalo Pay become available without reinstalling the plugin.
Features
- One-step setup. Enter your API User and API Key once. No per-method configuration.
- Live and Staging modes. Test the full payment flow before accepting real payments.
- Automatic order verification. Pending orders are re-checked in the background, so successful payments are not missed.
- Pending-aware wallet payments. Mobile wallet payments awaiting customer approval stay pending instead of failing checkout.
- Refunds from WooCommerce. Issue refunds through the Sifalo Pay API (full refunds for ZAAD).
- Clear checkout experience. Mobile-friendly payment fields, a processing overlay, and plain-language error messages.
- Order notes for debugging. Failed payments are logged to the order notes.
- HPOS and PHP 8.3 compatible. Works with WooCommerce High-Performance Order Storage.
Requirements
- WordPress 5.4+ and PHP 7.4+
- WooCommerce with the classic (shortcode) checkout. The Cart and Checkout blocks are not supported yet.
- A free Sifalo Pay account: https://sifalopay.com
Third-party service
This plugin sends order and payment details (order ID, amount, currency, and customer billing details) to the Sifalo Pay API to process payments and verify their status. A Sifalo Pay account is required.
- Service: Sifalo Pay, operated by Sifalo Technologies
Caching and Performance
Payment API calls and order updates run on the server and are not affected by page caching. Problems only appear when checkout HTML, checkout fragments, or JS/CSS are cached or combined incorrectly. No Sifalo-specific rules are needed beyond standard WooCommerce caching practice.
Recommended setup
- Enable WooCommerce mode in your caching plugin if it has one (WP Rocket, LiteSpeed Cache, WP-Optimize and similar).
- Never cache these URLs (adjust for your permalinks, e.g.
/en/checkout/):/cart//checkout//my-account/- order-received (thank-you) pages
- any URL containing
?add-to-cart= - any URL containing
?sid=(card payment return from Sifalo) - any URL containing
?key=(WooCommerce order key)
- Exclude WooCommerce cookies from caching:
woocommerce_items_in_cart,woocommerce_cart_hash,wp_woocommerce_session_*. Also enable «Do not cache for logged-in users». - Exclude from JS/CSS minify, combine and defer:
sifalo-pay-public.js,sifalo-pay-public.css, andjqueryif checkout breaks after enabling defer. - Purge everything (page, object, opcode and CDN caches) and retest in a private window.
Do not full-page cache checkout for performance. Use object caching or a CDN for static assets only.
Installation
- In WordPress, go to Plugins > Add New, search for «Sifalo Pay», then click Install Now and Activate. Alternatively, upload the plugin .zip, or extract it into
wp-content/plugins/. - Go to WooCommerce > Settings > Sifalo Pay.
- Enter your API User and API Key, found in your Sifalo Pay dashboard: https://pay.sifalo.com/business/merchant/api
- Choose Live or Staging, then save.
- All payment methods are enabled automatically. Place a test order in Staging to confirm everything works.
FAQ
-
Which payment methods are supported?
-
EVC Plus, ZAAD, eDahab, Sahal, Premier Wallet, Mastercard and Visa. New methods appear automatically.
-
Does it work with the WooCommerce Cart and Checkout blocks?
-
Not yet. The plugin works with the classic, shortcode-based checkout.
-
Can I refund orders?
-
Yes, from the WooCommerce order screen. ZAAD supports full refunds.
-
A mobile wallet payment shows as pending. Is that a problem?
-
No. The order stays pending while the customer approves the payment on their phone, and the plugin verifies it automatically afterward.
-
A card payment succeeded but the order is still pending. What should I do?
-
Your checkout or thank-you page is probably cached. See «Caching and Performance» below and make sure order-received pages and URLs containing
?sid=are never cached. -
Is it compatible with HPOS and PHP 8.3?
-
Yes to both.
Reviews
Contributors & Developers
“Sifalo Pay – Mobile Money & Card Payments for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Sifalo Pay – Mobile Money & Card Payments for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
2.5.4
- Maintenance release. Includes all 2.5.3 security fixes.
2.5.3
- Security: checkout return verification now requires a valid order key and a Sifalo payment method before acting
- Security: transaction IDs are no longer stored on the order until verification succeeds
- Security: verification requests and responses (including scheduled pending-order checks) are bound to the order ID, amount, and currency
- Credits: Pablo González Pérez, Francisco José Ramírez Vicente and Iñigo Sánchez Enciso for reporting unauthorized order status/meta writes via the return handler
- Credits: Ryan Fabella for reporting cross-order payment confirmation via reused transaction IDs
2.5.1
- Tested with WordPress 7.1 and WooCommerce 11.0
- Removed the Local environment option (Live and Staging only)
- Added HPOS (High-Performance Order Storage) compatibility
- Fixed a PHP 8.3 compatibility issue with gateway properties
- Failed payments are now logged to order notes
2.5.0
- Payment status codes aligned with the Sifalo API (601 paid, 603 pending, 604 insufficient funds, 600 failed)
- Card returns and scheduled verification now handle failed and pending statuses correctly
- Wallet payments send full billing details and store the Sifalo transaction ID
- WooCommerce refunds via the Sifalo API
- Checkout CSS and processing overlay now load on the checkout page
2.4.0
- Simplified setup with a new guided settings page
- Modern, mobile-friendly checkout and payment processing animation
- Clearer error messages and automatic order verification
- Security and reliability improvements across the payment flow