

WooCommerce Payment Gateways settings page showing DPO Pay installed and active.
AparimitLabs Payment Gateway for DPO Pay is a production-grade payment gateway that integrates DPO Pay (Direct Pay Online) — the leading payment service provider across Africa and the Middle East — into your WooCommerce store.
GitHub Repository: https://github.com/aparimitlabs/aparimitlabs-payment-gateway-dpo
The integration follows DPO Pay’s recommended Option A flow: CreateToken Hosted Payment Page VerifyToken. All API communication is XML-over-HTTP using WordPress’s native wp_remote_post() function.
Built following strict Aparimitlabs architectural standards: PSR-4 autoloading, HPOS (High-Performance Order Storage) compatibility, a dedicated transaction log table, and zero raw cURL dependencies.
createToken on the DPO API to generate a secure transaction token.payv3.php?ID={token}).verifyToken to confirm payment status before completing the order.createToken and verifyToken result is persisted to a dedicated wp_dpo_transactions database table for reporting and auditing.wp_remote_post(). No raw cURL.This plugin connects to the DPO Pay API to initiate and verify payments on behalf of the store owner and their customers. Use of this plugin constitutes acceptance of DPO Pay’s Terms and Conditions.
What it is: DPO Pay is a payment service provider operating across Africa and the Middle East, supporting cards, mobile money, and other local payment methods.
When a connection is made: A connection to DPO Pay’s servers is established in two stages:
1. During checkout when a customer places an order (createToken API call — server-to-server).
2. When the customer returns from the DPO payment page (verifyToken API call — server-to-server).
No connection is made during page browsing or admin dashboard loads.
Data transmitted to DPO Pay:
– Your DPO Pay Company Token (in the XML request body for authentication).
– Your Service Type ID.
– The order total amount and currency.
– The WooCommerce order ID (as CompanyRef).
– The redirect and back URLs.
– A payment description string (e.g. “Order #123”).
No customer personal data (name, email, address, card numbers) is transmitted by this plugin. DPO Pay independently collects payment data on their hosted page under their own Privacy Policy.
API Endpoints used:
– API Base URL (Live & Sandbox): https://secure.3gdirectpay.com/API/v6/
– Payment Page URL (Live & Sandbox): https://secure.3gdirectpay.com/payv3.php?ID={token}
DPO Pay Service Links:
– Website
– API Documentation
– Merchant Portal
– Terms and Conditions
– Privacy Policy