=== Digital Apps Payments for Adyen ===
Contributors: digitalapps
Tags: adyen, woocommerce, payments, credit cards, payment gateway
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.7
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Add an Adyen Web Card gateway to WooCommerce Classic Checkout and Checkout Blocks.

== Description ==

[Digital Apps Payments for Adyen](https://digitalapps.com/wordpress-plugins/wp-adyen-payments/) connects your WooCommerce store to Adyen so customers can pay by credit or debit card at checkout.

Connect your existing Adyen merchant account and configure separate Test and Live credentials. The Card integration is designed for classic WooCommerce checkout and Checkout Blocks, Adyen Web actions including 3D Secure, automatic capture, manual full capture, refunds, cancellation or reversal, and signed Standard webhooks.

Before production use, validate every enabled checkout and modification flow in your own Adyen Test account, complete Adyen's go-live requirements, and configure the account-specific Live URL prefix supplied by Adyen.

Developed and supported by [Digital Apps](https://digitalapps.com/).

= What you can do with the free plugin =

* Credit and debit card payments through Adyen.
* Card payments in classic WooCommerce checkout and Checkout Blocks.
* Adyen Web action handling for fingerprint, challenge, and redirect authentication.
* Automatic capture, or manual full capture from the WooCommerce order.
* Full and partial refund requests with asynchronous webhook reconciliation.
* Cancellation of uncaptured authorisations and race-safe cancel-or-refund reversal.
* Durable order updates from HMAC-verified Adyen Standard webhook notifications.
* WooCommerce diagnostic logs that omit sensitive values.

= Digital Apps Payments Pro for Adyen =

Take your Adyen checkout further with [Digital Apps Payments Pro for Adyen](https://digitalapps.com/wordpress-plugins/wp-adyen-payments/). This separately installed add-on gives you more control over order references and more ways for customers to pay.

Pro includes:

* **Custom order references** - Add your own prefix and use `{orderID}` and `{date}` placeholders, such as `STORE-{orderID}-{date}`.
* **Digital wallets** - Google Pay and PayPal.
* **Bank-based payments** - iDEAL, Bancontact, SEPA Direct Debit, and Sofort.
* **Buy now, pay later** - Klarna and Afterpay.
* **Regional payment methods** - Alipay, WeChat Pay, and Pix.

The Pro add-on requires this free plugin. All Card features listed above are included in the free plugin and do not require Pro or a Digital Apps license. Pro payment methods are separate integrations and are not covered by the Free Card readiness and test evidence described here.

= Technical details =

The plugin uses the bundled Adyen Web Card component to display secure card fields, encrypt payment details, and handle supported Adyen Web actions. Signed webhook events are durably stored, deduplicated, and processed asynchronously before they update WooCommerce orders. Diagnostic events use the WooCommerce logger and redact sensitive values.

= Human-readable JavaScript source =

The unminified Free JavaScript source and reproducible build files for the bundled browser assets are included in the plugin's `source` directory. See `source/README.md` for the exact build commands.

== External services ==

= Optional deactivation feedback =

When you choose "Send feedback and deactivate" on the Plugins screen, your site emails your selected reason, optional comment, and plugin version to support@digitalapps.com. Digital Apps uses this feedback to improve the plugin. Every reason offers an optional follow-up question. You can skip the survey or cancel without sending feedback.

The email uses your site's configured WordPress mail service. Standard email headers, including the sender address and mail-server information, may identify your site or sending server. The plugin does not automatically attach your administrator email, site URL, settings, credentials, logs, order data, or customer data to the feedback. Do not include sensitive information in your comment. The plugin does not store the feedback text locally; your mail provider or other mail plugins may retain email records. Delivery depends on your site's mail configuration, and failure does not prevent deactivation.

This optional feedback service is provided by Digital Apps:

* Service: [Digital Apps](https://digitalapps.com/)
* Terms: [Digital Apps terms and conditions](https://digitalapps.com/terms-and-conditions/)
* Privacy policy: [Digital Apps privacy policy](https://digitalapps.com/privacy-policy/)

= Adyen =

An Adyen merchant account is required because Adyen processes the payments accepted through this plugin.

When a customer views or uses the Card gateway, the bundled Adyen Web component communicates with Adyen to render secure card fields, encrypt card details, identify supported card brands, and perform authentication when required. When the customer submits an order, the plugin sends Adyen the order amount and currency, order reference, shopper name, email address, IP address, billing and delivery addresses, encrypted card data, browser information, site origin, country, locale, and return URL. The plugin also sends payment capture, cancellation, and refund requests when an authorised administrator performs those actions. Adyen sends payment status and modification events back to the configured webhook endpoint.

This service is provided by Adyen:

* Service: [Adyen](https://www.adyen.com/)
* Terms: [Adyen terms and conditions](https://www.adyen.com/legal/terms-and-conditions)
* Privacy policy: [Adyen privacy policy](https://www.adyen.com/privacy-policy)

= Click to Pay support in Adyen Web =

The bundled Adyen Web Card component contains optional Click to Pay support and references Mastercard SRC SDK endpoints at `src.mastercard.com` and `sandbox.src.mastercard.com`, and Visa Click to Pay endpoints at `assets.secure.checkout.visa.com` and `sandbox-assets.secure.checkout.visa.com`. This plugin does not configure or advertise Click to Pay itself. If a merchant enables and configures Click to Pay through Adyen, the Adyen Card component may contact Mastercard or Visa when the Card component loads and when a shopper chooses or authenticates with Click to Pay. Depending on the shopper's Click to Pay profile and choices, Mastercard or Visa may process device and browser identifiers, email address, telephone number, billing or shipping information, and tokenized card or payment-profile information to recognise the shopper, authenticate the profile, and return the selected payment credentials.

This optional service is provided by Mastercard:

* Service: [Mastercard Click to Pay](https://www.mastercard.com/us/en/personal/ways-to-pay/click-to-pay.html)
* Terms: [Mastercard Click to Pay terms of use](https://www.mastercard.com/global/click-to-pay/en-us/terms-of-use.html)
* Privacy notice: [Mastercard Click to Pay privacy notice](https://www.mastercard.com/global/click-to-pay/en-us/privacy-notice.html)

Visa also provides optional Click to Pay services:

* Service: [Visa Click to Pay](https://usa.visa.com/pay-with-visa/checkout.html)
* Terms: [Visa Click to Pay terms of service](https://usa.visa.com/legal/checkout/terms-of-service.html)
* Privacy notice: [Visa global privacy notice](https://usa.visa.com/legal/global-privacy-notice.html)

== Installation ==

1. Install and activate WooCommerce.
2. Install and activate Digital Apps Payments for Adyen.
3. Open Digital Apps Payments in WordPress administration.
4. Configure the Adyen merchant account, API key, client key, and environment.
5. Configure the generated webhook URL and HMAC key in Adyen Customer Area.
6. Enable the Adyen Card gateway in WooCommerce payment settings.

== Frequently Asked Questions ==

= Does Free require a license? =

No. Free Card payments do not use the Digital Apps licensing service.

= What does the separate Pro add-on include? =

The separately installed [Pro add-on](https://digitalapps.com/wordpress-plugins/wp-adyen-payments/) adds custom order-reference formats and the additional payment methods listed in the Pro section above. The free card payment features do not require Pro.

= What happens if the WordPress security salts are rotated? =

Encrypted credentials depend on the site's WordPress salts. If the salts are deliberately rotated, re-enter the Adyen API key, HMAC key, and webhook Basic Auth password in the plugin settings. Save the Webhooks settings to generate a new endpoint token, then update the webhook URL in Adyen Customer Area.

== Changelog ==

= 1.0.7 =

* Improved Card form styling in Classic Checkout and Checkout Blocks.
* Added optional deactivation feedback with a follow-up comment for each reason.

= 1.0.6 =

* Clarified WooCommerce gateway activation with a direct link to the Payments settings.

= 1.0.5 =

* Added account-specific Live Checkout URL prefix validation and separate Test and Live credentials.
* Added stable persistent POST idempotency.
* Completed the shared Card action/details lifecycle for Classic Checkout and Checkout Blocks.
* Added durable webhook ingestion, reference-safe correlation, ordering guards, retries, and dead-letter state.
* Added webhook-finalized capture, refund, cancellation, and reversal reconciliation.
* Added UTM campaign tracking to the Plugins-screen Pro upgrade link.

= 1.0.4 =

* Added an Upgrade to Pro action link on the WordPress Plugins screen.
* Expanded the Click to Pay external-service disclosure for the bundled Adyen Web Card component.

= 1.0.3 =

* Added Test and Live readiness summaries and saved-credential connection checks.
* Improved webhook configuration and moved diagnostics into WooCommerce logs.
* Encrypted sensitive credentials at rest and reduced automatic option loading.
* Fixed connection errors being reported as unavailable card payments.

= 1.0.2 =
* Improved Free and Pro package separation and release validation.

= 1.0.1 =

* Fixed the admin settings and diagnostic log requests so they use the WordPress REST API root correctly.

= 1.0.0 =

* Split the independently useful Card gateway into Free.
* Added extension contracts for the separately installed Pro add-on.
* Added automatic capture and a manual full-capture workflow to Free.
* Documented all external services and their data use.
* Namespaced plugin-owned functions, options, hooks, routes, gateway IDs, and assets with the unique Digital Apps Payments for Adyen prefix.
