=== EasyPay for WooCommerce ===
Contributors: catcode
Tags: woocommerce, payment gateway, easypay, apple pay, ukraine
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Accept card, Apple Pay and Google Pay payments through the EasyPay payment page, with signed notifications and status re-checks.

== Description ==

A WooCommerce payment gateway for **EasyPay** (easypay.ua, Ukraine) built on the EasyPay Merchant API.

Free:

* Creates an EasyPay order and sends the buyer to the secure EasyPay payment page: Visa/Mastercard, Apple Pay and Google Pay — whatever is connected for your merchant.
* Confirms the order from the EasyPay notification: the `Sign` header is verified, and the payment status is then asked from EasyPay itself before the order is marked paid.
* Reconciles the status when the buyer returns to the shop, in case the notification is late.
* Guards against double charging: the "Back" button after a payment, a notification racing the buyer's return, a paid amount lower than the order total.
* Sandbox with the public EasyPay test merchant from the documentation — test the whole flow without a contract.
* One-click connection check that verifies PartnerKey, ServiceKey and the signature without creating an order.
* Optional EasyPay reminder about an unpaid order (SMS/Viber) to the buyer's phone.
* SecretKey stored encrypted; classic and block checkout; HPOS compatible.

Pro (licence from catcode.com.ua, 7-day trial on click):

* Refunds, full and partial, from the WooCommerce order screen — with a check of what is still refundable on the EasyPay side.
* Two-stage payments (hold): the money is blocked and captured when the order is set to Completed, released when it is Cancelled.
* Payment journal with EasyPay status, transaction, refunds and a one-click status check.
* Choice of payment instruments shown on the EasyPay page.

== Installation ==

1. Upload the plugin to `/wp-content/plugins/` and activate it.
2. Go to WooCommerce → Settings → Payments → **EasyPay**.
3. Leave the sandbox on to try it with the EasyPay test merchant (test cards are listed in the EasyPay Merchant API documentation), or turn it off and enter PartnerKey, ServiceKey and SecretKey from your EasyPay manager.
4. Press "Check keys".
5. The notification URL is sent with every order; nothing has to be configured in the EasyPay cabinet.

== Frequently Asked Questions ==

= Do I need a contract with EasyPay? =
For real payments, yes. The sandbox works without one.

= Which currencies are supported? =
Hryvnia (UAH) only. The gateway hides itself when the store currency is different.

= The buyer paid but the order is still pending. =
Make sure the site is reachable from the internet over HTTPS and the SecretKey is right ("Check keys"). The order is also reconciled when the buyer returns to the shop, and from the payment journal.

= Does card data pass through my site? =
No. The card is entered on the EasyPay page; the shop receives only a signed notification.

== Changelog ==

= 1.0.0 =
* First release.
