Hi everyone,
I wanted to share a plugin that may be useful to journals, publishers, and institutions using OJS in Africa or in any region where Paystack is a preferred payment gateway.
For a while, I have been using this Paystack payment plugin for client journals and institutions that we manage. After seeing how often African journals need a practical payment option for OJS, I decided to open-source it for the wider PKP/OJS community.
The plugin is called PaystackOJS.
It provides a Paystack payment gateway for OJS 3.5+, allowing journals to accept payments through Paystack’s hosted checkout flow. It can be used for:
- Article purchases
- Issue purchases
- Subscriptions
- Publication / APC fees
The goal is to make it easier for OJS journals, especially African journals, to accept online payments without modifying OJS core files or building a payment flow from scratch.
GitHub repository:
Latest release: v1.1.1.0
Some of the key features include:
- Paystack hosted checkout, so card details do not touch the journal server
- Server-side verification of payments before fulfilment
- Verification of amount, currency, and payment reference
- HMAC-SHA512 webhook signature validation
- Optional webhook IP allowlist
- Idempotent fulfilment to reduce the risk of duplicate processing between callback and webhook events
- User-facing receipt and payment history pages
- Manager transaction list with refund support
- OJS-native payment email templates
- File-based logging with configurable log level
- No OJS core file modifications
There is also an optional companion addon that improves the payment workflow experience by making payment email templates editable in the OJS interface, adding a payment history link, and adding a Payment tab in the editorial workflow. I am keeping that as a sponsor-supported addon to help with ongoing maintenance and future PKP compatibility updates, but the main Paystack gateway plugin itself is open source.
A few screenshots are available in the repository, including:
- Plugin settings
- Payment request email
- Reader-facing payment page
- Paystack checkout
- Payment receipt
- Confirmation email
- Workflow payment tab
- Editable email templates through the companion addon
Current requirements / notes:
- Requires OJS 3.5+
- Requires PHP 8.1+
- Paystack currency support depends on the journal’s Paystack account eligibility
- Split payments / subaccount support is planned, but not yet released
- The companion addon is only needed for the enhanced workflow tab and editable payment email templates; payments still work through the main plugin without it
The plugin is stable enough that we have been using it with managed client journals, but I would really appreciate feedback, testing, suggestions, and improvement ideas from the PKP community.
In particular, I would welcome feedback on:
- OJS compatibility and best practices
- Payment workflow improvements
- Security hardening
- Better integration with OJS editorial/payment processes
- Documentation improvements
- Any issues that may come up in different hosting environments
Pull requests and GitHub issues are welcome. Questions and suggestions here in the forum are also very welcome.
I hope this helps other journals, especially African journals that have been looking for a Paystack payment option for OJS.





