SADAD Payment Gateway for WooCommerce
SADAD Payment Gateway plugin for WooCommerce - Accept payments via SADAD in WordPress
by Louis Innovations · github.com/louisinnovationsqatar/sadad-woocommerce · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/louisinnovationsqatar/sadad-woocommerce/archive/refs/heads/master.zipA WooCommerce payment gateway plugin that integrates SADAD Qatar into your WordPress/WooCommerce store. Built on the louis-innovations/sadad-php-sdk.
Built by Louis Innovations.
Features
- Three checkout modes: v1.1 (redirect, SHA-256), v2.1 (redirect, AES-128), v2.2 (embedded iframe, AES-128)
- Test and live environments
- English and Arabic payment page languages (or auto-detect from WordPress locale)
- Configurable order prefix for multi-store merchant accounts
- Full refund support via SADAD API (SADAD does not support partial refunds)
- Transaction and debug logging to WooCommerce > Status > Logs
- Server-to-server webhook endpoint (
POST /wp-json/sadad/v1/webhook) - Browser callback endpoint (
POST /wp-json/sadad/v1/callback) - HPOS (High-Performance Order Storage) compatible
- Read-only Webhook/Callback URL fields with one-click copy
Requirements
| Requirement | Version |
|---|---|
| PHP | 8.1+ |
| WordPress | 6.0+ |
| WooCommerce | 7.0+ |
| Composer | Any |
| SADAD merchant account | — |
Installation
1. Download & place the plugin
cd /path/to/wordpress/wp-content/plugins/
git clone https://github.com/louis-innovations/sadad-woocommerce.git
2. Install Composer dependencies
cd sadad-woocommerce
composer install --no-dev
This installs louis-innovations/sadad-php-sdk and its dependencies.
3. Activate in WordPress
Go to Plugins > Installed Plugins and activate SADAD Payment Gateway for WooCommerce.
4. Configure the gateway
Go to WooCommerce > Settings > Payments > SADAD Payment Gateway.
Configuration
API Credentials
| Field | Description |
|---|---|
| Merchant ID | Your 7-digit SADAD-assigned merchant ID |
| Secret Key | Your SADAD secret key — keep this confidential |
| Website | The website URL registered with SADAD (defaults to site_url()) |
Gateway Settings
| Field | Options | Default |
|---|---|---|
| Environment | Test / Live | Test |
| Checkout Mode | v1.1 / v2.1 / v2.2 | v1.1 |
| Language | English / Arabic / Auto | Auto |
Order Settings
| Field | Description |
|---|---|
| Order Prefix | Optional prefix prepended to order numbers sent to SADAD. Useful when multiple stores share one merchant account. Example: STORE1- turns order 123 into STORE1-123. |
Logging
| Field | Default |
|---|---|
| Transaction Logging | Enabled — logs checkout, webhook, callback events |
| Debug Mode | Disabled — logs verbose request/response data (disable on production) |
Logs are available at WooCommerce > Status > Logs, filter by source sadad-gateway.
Checkout Modes
v1.1 — Redirect Checkout (SHA-256 Signature)
Customer is redirected to https://sadadqa.com/webpurchase. The checkout parameters are signed with SHA-256. Maximum compatibility with all browsers and SADAD integrations.
Recommended for: existing integrations, maximum browser compatibility.
v2.1 — Redirect Checkout (AES-128-CBC Encryption)
Customer is redirected to https://sadadqa.com/webpurchase. The checkout parameters are encrypted with AES-128-CBC for improved security.
Recommended for: new integrations requiring stronger security than v1.1.
v2.2 — Embedded Checkout (AES-128-CBC, iframe)
The SADAD payment form is embedded in an `