WooCommerce

Accept Watenga payments on your WooCommerce store via the embedded checkout widget. Install from the merchant App marketplace or upload the plugin package.

Installation

  1. Download the plugin from downloads.watenga.africa/plugins/watenga-woocommerce.zip (or install via WordPress.org when published).
  2. In WordPress admin: Plugins → Add New → Upload Plugin → Activate.
  3. WooCommerce → Settings → Payments → Watenga → Enable.
  4. Enter your Client ID (publishable key) and Secret Key from the Developer Console → Apps & credentials → your API app.
  5. Set webhook URL to: https://YOUR-DOMAIN/wc-api/watenga
Merchants can also open Dashboard → Apps → WooCommerce for the marketplace install flow and docs link.

Classic and block checkout

Watenga is listed in the Cart and Checkout blocks (plugin 2.1 and later) and in the classic checkout ([woocommerce_checkout]). Either way, placing the order takes the customer to the order pay page, where the Watenga widget charges that order's total. The order is marked paid only after your server re-reads the transaction with your secret key, and the signed webhook completes it even if the customer closes the browser first.

Test mode

Use pk_test_* / sk_test_* keys from a sandbox API app. The same API host is used for test and live; key prefix selects the mode.

Card numberBrandWhat happens
4111 1111 1111 1111VisaApproved: payment.capture.completed
4000 0000 0000 0002VisaDeclined by the issuer (do not retry): payment.capture.declined
4000 0000 0000 9995VisaDeclined, insufficient funds (the buyer may retry)
4000 0000 0000 0119VisaProvider timeout: stays pending, then fails

Expiry: any future month, e.g. 12/34. CVC: any 3 digits. Any name and address. Test keys only: these numbers never reach a card network.

NumberInternationalWhat happens
0771111111+263771111111Approved at once: payment.capture.completed
0772222222+263772222222Pending for about 30 seconds (onPending), then approved
0773333333+263773333333The buyer refuses the prompt (onCancel): payment.capture.cancelled
0774444444+263774444444Insufficient balance, fails at once: payment.capture.declined

Any mobile wallet in test mode; no real phone is prompted.

Troubleshooting

ErrorSolution
Invalid API keyConfirm Client ID and Secret Key match your Sandbox/Live app
Webhook signature failedRe-save webhook secret in plugin settings
Order stuck pendingCheck WooCommerce → Status → Logs; verify webhook URL is reachable
PHONE_REQUIREDEnable phone field at checkout for mobile money
Need help? Email support@watenga.africa