2026.10.14 – version 32.2.0
* DEV: The package published on WooCommerce.com no longer includes the license and update client used by copies bought at plugins.joseconti.com (it was never loaded there). The plugin loads it only when the file is present.
* DEV: Added phpstan.neon (bundled third-party libraries excluded, baseline of existing findings) so static analysis reports only new problems.
* FIX: InSite: the “Language Gateway” setting was ignored, so the card fields (placeholders and button) were always shown in Spanish. The chosen language is now sent to Redsys in the classic checkout and in the Checkout Block.
* NEW: Filter redsys_insite_form_language, to choose the language of the InSite card form from code (for example, one per site language).
* FIX: Updating with UCP enabled ended in a “critical error” (Call to a member function using_index_permalinks() on null) on the first page load after the update. The public UCP discovery file is now rewritten once WordPress has finished loading.
* FIX: Expired saved cards: the scheduled tasks that warn the customer and remove expired cards failed with a database error (“You have an error in your SQL syntax”) and never did anything. They now work, remove cards that expired in an earlier year too, and only touch cards saved by this plugin.
* FIX: Customers with more than 10 saved cards: subscription renewals and the Immediate Redsys Charge could use an older card instead of the newest one, a card already saved could be saved again, and the classic checkout did not list the newest cards. The plugin now reads all the Redsys cards of the customer for its own decisions.