Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Release: Opensolr Search 4.5.0 Minor update available for module opensolr_search (4.5.0). Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Usage Milestone: Views Reference Filter Module entityreference_filter crossed 10,000 active installs. Usage Milestone: Dropdown Language Module dropdown_language crossed 10,000 active installs. Usage Milestone: Paragraphs Browser Module paragraphs_browser crossed 10,000 active installs. Usage Milestone: OpenAPI Module openapi crossed 10,000 active installs. Usage Milestone: Decoupled Router Module decoupled_router crossed 10,000 active installs. Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Redsys payment module

45 sites Security covered Drupal 10–11
View on drupal.org

This module provides a way to accept payments through RedSys, a common payment processor in Spain, without needing a full e-commerce setup. It can be used for donations, invoices, or integrated with Drupal Commerce as an optional payment gateway.

Redsys payment provides off-site Redsys payments for Drupal sites, with signed requests and authenticated callback processing. The base module can accept standalone payments without requiring Drupal Commerce.

For standalone payments, customers enter an amount, email address, payment description, and payment method in a configurable Drupal block. They are then redirected to the Redsys hosted payment page, so Drupal does not collect card or wallet credentials.

Typical uses include donations, invoice payments, fees, and other one-time payments.

Features

  • Standalone payment form provided as a Drupal block.
  • Fixed-amount, token-protected payment requests with optional expiration, configurable payment methods, safe retries, and complete attempt history.
  • Card, Bizum, PayPal, and xPay (Apple Pay or Google Pay).
  • Test and production environments.
  • HMAC SHA-512 V2 signatures, with HMAC SHA-256 V1 available for legacy terminals.
  • Merchant secrets managed through the Key module.
  • Validation of callback signatures and immutable transaction data.
  • Idempotent processing of repeated Redsys notifications.
  • Persistent payment records with permission-protected administration pages.
  • Customer and administrator email after a payment is confirmed.
  • Token-protected payment result pages.
  • Optional Webform payment handler.
  • Optional Drupal Commerce payment gateways.

Payment methods such as Bizum, PayPal, Apple Pay, and Google Pay must be enabled for the merchant terminal by the bank or Redsys.

Payment requests

Administrators can create fixed-amount payment links at
`/admin/content/redsys-payment-requests`. Each request has an immutable amount
and concept, one or more allowed payment methods, an optional payer email, and
an optional expiration date.

Pending requests can be duplicated or canceled. Only one payment attempt can be active at a time. Rejected or canceled attempts can be retried, while a confirmed payment permanently closes the request. Every attempt remains available in the Redsys payment audit log.

Webform integration

Enable `redsys_button_webform` and add the Redsys payment handler under
Settings > Emails / Handlers. Map existing Webform elements for the amount, email, description, and optional payment-result values.

The submission remains a draft until an authenticated Redsys notification confirms the payment.

Drupal Commerce integration

Enable `commerce_redsys_button`, then create and configure one of the available off-site payment gateways:

  • Redsys card
  • Redsys Bizum
  • Redsys PayPal
  • Redsys xPay

Credentials are configured per Commerce gateway. Commerce payments currently support EUR, USD, and GBP.

Requirements

  • Drupal 10.3 or Drupal 11
  • PHP 8.1 or newer
  • Key 1.22 or newer
  • A Redsys merchant account
  • HTTPS in production
  • Webform 6.3 for the optional Webform integration
  • Drupal Commerce 3 for the optional Commerce integration

Installation

Install the module with Composer:

`composer require drupal/redsys_button`

Create an authentication key under `/admin/config/system/keys`, configure Redsys under `/admin/config/system/redsys-settings`, and place the
Redsys payment form block where payments should be accepted.

Use cases


Watch the Redsys payment use cases video on YouTube

Depends on

Dependencies of the latest stable release

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
5
Tracked since
Jan 2025
Latest release
2 weeks ago
Releases (12 mo)
4 ▲ from 1
Maintenance
Active

Release Timeline

Releases

Version Type Core Release date
2.1.2 Stable 10–11 Aug 14, 2026
2.1.1 Stable 10–11 Aug 14, 2026
2.1.0 Stable 10–11 Aug 14, 2026
2.0.0 Stable 10–11 Aug 13, 2026
1.0.2 Stable 9–11 Jan 21, 2025