=== AcquirerOS Payment Gateway for WooCommerce ===
Contributors: gaydukevich1987
Tags: woocommerce, payment gateway, hosted checkout, credit card, payments
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 2.3.5
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Accept Credit Card, PayPal, Apple Pay and Google Pay through one AcquirerOS WooCommerce plugin with independently configurable payment gateways.

== Description ==

AcquirerOS Payment Gateway for WooCommerce adds the AcquirerOS-compatible payment method to WooCommerce, with support for both classic checkout and the WooCommerce Checkout Block.

For most merchants, Redirect / Hosted Checkout is the recommended payment mode. Customers complete card entry on the hosted payment page instead of entering card details directly into WordPress.

S2S / Direct API is also available as an advanced integration option for merchants whose payment environment and compliance requirements support direct card-data processing.

= Multi-Gateway support =

Version 2.3.0 registers four independent WooCommerce payment methods from one plugin:

* AcquirerOS - Credit Card: Redirect / Hosted Checkout or S2S / Direct API.
* AcquirerOS - PayPal: Redirect / Hosted Checkout only, with a single Hosted Checkout URL.
* AcquirerOS - Apple Pay: Redirect / Hosted Checkout only, with a single Hosted Checkout URL.
* AcquirerOS - Google Pay: Redirect / Hosted Checkout only, with a single Hosted Checkout URL.

Each payment method has its own Merchant Number, Gateway Number, Signature Key, endpoint and optional merchant-selected checkout logo. The Credit Card payment method keeps the original `acquireros_gateway` ID and existing settings for backwards compatibility.

Availability of PayPal, Apple Pay and Google Pay depends on the merchant's AcquirerOS/acquiring configuration. Apple Pay and Google Pay may also require payment-provider, merchant, domain, device or browser eligibility. Each gateway defaults to no logo. Merchants can optionally upload their own authorized payment-method image to the WordPress Media Library and select it per gateway. No third-party payment-brand artwork is bundled with the plugin.


= Payment modes =

* Redirect / Hosted Checkout (Recommended): WooCommerce sends the required order and customer information to the configured Hosted Checkout endpoint and redirects the customer to the returned secure payment URL. Card number, expiry date and CVV/CVC are not collected by this plugin in Redirect mode.
* S2S / Direct API (Advanced): Card number, expiry date and CVV/CVC are entered during WooCommerce checkout and transmitted server-to-server to the configured payment endpoint for payment processing. Merchants using this mode are responsible for confirming their PCI DSS scope and compliance obligations with their payment provider and qualified compliance advisers.

= WooCommerce integration =

The plugin integrates with standard WooCommerce payment and order workflows and includes support for:

* Classic WooCommerce checkout.
* WooCommerce Checkout Block.
* High-Performance Order Storage (HPOS).
* Redirect / Hosted Checkout payment flows.
* S2S / Direct API payment flows.
* 3D Secure payment returns.
* Asynchronous payment notifications.
* WooCommerce order status updates.
* Duplicate callback protection.
* Diagnostic logging for troubleshooting.

= External service =

This plugin connects to the payment endpoint configured by the merchant in WooCommerce > Settings > Payments > AcquirerOS. This external service is required to create and process payment transactions.

Depending on the selected payment mode and transaction requirements, information sent to the configured payment endpoint can include:

* Order number and transaction identifiers.
* Order amount and currency.
* Product and order item information.
* Billing and shipping details.
* Customer name, email address and phone number.
* Customer IP address.
* Browser and user-agent information.
* Payment return and notification callback URLs.

In S2S / Direct API mode only, card number, expiry date and CVV/CVC are also transmitted to the configured payment endpoint for payment processing.

AcquirerOS service:
https://acquireros.com/

AcquirerOS Privacy Policy:
https://acquireros.com/privacy/

AcquirerOS Terms of Service:
https://acquireros.com/terms/

Merchants should publish appropriate privacy disclosures and ensure that their use of the configured payment service complies with applicable laws, contractual requirements and payment-card security requirements.

= Security notes =

* Redirect / Hosted Checkout is the recommended mode for most merchants.
* Hosted Checkout is the default payment mode for new installations.
* Card numbers and CVV/CVC are not stored in WordPress order metadata by this plugin.
* Card numbers and CVV/CVC are not written to the plugin diagnostic log.
* In Redirect mode, card details are not collected by the plugin in WordPress.
* Payment callbacks use per-order random callback tokens.
* Asynchronous notification callbacks require a valid gateway signature.
* Callback merchant, gateway, order number, amount and currency are validated before an order is updated.
* Asynchronous notification callbacks accept POST requests only.
* Configured payment endpoints must use public HTTPS URLs.
* Duplicate successful callbacks are handled idempotently through WooCommerce payment status checks.
* Payment requests use the WordPress HTTP API.

== Installation ==

