=== Appture Pay ===
Tags: woocommerce, subscriptions, payment provider, shipping provider
Stable tag: 1.9.1
Requires at least: 5.2
Tested up to: 7.1
Requires PHP: 7.4
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Unify Payment and Shipping Providers with Appture Pay, for merchants in South Africa.

== Description ==
Unify Payment and Shipping Providers with Appture Pay to allow event driven pay-outs to your service providers. Appture Pay adds a Payment Provider and a Shipping Provider to your Woocommerce installation. Just create a quick Appture Pay account, add a Client and your on your way to receiving payments as well as dispatching a courier in order to fulfill your orders. For merchants residing in South Africa.

== Installation ==
1. Head over to the Appture Pay website and complete the following steps
a. Create an account at https://app.appturepay.com/user/register
b. Complete account FICA
c. Install and activate the Appture Pay plugin, then open Appture Pay > Setup in WordPress.
d. In the Appture Pay website, create or select a confidential API client and configure its redirect and callback URLs using the values shown on the WordPress setup page.
e. Enter the Client Identifier and Client Secret in WordPress. Use Test connection to verify them through AJAX without saving.
f. Click Save changes to save the verified client details. Configure sandbox/live mode in the Appture Pay website.
2. Test a payment while the client is in sandbox mode, if selected, before enabling live payments from your Appture Pay account.
3. To keep the currently saved client secret, leave the secret field blank. Test connection uses the saved secret only when the Client Identifier matches the saved client.
4. Account login, client creation and secret replacement are managed on the Appture Pay website. WordPress setup accepts manual API client credentials only.

== Donation Forms ==
1. Open Appture Pay > Donation Forms and add a form.
2. Configure its amount and once-off or recurring options.
3. Create a non-confidential API client on the Appture Pay website and enter its public identifier in the form settings.
4. Publish the form, then use its shortcode, Gutenberg block, Elementor widget, or copy its standalone HTML.

== Changelog ==

= 1.9.1 =
* Return customers to their WooCommerce order status page after payment, with the standard order confirmation page for guests.
* Identify payment orders using the authenticated API transaction reference when transaction-ID or checkout-session lookups fail.
* Resolve the return destination before acquiring the callback lock, retaining the order while another callback processes payment.
* Use manual client setup only; remove account-password login and account-management AJAX routes from WordPress, including donation forms.
* Test client credentials through AJAX before saving, without exposing tokens or modifying saved settings.
* Confirm payment status when customers return from the gateway and handle repeated or concurrent callbacks safely.
* Preserve public transaction identifiers and restore cached API authentication correctly.
* Support API and gateway URL overrides through wp-config.php constants for development environments.
* Redirect successful manual client changes to the dashboard.

= 1.9.0 =
* Add reusable donation forms backed by non-confidential Appture Pay API clients.
* Embed forms with a shortcode, Gutenberg block, or Elementor widget.
* Export standalone form HTML for use outside WordPress.
* Create, edit, and refresh donation forms from the Gutenberg and Elementor controls.
* Split the admin area into Dashboard, Setup, Donation Forms, and Diagnostics screens.

= 1.8.5 =
* Add a read-only Appture Pay log viewer to the Debug options tab.
* Support recent WooCommerce file and database log storage.

= 1.8.4 =
* Remove obsolete MemberPress support and detection.
* Keep the plugin focused on WooCommerce and WooCommerce Subscriptions.

= 1.8.3 =
* Show the Appture Pay setup dashboard on the main plugin menu page.
* Remove the unconditional missing-plugin warning shown there.

= 1.8.2 =
* Move logging and debug email controls to a dedicated admin tab.
* Keep client and debug settings isolated when either form is saved.

= 1.8.1 =
* Add a connected-client dashboard to the admin settings page.
* Update account registration and password recovery links.

= 1.8.0 =
* Add guided Appture Pay account connection and API client selection/creation.
* Keep account login credentials out of local storage and use a short-lived admin token.
* Retain manual API client configuration.

= 1.7.0 =
* Tested with WooCommerce 11.0.1.
* Add Checkout Block payment-method support and declare Cart/Checkout Blocks compatibility.
* Make callback handling idempotent and serialize concurrent callbacks.
* Complete HPOS migration for courier order metadata.
