WooCommerce · Nigeria, Ghana, South Africa, Kenya & Côte d'Ivoire

Accept Paystack
payments on WooCommerce

The PaymentHood plugin registers Paystack as a standard WooCommerce payment gateway, so it appears in the normal checkout alongside your other methods and works with both the classic and block-based checkout. Paystack's card, bank transfer, USSD and mobile money channels all arrive through that one gateway entry — you do not install a plugin per payment method.

  • NGN
  • GHS
  • ZAR
  • KES
  • USD
WooCommerce 6.0+
6 payment methods
Free plugin
WooCommerce
Paystack
Platform
WooCommerce 6.0+
Provider
Paystack
Install via
Plugins → Add New → Upload Plugin
Billing
One-time
PaymentHood fee
None
Compatibility

Paystack on WooCommerce at a glance

WooCommerce version
WooCommerce 6.0+
Where you install it
WordPress admin → Plugins → Add New → Upload Plugin
Coverage
  • Nigeria
  • Ghana
  • South Africa
  • Kenya
  • Côte d'Ivoire
Currencies
  • NGN
  • GHS
  • ZAR
  • KES
  • USD
Billing models
One-time checkout payments. Recurring billing is not supported by the WooCommerce plugin yet.
Cost
The plugin is free and open source. You pay Paystack's own fees, published on their pricing page (opens in new tab). PaymentHood adds nothing on top.

Coverage, currencies and payment methods as published by Paystack, who set and update them. For the current list see Paystack's own documentation (opens in new tab).

Payment methods

What WooCommerce customers can pay with

Each method Paystack supports appears in your WooCommerce checkout. Enabling one is a PaymentHood dashboard setting — nothing changes on the WordPress side.

Cards

Visa, Mastercard and Verve debit and credit cards

Bank transfer

Customer-initiated transfer to a generated account number

USSD

Nigerian bank shortcodes, no smartphone required

Mobile money

M-PESA, MTN, AirtelTigo and Vodafone, in the countries where each operates

QR

Scan-to-pay at checkout

Dedicated Virtual Account

A persistent account number per customer, for recurring collections

Specifics

Running Paystack on WooCommerce

Your store currency has to be one Paystack accepts

WooCommerce charges in a single store currency, set under WooCommerce → Settings → General. Paystack settles in NGN, GHS, ZAR, KES and USD, and which of those your account can actually charge in depends on the country you registered it in. If your store currency is outside that set, the gateway will not appear at checkout — that is the first thing to check when Paystack is configured but not showing.

Block checkout and classic checkout both work

The plugin registers through the standard WooCommerce gateway API, so it renders in the older shortcode checkout and in the newer Cart/Checkout blocks without a separate setting. If you have migrated to blocks and the method is missing, the cause is almost always the currency mismatch above rather than block incompatibility.

Webhooks need a publicly reachable store

Paystack confirms payment by calling back to your server, and PaymentHood verifies that callback's HMAC SHA512 signature before it marks an order paid. A local or firewalled staging site never receives the callback, so orders sit in pending even though the payment succeeded. Use sandbox mode on a publicly reachable URL when testing, not localhost.

One-time orders only, for now

The WooCommerce plugin covers standard one-off checkout. It does not yet drive WooCommerce Subscriptions renewals, so a subscription product will take its first payment but not rebill. If you need recurring billing today, WHMCS is the PaymentHood integration that supports it.

Setup

Connect Paystack to WooCommerce

Four steps, no code. The full walkthrough with screenshots is in the WooCommerce installation guide.

1

Open a Paystack account

Register with Paystack and finish their onboarding. Funds settle from Paystack to your own bank account.

2

Add it in PaymentHood

Paste your Paystack credentials into the PaymentHood dashboard. They stay server-side and never reach your storefront.

3

Install the plugin

Download the WooCommerce plugin and install it from Plugins → Add New → Upload Plugin in your WordPress admin.

4

Enable and test

Paste your PaymentHood API key into the plugin settings, run a sandbox order end to end, then switch to live.

Why PaymentHood

Rather than a direct Paystack plugin

A single-provider plugin works until you need a second provider. These are the parts you would otherwise build and maintain yourself.

Webhook security
HMAC SHA512 signature on the x-paystack-signature header, verified before any order is marked paid
Payment verification
Server-side transaction re-verification against the Paystack API before fulfilment
Credentials
Secret key, held server-side in PaymentHood — never exposed to the storefront
  • Add a second provider without touching your WooCommerce checkout
  • Automatic failover when Paystack is unreachable, instead of a failed order
  • Idempotent charge creation, so a double-submitted order is not a double charge
  • One reconciliation view across every provider you run
  • Free and open source — read the plugin on GitHub (opens in new tab)
FAQ

Frequently Asked Questions

In order of likelihood: your WooCommerce store currency is not one your Paystack account can charge in; the PaymentHood API key is missing or belongs to a different environment than the one you enabled (sandbox key on a live store, or the reverse); or Paystack is added in the PaymentHood dashboard but not enabled. Check the currency first — it is the most common cause.

Not yet. The WooCommerce plugin handles one-time checkout payments. Subscription renewals are on the roadmap. WHMCS is currently the PaymentHood integration with recurring billing support.

Yes, and it needs no plugin change. Enable both in your PaymentHood dashboard and they appear as options at checkout. You can also route by currency or fail over automatically when one provider is unreachable.

Paystack supports merchants registered in Nigeria, Ghana, South Africa, Kenya and Côte d'Ivoire. You open the Paystack account yourself in your country of registration, then connect it to PaymentHood — PaymentHood does not resell or sit in the flow of funds.

Nigerian Naira (NGN), Ghanaian Cedi (GHS), South African Rand (ZAR), Kenyan Shilling (KES) and US Dollar (USD). Which of these you can actually charge in depends on the country your Paystack account is registered in.

No. You pay Paystack's own transaction fees directly to Paystack, and PaymentHood takes no percentage and no per-transaction cut at any volume. See PaymentHood pricing and Paystack's pricing page (opens in new tab).

Paystack signs every webhook with an HMAC SHA512 digest in the x-paystack-signature header. PaymentHood verifies that signature and independently re-queries the Paystack API to confirm the transaction before an order is marked paid, so a forged or replayed webhook cannot complete an order.

Yes. Your store talks to PaymentHood, not to Paystack, so switching provider is a change in the PaymentHood dashboard. No plugin update, no code change and no second checkout integration.

Accept Paystack on WooCommerce today

Free plugin, no PaymentHood transaction fee, and room to add another provider whenever you need one.