1. Install and activate WooCommerce.
2. Install and activate AcquirerOS Payment Gateway for WooCommerce.
3. Go to WooCommerce > Settings > Payments.
4. Configure and enable AcquirerOS - Credit Card, AcquirerOS - PayPal, AcquirerOS - Apple Pay and/or AcquirerOS - Google Pay.
5. Enter the Merchant Number, Gateway Number and Signature Key for each enabled payment method. Credit Card can use Payment Gateway URL and Hosted Checkout URL; PayPal, Apple Pay and Google Pay use only Hosted Checkout URL.
6. Optionally choose a Payment Method Logo from the WordPress Media Library for each gateway.
7. For Credit Card, choose Redirect / Hosted Checkout (Recommended) or S2S / Direct API (Advanced).
8. Test every enabled payment method before production use.

For production use, verify that payment creation, Hosted Checkout or 3D Secure returns, asynchronous notifications and WooCommerce order status updates are working correctly for your integration.

== Frequently Asked Questions ==

= Can Credit Card, PayPal, Apple Pay and Google Pay be enabled together? =

Yes. Version 2.3.0 registers them as separate WooCommerce payment methods from the same plugin. Each one can be enabled and configured independently.

= Do PayPal, Apple Pay and Google Pay use S2S card fields? =

No. In 2.3.0, PayPal, Apple Pay and Google Pay use Redirect / Hosted Checkout only. Credit Card can use Hosted Checkout or S2S / Direct API.

= Does enabling PayPal, Apple Pay or Google Pay automatically activate those services? =

No. Your AcquirerOS/acquiring configuration must support the selected payment method. Apple Pay and Google Pay may require additional merchant, domain, device, browser or payment-provider configuration.

= How do I add a payment method logo? =

By default no logo is displayed. Upload an image you are authorized to use under Media > Add New, then open WooCommerce > Settings > Payments, select the AcquirerOS gateway, and use Payment Method Logo > Select Image. The image is stored in the merchant's WordPress Media Library and displayed next to that payment method at checkout. The AcquirerOS plugin does not bundle Visa, Mastercard, PayPal, Apple Pay, Google Pay or other third-party brand artwork.

= Can the Hosted Checkout notice be customized? =


= Can the checkout description contain text and images? =

Yes. Checkout description is empty by default. Merchants can add formatted text, links and images selected from the WordPress Media Library. The content is sanitized with WordPress allowed post HTML before it is displayed at checkout.

= Which payment mode should I use? =

Redirect / Hosted Checkout is recommended for most merchants because card details are entered on the hosted payment page rather than directly in WordPress.

S2S / Direct API should only be enabled when your organization, payment provider and compliance environment are prepared for the additional cardholder-data security requirements.

= Does the plugin store card numbers or CVV/CVC? =

No. The plugin does not save card numbers or CVV/CVC to WordPress order metadata or its diagnostic logs.

In Redirect / Hosted Checkout mode, card details are not collected by the plugin in WordPress.

In S2S / Direct API mode, card details are used to create the payment request and are transmitted to the configured payment endpoint, but they are not stored in WordPress order metadata by this plugin.

= Does it support WooCommerce Checkout Block? =

Yes. AcquirerOS supports the WooCommerce Checkout Block as well as classic WooCommerce checkout.

= Is HPOS supported? =

Yes. The plugin uses WooCommerce order APIs and declares compatibility with High-Performance Order Storage (HPOS).

= Does it support 3D Secure? =

The plugin supports payment flows that return customers to WooCommerce after 3D Secure authentication when this is required by the configured payment service.

Actual 3D Secure availability and behavior depend on your AcquirerOS merchant configuration and payment provider.

= Does it support payment notifications? =

Yes. The plugin supports asynchronous payment notifications through WooCommerce callback endpoints.

Notification requests are validated before the corresponding WooCommerce order is updated.

= Where are diagnostic logs? =

When diagnostic logging is enabled, logs are available under WooCommerce > Status > Logs using the AcquirerOS gateway log source.

Diagnostic logs are intended for troubleshooting and do not include card numbers or CVV/CVC.

= Where do I get my AcquirerOS credentials? =

Your payment credentials and endpoint information are provided as part of your AcquirerOS merchant integration.

For more information, visit:
https://acquireros.com/

== Changelog ==

= 2.3.5 =
* Restored full legacy request-parameter parity for Credit Card S2S and Hosted Checkout requests.
* Restored actual browser resolution, color depth and timezone capture in classic checkout.
* Verified the S2S and Redirect payload key sets against the reviewed 2.2.0 implementation.
* Moved Credit Card S2S Checkout description below the card input fields.
* Styled Checkout description images as compact inline images so text and images can appear together.
* Fixed rich Checkout description rendering in classic WooCommerce checkout.
* Checkout description text, links and Media Library images now render before the gateway fields.
* Checkout description is empty by default for Credit Card, PayPal, Apple Pay and Google Pay.
* Checkout description now supports sanitized text, links and images selected from the WordPress Media Library.
* Fixed WordPress Plugin Check internationalization warning for translated placeholders.
* Updated gateway class names to use the AcquirerOS prefix while preserving backward-compatible aliases.
* Documented WooCommerce checkout nonce handling for checkout-field repopulation.
* Changed default Checkout Description values to empty for Credit Card, PayPal, Apple Pay and Google Pay.


