=== Jokoor Pay for WooCommerce ===
Contributors: khanmomodou101
Tags: woocommerce, payment gateway, wave, mobile money, gambia
Requires at least: 5.8
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Accept Wave, APS Wallet, QMoney, Yonna Wallet, Sutura Money, and Card payments in your WooCommerce store through Jokoor Pay.

== Description ==

Jokoor Pay lets a WooCommerce store in The Gambia take the payment methods its customers already use. A shopper picks Jokoor Pay at checkout, pays with the method they prefer, and the order is marked paid as soon as the payment is confirmed.

Supported at checkout:

* Wave
* APS Wallet
* QMoney
* Yonna Wallet
* Sutura Money
* Visa and Mastercard, including cards issued abroad

The plugin talks to the Jokoor Pay API over HTTPS and confirms every payment in two ways: a signed notification sent to your store, and a lookup you can rely on if the notification is ever missed.

== External services ==

This plugin relies on Jokoor Pay, a payment service operated by Jokoor Inc. (https://jokoor.com), to take payments. Without it the plugin does nothing.

When a shopper chooses Jokoor Pay and places an order, the plugin sends a request to https://api.jokoor.com/v1 to create a checkout session for that order. The request carries:

* the order amount and currency
* a description such as "Order #123 from Your Store", using your site name
* the order number as the payment reference, and the WooCommerce order id
* a reference made from the order id and an attempt number, so that if the same attempt reaches Jokoor Pay twice only one checkout session is opened
* the addresses of your store's order-received and pay-for-order pages, so the shopper can be sent back to your store (both links include the order key WooCommerce adds so the page can show that order)
* the shopper's billing name, email address and phone number, when the order has them

The shopper is then redirected to the Jokoor Pay checkout page. The shopper enters card or wallet details on that page, not on your store.

When the shopper is sent back to your order-received page, each time that page is shown afterwards, and whenever the plugin's own return address (your site address followed by ?wc-api=jokoor_pay_callback) is opened with a checkout id, the plugin asks Jokoor Pay for the status of that checkout session and updates the order. Each of these status requests sends only the checkout session id. Jokoor Pay also notifies your store of the payment result by sending a payment notification (a webhook) to the address shown in the plugin settings.

All requests to Jokoor Pay carry your Jokoor Pay API key, which identifies your account, and the plugin and WordPress version numbers.

Jokoor Pay terms of service: https://jokoor.com/legal/terms
Jokoor Pay privacy policy: https://jokoor.com/legal/privacy

== Installation ==

1. Upload the plugin to your site and activate it.
2. Go to WooCommerce, then Settings, then Payments, and enable Jokoor Pay.
3. Enter your live API key from pay.jokoor.com.
4. Copy the webhook address shown on the settings screen into your Jokoor Pay dashboard.

== Frequently Asked Questions ==

= Do I need a Jokoor account? =

Yes. Register your business at pay.jokoor.com. Your live API key is issued once your business documents are approved.

= Which currency is supported? =

Gambian dalasi.

== Changelog ==

= 1.0.2 =
* WordPress Plugin Check clean-up: Tested up to raised to WordPress 7.1, translations now come from WordPress.org language packs, WooCommerce detected via its class on plugins_loaded, and payment callbacks no longer log the full request.
* Declares WooCommerce as a required plugin, so WordPress 6.5 and later will not activate Jokoor Pay without it.

= 1.0.1 =
* Place Order now sends the shopper to the Jokoor Pay checkout page, where they pick the wallet, instead of straight to Wave.
* Supported methods list updated: Wave, APS Wallet, QMoney, Yonna Wallet, Sutura Money, and Card.
* Payment notifications now match the order from the checkout id Jokoor sends (object_id), use Jokoor's event names, are ready for Jokoor's signed header format, and record the transaction id on the order when Jokoor sends one.

= 1.0.0 =
* First release: mobile money and card payments at WooCommerce checkout, with signed payment notifications.