= 2.3.4 =
* Removed the Payment Method Code setting and stopped sending the custom `paymentMethod` request parameter.
* Fixed classic checkout so PayPal, Apple Pay and Google Pay never inherit or display Credit Card S2S fields.
* Restricted card number, expiry and security-code fields to the Credit Card gateway when S2S / Direct API mode is selected.


= 2.3.3 =
* Removed the remaining hardcoded Redirect / Hosted Checkout message from classic WooCommerce checkout.


= 2.3.2 =
* Removed the hardcoded Hosted Checkout redirect message from checkout.


= 2.3.1 =
* Simplified PayPal, Apple Pay and Google Pay configuration to a single Hosted Checkout URL.
* Kept both Payment Gateway URL and Hosted Checkout URL for Credit Card.
* Prevented redirect-only gateways from falling back to a hidden legacy Payment Gateway URL.
* Preserved independent merchant credentials and optional Media Library logo configuration for all gateways.


= 2.3.0 =
* Added Multi-Gateway support from a single plugin.
* Added independent AcquirerOS - Credit Card, AcquirerOS - PayPal, AcquirerOS - Apple Pay and AcquirerOS - Google Pay payment methods.
* Preserved the original Credit Card gateway ID and settings for backwards compatibility.
* Added independent credentials, gateway number, endpoints settings for PayPal, Apple Pay and Google Pay.
* Restricted PayPal, Apple Pay and Google Pay to Redirect / Hosted Checkout mode.
* Added dynamic callback endpoints for each gateway.
* Added WooCommerce Checkout Block support for all four gateways.
* Added an optional per-gateway Payment Method Logo selected from the WordPress Media Library.
* No third-party payment-brand artwork is bundled with the plugin.


= 2.2.0 =
* Made Redirect / Hosted Checkout the recommended default for new installations.
* Kept S2S / Direct API available as an advanced payment mode.
* Added WooCommerce Checkout Block support improvements.
* Moved checkout behavior to a properly enqueued static JavaScript file for WooCommerce AJAX compatibility.
* Added an administrator notice explaining Hosted Checkout and S2S card-data scope.
* Added WordPress privacy-policy suggested text.
* Hardened payment callbacks by validating HTTP method, merchant number, gateway number, order number, amount and currency before updating orders.
* Required POST requests for asynchronous notification callbacks.
* Added per-order callback tokens and gateway signature validation.
* Improved duplicate callback handling through WooCommerce payment status checks.
* Hardened configured payment endpoint validation.
* Continued to use the WordPress HTTP API for payment requests.
* Improved diagnostic HTTP status logging without logging card numbers or CVV/CVC.
* Updated external-service, security and installation documentation.

= 2.1.1 =
* Added production dual-mode checkout with S2S / Direct API and Redirect / Hosted Checkout.
* Aligned Hosted Checkout request and signature behavior with the existing Hosted Checkout integration.
* Added unique payment order numbers and goods numbers for retry safety.
* Added tokenized WooCommerce API return and notification callbacks.
* Added callback signature verification.

= 2.1.0 =
* Added S2S / Direct API and Redirect / Hosted Checkout payment modes.

= 2.0.0 =
* Rebranded the plugin for AcquirerOS.
* Added WooCommerce Checkout Block and HPOS compatibility.
* Replaced direct cURL usage with the WordPress HTTP API.
* Replaced direct PHP callback execution with WooCommerce API endpoints.
* Added per-order callback tokens and safer diagnostic logging.

== Upgrade Notice ==

= 2.3.5 =


= 2.3.4 =
Removes Payment Method Code and fixes redirect-only gateway UI isolation. PayPal, Apple Pay and Google Pay now display only their own checkout content and never show Credit Card S2S fields.


= 2.3.3 =


= 2.3.2 =


= 2.3.1 =
PayPal, Apple Pay and Google Pay now use only their Hosted Checkout URL setting. Review the Hosted Checkout URL for each enabled redirect-only gateway after upgrading.


= 2.3.0 =
Adds optional PayPal, Apple Pay and Google Pay gateways alongside the existing Credit Card gateway. Existing Credit Card settings remain available under the original gateway ID. Configure and test each newly enabled payment method separately before production use.


= 2.2.0 =
Redirect / Hosted Checkout is the recommended default for new installations. Existing AcquirerOS installations retain their saved payment mode. Test payment creation, payment returns and asynchronous callbacks in a staging environment before production deployment.
