Portal de Desarrolladores

WooCommerce Redsys Hooks 114 hooks

Actions y filters para personalizar cada aspecto del flujo de pago de Redsys en WooCommerce — sin necesidad de bifurcar el plugin.

0 hooks mostrados

Ciclo de vida del pago 13

redsys_post_payment_completeAction

Se dispara después de que la pasarela principal de Redsys (redirección / tarjeta de crédito) haya confirmado un pago correcto y el pedido se haya marcado como pagado. Úsalo para desencadenar la preparación del pedido, sincronizar sistemas externos o enviar notificaciones personalizadas una vez que el pago es definitivo. Se dispara desde muchas rutas de código (pago estándar, pago tokenizado, captura de preautorización, suscripciones, etc.).

Parámetros
NombreTipoDescripcion
$order_idintEl id de pedido de WooCommerce ($order->get_id()).

Fuente: classes/class-wc-gateway-redsys.php:3699 (y muchas otras ubicaciones en el mismo archivo).

PHP
add_action( 'redsys_post_payment_complete', 'my_redsys_payment_complete', 10, 1 );
function my_redsys_payment_complete( $order_id ) {
    $order = wc_get_order( $order_id );
    // Trigger your own fulfilment / CRM sync here.
    error_log( 'Redsys payment complete for order ' . $order_id );
}
redsys_post_payment_errorAction

Se dispara cada vez que la pasarela de Redsys aborta o rechaza un pago (firma no coincidente, transacción denegada, tarjeta bloqueada, autorización ausente, etc.). El segundo argumento contiene el mensaje o motivo del error. Úsalo para alertas, registro en un monitor externo o flujos de recuperación personalizados.

Parámetros
NombreTipoDescripcion
$order_idintEl id de pedido de WooCommerce.
$errorstringUn mensaje o motivo de error legible que describe el fallo.

Fuente: classes/class-wc-gateway-redsys.php:3357 (y muchas otras ubicaciones en las clases de pasarela).

PHP
add_action( 'redsys_post_payment_error', 'my_redsys_payment_error', 10, 2 );
function my_redsys_payment_error( $order_id, $error ) {
    error_log( sprintf( 'Redsys error on order %d: %s', $order_id, $error ) );
}
redsys_post_authorizationAction

Se dispara después de que se confirme una preautorización (retención solo de autorización) para un pedido, antes de capturar los fondos. Úsalo para reaccionar a autorizaciones retenidas, por ejemplo para registrar el importe reservado o avisar al personal de que hay una captura pendiente.

Parámetros
NombreTipoDescripcion
$order_idintEl id de pedido de WooCommerce.
$amountmixedEl importe autorizado.

Fuente: classes/class-wc-gateway-redsys.php:9076.

PHP
add_action( 'redsys_post_authorization', 'my_redsys_authorization', 10, 2 );
function my_redsys_authorization( $order_id, $amount ) {
    error_log( sprintf( 'Authorization held for order %d, amount %s', $order_id, $amount ) );
}
redsys_post_refundAction

Se dispara después de que un reembolso se haya procesado correctamente a través de Redsys para un pedido. Úsalo para mantener sincronizados los sistemas externos de contabilidad o ERP con los reembolsos emitidos desde WooCommerce.

Parámetros
NombreTipoDescripcion
$order_idintEl id de pedido de WooCommerce.
$amountmixedEl importe reembolsado.
$reasonstringEl motivo del reembolso tal como se introdujo en WooCommerce.

Fuente: classes/class-wc-gateway-redsys.php:9786.

PHP
add_action( 'redsys_post_refund', 'my_redsys_refund', 10, 3 );
function my_redsys_refund( $order_id, $amount, $reason ) {
    error_log( sprintf( 'Refunded %s on order %d (%s)', $amount, $order_id, $reason ) );
}
{gateway_id}_post_payment_completeAction

Equivalente por pasarela de redsys_post_payment_complete. Cada pasarela sin redirección dispara su propia action para que puedas engancharte solo al método de pago que te interese. El nombre del hook se construye a partir del id de la pasarela, por ejemplo bizum_post_payment_complete o insite_post_payment_complete.

Nombres de hook concretos encontrados en el código fuente:

  • bizum_post_payment_complete (Bizum redirección y Bizum checkout)
  • directdeb_post_payment_complete (Domiciliación bancaria)
  • imap_post_payment_complete (conciliación bancaria IMAP)
  • inespay_post_payment_complete (inespay)
  • insite_post_payment_complete (inSite)
  • masterpass_post_payment_complete (MasterPass)
  • paygold_post_payment_complete (Paygold)
  • redsysbanktransfer_post_payment_complete (Transferencia bancaria)
  • Construido dinámicamente a partir de $this->id en Apple Pay y Google Pay (checkout / redirección / soporte de bloques), resolviéndose en applepayredsys_post_payment_complete, googlepayredsys_post_payment_complete y googlepayredirecredsys_post_payment_complete.
Parámetros
NombreTipoDescripcion
$order_idintEl id de pedido de WooCommerce.

Fuente: classes/class-wc-gateway-bizum-redsys.php:1515 (y llamadas equivalentes en cada clase de pasarela).

PHP
// React only to successful Bizum payments.
add_action( 'bizum_post_payment_complete', 'my_bizum_complete', 10, 1 );
function my_bizum_complete( $order_id ) {
    // Custom logic for Bizum-paid orders.
}
{gateway_id}_post_payment_errorAction

Equivalente por pasarela de redsys_post_payment_error. Cada pasarela sin redirección dispara su propia action de error. El nombre del hook se construye a partir del id de la pasarela, por ejemplo bizum_post_payment_error o insite_post_payment_error.

Nombres de hook concretos encontrados en el código fuente:

  • bizum_post_payment_error
  • directdeb_post_payment_error
  • insite_post_payment_error
  • masterpass_post_payment_error
  • paygold_post_payment_error
  • Construido dinámicamente a partir de $this->id en Apple Pay y Google Pay, resolviéndose en applepayredsys_post_payment_error, googlepayredsys_post_payment_error y googlepayredirecredsys_post_payment_error.
Parámetros
NombreTipoDescripcion
$order_idintEl id de pedido de WooCommerce.
$errorstringUn mensaje o motivo de error legible.

Fuente: classes/class-wc-gateway-bizum-redsys.php:1557 (y llamadas equivalentes en cada clase de pasarela).

PHP
add_action( 'insite_post_payment_error', 'my_insite_error', 10, 2 );
function my_insite_error( $order_id, $error ) {
    error_log( sprintf( 'inSite error on order %d: %s', $order_id, $error ) );
}
redsys_payment_fieldsAction

Se dispara dentro de la salida de payment_fields() de la pasarela principal de Redsys, en el punto donde se renderizan la descripción del método de pago del checkout y la interfaz de tarjetas guardadas. Úsalo para imprimir contenido extra (avisos, campos personalizados, sellos de confianza) dentro del área de pago de Redsys en el checkout clásico.

Fuente: classes/class-wc-gateway-redsys.php:5591.

PHP
add_action( 'redsys_payment_fields', 'my_redsys_extra_fields' );
function my_redsys_extra_fields() {
    echo '<p class="redsys-notice">' . esc_html__( 'Secure payment by card.', 'my-textdomain' ) . '</p>';
}
redsys_allow_preauthFilter

Filtra si una pasarela dada debe seguir estando disponible cuando el carrito contiene un producto marcado para preautorización. Por defecto solo sobreviven las pasarelas que declaran supports( 'redsys_preauth' ); devuelve un valor verdadero para forzar la disponibilidad de un id de pasarela concreto. Ten en cuenta que el valor que se pasa como primer argumento es el id de la pasarela (string), y el valor devuelto por la callback se evalúa como booleano.

Parámetros
NombreTipoDescripcion
$gateway_idstringEl id de la pasarela que se está evaluando. Devuelve true para mantener esta pasarela disponible para carritos de preautorización, o false para dejar el comportamiento por defecto.
$defaultboolLa decisión por defecto (false).

Fuente: classes/class-wc-gateway-redsys-global.php:4233.

PHP
add_filter( 'redsys_allow_preauth', 'my_allow_preauth', 10, 2 );
function my_allow_preauth( $gateway_id, $default ) {
    if ( 'bizumredsys' === $gateway_id ) {
        return true; // Allow Bizum on pre-auth carts.
    }
    return $default;
}
redsys_allow_token_rFilter

Filtra si una pasarela dada debe seguir estando disponible cuando el carrito requiere tokenización (recurrente / tarjeta guardada). Por defecto solo sobreviven las pasarelas que declaran supports( 'redsys_token_r' ); devuelve un valor verdadero para forzar la disponibilidad de un id de pasarela concreto.

Parámetros
NombreTipoDescripcion
$gateway_idstringEl id de la pasarela que se está evaluando. Devuelve true para mantener esta pasarela disponible para carritos de tokenización.
$defaultboolLa decisión por defecto (false).

Fuente: classes/class-wc-gateway-redsys-global.php:4255.

PHP
add_filter( 'redsys_allow_token_r', 'my_allow_token_r', 10, 2 );
function my_allow_token_r( $gateway_id, $default ) {
    return ( 'insite' === $gateway_id ) ? true : $default;
}
redsys_status_pendingFilter

Filtra el estado de pedido usado cuando un pago de Redsys queda en estado pendiente (por ejemplo, a la espera de confirmación). Devuelve un slug de estado de WooCommerce distinto para anular el estado pendiente por defecto aplicado a dichos pedidos.

Parámetros
NombreTipoDescripcion
$statusstringEl slug de estado pendiente que se va a aplicar. Devuelve el estado (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys-global.php:2030.

PHP
add_filter( 'redsys_status_pending', 'my_pending_status', 10, 1 );
function my_pending_status( $status ) {
    return 'on-hold';
}
redsys_order_numberFilter

Filtra el número de transacción / pedido enviado a Redsys para un pedido. Redsys exige una referencia de pedido numérica con un formato estricto; usa este filtro si necesitas personalizar cómo se genera la referencia (por ejemplo, para integrarlo con un plugin de numeración secuencial de facturas).

Parámetros
NombreTipoDescripcion
$transaction_id2stringEl número de pedido de Redsys calculado. Devuelve el número de pedido (posiblemente modificado).
$order_idintEl id de pedido de WooCommerce.
$gatewayobjectLa instancia de la pasarela que genera la referencia.

Fuente: classes/class-wc-gateway-redsys-global.php:2406.

PHP
add_filter( 'redsys_order_number', 'my_order_number', 10, 3 );
function my_order_number( $transaction_id2, $order_id, $gateway ) {
    // Keep Redsys formatting rules in mind (numeric, length limits).
    return $transaction_id2;
}
redsys_product_descriptionFilter

Filtra la cadena de descripción del producto (Ds_Merchant_ProductDescription) enviada a Redsys para un pedido. Útil para personalizar lo que aparece en el terminal del banco / extracto del titular de la tarjeta.

Parámetros
NombreTipoDescripcion
$descriptionstringLa descripción del producto. Devuelve la descripción (posiblemente modificada).
$orderWC_OrderEl objeto del pedido.

Fuente: classes/class-wc-gateway-redsys-global.php:2483.

PHP
add_filter( 'redsys_product_description', 'my_product_description', 10, 2 );
function my_product_description( $description, $order ) {
    return 'My Store order #' . $order->get_order_number();
}
redsys_refund_filterFilter

Filtra el array de argumentos ensamblado antes de enviar una solicitud de reembolso a Redsys. Úsalo para inspeccionar o ajustar el payload del reembolso.

Parámetros
NombreTipoDescripcion
$arrayarrayLos datos de la solicitud de reembolso. Devuelve el array (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys.php:10524.

PHP
add_filter( 'redsys_refund_filter', 'my_refund_filter', 10, 1 );
function my_refund_filter( $array ) {
    // Inspect or tweak refund data before it is sent.
    return $array;
}

IPN / notificaciones 3

valid_{gateway_id}_standard_ipn_requestAction

Se dispara cuando se ha recibido y verificado una IPN válida (Instant Payment Notification, la callback asíncrona servidor a servidor de Redsys) para una pasarela. El nombre del hook se construye dinámicamente a partir del id de la pasarela, por lo que se resuelve en nombres como valid_insite_standard_ipn_request, valid_bizumredsys_standard_ipn_request, valid_paygold_standard_ipn_request, valid_directdebitredsys_standard_ipn_request, valid_masterpass_standard_ipn_request, y las variantes de Apple Pay / Google Pay. Se pasa el payload de notificación en bruto ($_POST) para que puedas realizar tu propio procesamiento en cada IPN verificada.

Parámetros
NombreTipoDescripcion
$postarrayEl array $_POST en bruto recibido de Redsys para la notificación verificada.

Fuente: classes/class-wc-gateway-insite-redsys.php:9346 (y llamadas equivalentes en cada clase de pasarela).

PHP
add_action( 'valid_insite_standard_ipn_request', 'my_insite_ipn', 10, 1 );
function my_insite_ipn( $post ) {
    // $post contains the verified Redsys notification fields.
    error_log( 'inSite IPN received: ' . wp_json_encode( $post ) );
}
valid-redsys-standard-ipn-requestAction

Se dispara cuando se ha recibido y verificado una IPN válida para la pasarela principal de Redsys (redirección / tarjeta de crédito). Ten en cuenta que este nombre de hook concreto usa guiones, a diferencia de las variantes dinámicas basadas en guiones bajos anteriores.

Parámetros
NombreTipoDescripcion
$postarrayEl array $_POST en bruto recibido de Redsys.

Fuente: classes/class-wc-gateway-redsys.php:7888.

PHP
add_action( 'valid-redsys-standard-ipn-request', 'my_redsys_ipn', 10, 1 );
function my_redsys_ipn( $post ) {
    error_log( 'Redsys IPN received' );
}
valid_redsysbank_standard_ipn_requestAction

Se dispara cuando se ha recibido y verificado una IPN válida para la pasarela de Transferencia bancaria de Redsys (redsysbank).

Parámetros
NombreTipoDescripcion
$postarrayEl array $_POST en bruto recibido de Redsys.

Fuente: classes/class-wc-gateway-redsys-bank-transfer.php:786.

PHP
add_action( 'valid_redsysbank_standard_ipn_request', 'my_bank_ipn', 10, 1 );
function my_bank_ipn( $post ) {
    // Custom handling for bank-transfer notifications.
}

Iconos y argumentos de pasarela 10

woocommerce_redsys_iconFilter

Filtra la URL del icono (logo) que se muestra junto a la pasarela principal de Redsys (tarjeta de crédito) en el checkout, incluido el checkout de WooCommerce Blocks.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-wc-gateway-redsys.php:521 (y 1 ubicación más, además de la clase de soporte de bloques).

PHP
add_filter( 'woocommerce_redsys_icon', 'my_redsys_icon', 10, 1 );
function my_redsys_icon( $logo_url ) {
    return 'https://example.com/wp-content/uploads/my-card-logo.svg';
}
woocommerce_insite_iconFilter

Filtra la URL del icono (logo) que se muestra para la pasarela inSite (formulario de tarjeta embebido), tanto en el checkout clásico como en el de bloques.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-wc-gateway-insite-redsys.php:413 (y otras ubicaciones incluyendo la clase de soporte de bloques).

PHP
add_filter( 'woocommerce_insite_icon', 'my_insite_icon', 10, 1 );
function my_insite_icon( $logo_url ) {
    return $logo_url; // or your own URL
}
woocommerce_masterpass_iconFilter

Filtra la URL del icono (logo) que se muestra para la pasarela MasterPass.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-wc-gateway-masterpass-redsys.php:231 (y otras ubicaciones incluyendo la clase de soporte de bloques).

PHP
add_filter( 'woocommerce_masterpass_icon', 'my_masterpass_icon', 10, 1 );
function my_masterpass_icon( $logo_url ) {
    return $logo_url;
}
woocommerce_paygold_iconFilter

Filtra la URL del icono (logo) que se muestra para la pasarela Paygold.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-wc-gateway-paygold-redsys.php:295 (y otras ubicaciones incluyendo la clase de soporte de bloques).

PHP
add_filter( 'woocommerce_paygold_icon', 'my_paygold_icon', 10, 1 );
function my_paygold_icon( $logo_url ) {
    return $logo_url;
}
woocommerce_bizumcheckout_iconFilter

Filtra la URL del icono (logo) que se muestra para la pasarela Bizum checkout (en línea) en la capa de soporte del checkout de WooCommerce Blocks.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: includes/blocks/class-wc-gateway-bizumcheckout-support.php:243 (y 1 ubicación más).

PHP
add_filter( 'woocommerce_bizumcheckout_icon', 'my_bizumcheckout_icon', 10, 1 );
function my_bizumcheckout_icon( $logo_url ) {
    return $logo_url;
}
woocommerce_bank_redsys_iconFilter

Filtra la URL del icono (logo) que se muestra para la pasarela de Transferencia bancaria de Redsys, tanto en el checkout clásico como en el de bloques.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-wc-gateway-redsys-bank-transfer.php:262 (y otras ubicaciones incluyendo la clase de soporte de bloques).

PHP
add_filter( 'woocommerce_bank_redsys_icon', 'my_bank_icon', 10, 1 );
function my_bank_icon( $logo_url ) {
    return $logo_url;
}
woocommerce_{gateway_id}_iconFilter

Filtro de icono dinámico construido a partir del id de la pasarela. Las clases de pasarela y las clases de soporte de bloques del plugin exponen filtros de icono nombrados según cada id de pasarela, por lo que los nombres concretos incluyen woocommerce_bizumredsys_icon, woocommerce_directdebitredsys_icon, woocommerce_inespayredsys_icon, woocommerce_applepayredsys_icon, woocommerce_googlepayredsys_icon, y woocommerce_googlepayredirecredsys_icon.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: includes/blocks/class-wc-gateway-bizum-support.php:86 (y llamadas equivalentes por pasarela). En varias clases de pasarela el icono dinámico también se dispara mediante la variante woocommerce_{gateway_id}_iconn (ver más abajo).

PHP
add_filter( 'woocommerce_directdebitredsys_icon', 'my_directdebit_icon', 10, 1 );
function my_directdebit_icon( $logo_url ) {
    return $logo_url;
}
woocommerce_{gateway_id}_iconnFilter

Filtro de icono dinámico con una doble n al final, usado dentro de varias clases de pasarela (Bizum, Bizum checkout, Domiciliación bancaria, Apple Pay, Google Pay checkout/redirección). Se documenta tal cual porque existe en el código fuente; se resuelve en nombres como woocommerce_directdebitredsys_iconn, woocommerce_applepayredsys_iconn, woocommerce_googlepayredsys_iconn, etc. La mayor parte del renderizado de iconos en el front-end también expone el correctamente escrito woocommerce_{gateway_id}_icon a través de las clases de soporte de bloques, así que usa preferentemente ese cuando esté disponible.

Parámetros
NombreTipoDescripcion
$logo_urlstringLa URL del icono. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-wc-gateway-direct-debit-redsys.php:255 (y llamadas equivalentes por pasarela).

PHP
add_filter( 'woocommerce_applepayredsys_iconn', 'my_applepay_iconn', 10, 1 );
function my_applepay_iconn( $logo_url ) {
    return $logo_url;
}
woocommerce_redsys_argsFilter

Filtra el array completo de argumentos (los parámetros de la solicitud a Redsys) ensamblado antes de enviar un pago al banco, para las pasarelas que usan el conjunto de argumentos redsys compartido (la pasarela principal, Bizum, Bizum checkout, Transferencia bancaria y Domiciliación bancaria). Úsalo para añadir o sobrescribir parámetros de comercio de Redsys (Ds_Merchant_*).

Parámetros
NombreTipoDescripcion
$redsys_argsarrayLos argumentos de la solicitud a Redsys. Devuelve el array (posiblemente modificado).

Fuente: classes/class-wc-gateway-bizum-redsys.php:990 (y otras ubicaciones incluyendo las clases de pasarela principal, Transferencia bancaria y Domiciliación bancaria).

PHP
add_filter( 'woocommerce_redsys_args', 'my_redsys_args', 10, 1 );
function my_redsys_args( $redsys_args ) {
    // Add or modify Ds_Merchant_* parameters.
    return $redsys_args;
}
woocommerce_{gateway_id}_argsFilter

Versión dinámica del filtro de argumentos de la solicitud, construida a partir del id de la pasarela para las pasarelas que mantienen su propio conjunto de argumentos (MasterPass, Apple Pay checkout, Google Pay checkout, Google Pay redirección). Los nombres concretos incluyen woocommerce_masterpass_args, woocommerce_applepayredsys_args, woocommerce_googlepayredsys_args, y woocommerce_googlepayredirecredsys_args.

Parámetros
NombreTipoDescripcion
$redsys_argsarrayLos argumentos de la solicitud a Redsys. Devuelve el array (posiblemente modificado).

Fuente: classes/class-wc-gateway-apple-pay-checkout.php:1533 (y llamadas equivalentes por pasarela).

PHP
add_filter( 'woocommerce_googlepayredsys_args', 'my_googlepay_args', 10, 1 );
function my_googlepay_args( $redsys_args ) {
    return $redsys_args;
}

Tokenización y Mi Cuenta 8

text_add_card_my_accountFilter

Filtra el texto de la etiqueta de la acción "Añadir tarjeta" presentada a los clientes en el área Mi Cuenta cuando pueden almacenar un nuevo token de tarjeta.

Parámetros
NombreTipoDescripcion
$textstringEl texto del botón/etiqueta. Devuelve el texto (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys.php:5612.

PHP
add_filter( 'text_add_card_my_account', 'my_add_card_text', 10, 1 );
function my_add_card_text( $text ) {
    return __( 'Save a new card', 'my-textdomain' );
}
redsys_text_get_tokenFilter

Filtra el texto que se muestra al cliente ofreciéndole guardar / tokenizar su tarjeta durante el checkout (el texto de "guardar esta tarjeta"). Se aplica en los contextos principal, inSite y de soporte de bloques.

Parámetros
NombreTipoDescripcion
$textstringEl texto del aviso de tokenización. Devuelve el texto (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys.php:5586 (y otras ubicaciones incluyendo las clases inSite y de soporte de bloques).

PHP
add_filter( 'redsys_text_get_token', 'my_get_token_text', 10, 1 );
function my_get_token_text( $text ) {
    return __( 'Remember my card for next time', 'my-textdomain' );
}
redsys_text_preauthFilter

Filtra el texto que se muestra al cliente explicando un cargo de preautorización (solo autorización) en el checkout.

Parámetros
NombreTipoDescripcion
$textstringEl texto explicativo de la preautorización. Devuelve el texto (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys.php:5596 (y otras ubicaciones incluyendo las clases inSite y de soporte de bloques).

PHP
add_filter( 'redsys_text_preauth', 'my_preauth_text', 10, 1 );
function my_preauth_text( $text ) {
    return __( 'Your card will be authorized, not charged, until we ship.', 'my-textdomain' );
}
redsys_disable_remote_token_removalFilter

Desde: 23.0.0

Filtra si el plugin debe omitir la eliminación de un token de tarjeta almacenado en el lado de Redsys cuando llega una notificación inesperada de eliminación de token. Por defecto es true (eliminación remota desactivada) como medida de seguridad mientras se investigan las eliminaciones inesperadas. Devuelve false para permitir que el token remoto se elimine.

Parámetros
NombreTipoDescripcion
$disabledboolSi la eliminación remota está desactivada. Devuelve true para conservar el token, false para permitir la eliminación remota.
$dataarrayEl payload del token recibido de Redsys.

Fuente: classes/class-wc-gateway-redsys-global.php:3570.

PHP
add_filter( 'redsys_disable_remote_token_removal', 'my_token_removal', 10, 2 );
function my_token_removal( $disabled, $data ) {
    return false; // Allow remote token deletion.
}
redsys_mail_add_tokenFilter

Filtra los datos usados para construir el correo que invita a un cliente a añadir / registrar un token de tarjeta (asunto, cuerpo, cabeceras, destinatario, etc.). Úsalo para personalizar el texto o el enrutado del correo de solicitud de token.

Parámetros
NombreTipoDescripcion
$dataarrayArray asociativo con claves como user_id, email, name, last_name, site_title, user_link, subject, body, headers. Devuelve el array (posiblemente modificado).

Fuente: classes/class-wc-redsys-profile.php:125 (y 1 ubicación más en el mismo archivo).

PHP
add_filter( 'redsys_mail_add_token', 'my_add_token_mail', 10, 1 );
function my_add_token_mail( $data ) {
    $data['subject'] = __( 'Please register your payment card', 'my-textdomain' );
    return $data;
}
save_field_update_order_metaAction

Se dispara después de que la pasarela procese el guardado de campos de pedido personalizados, pasando los datos enviados. Úsalo para persistir tu propio meta de pedido a partir de los valores enviados durante el checkout / procesamiento del pedido.

Parámetros
NombreTipoDescripcion
$dataarrayLos datos enviados ($_POST o un array de datos derivado, según el punto de llamada).

Fuente: classes/class-wc-gateway-redsys.php:10954 (y 3 ubicaciones más en las clases de pasarela principal e inSite).

PHP
add_action( 'save_field_update_order_meta', 'my_save_order_fields', 10, 1 );
function my_save_order_fields( $data ) {
    // Inspect $data and store your own order meta if needed.
}
redsys_kses_descripcionFilter

Filtra la lista de etiquetas/atributos HTML permitidos usada para sanear la descripción de la pasarela renderizada en el checkout (pasada a wp_kses). Úsalo para permitir marcado seguro adicional en la descripción del método de pago.

Parámetros
NombreTipoDescripcion
$allowed_htmlarrayEl array de HTML permitido de wp_kses. Devuelve el array (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys.php:5516 (y otras ubicaciones en las clases inSite, Bizum checkout, Apple Pay y Google Pay).

PHP
add_filter( 'redsys_kses_descripcion', 'my_kses_descripcion', 10, 1 );
function my_kses_descripcion( $allowed_html ) {
    $allowed_html['span'] = array( 'class' => array() );
    return $allowed_html;
}
bizum_text_waiting_authFilter

Filtra el mensaje que se muestra al cliente mientras un pago de Bizum (checkout) está a la espera de confirmarse en la app móvil del banco del comprador.

Parámetros
NombreTipoDescripcion
$textstringEl mensaje de espera. Devuelve el texto (posiblemente modificado).

Fuente: classes/class-wc-gateway-bizum-checkout-redsys.php:1824.

PHP
add_filter( 'bizum_text_waiting_auth', 'my_bizum_waiting', 10, 1 );
function my_bizum_waiting( $text ) {
    return __( 'Please approve the charge in your banking app.', 'my-textdomain' );
}

Conmutadores de creación de cuenta 4

wc_gateway_apple_pay_redsys_allow_account_creationFilter

Filtra si se puede crear automáticamente una cuenta de WordPress/WooCommerce durante una compra con Apple Pay (checkout clásico). Por defecto usa el ajuste de registro de WooCommerce; devuelve true/false para anularlo.

Parámetros
NombreTipoDescripcion
$registration_enabledboolSi se permite la creación de cuenta. Devuelve el booleano (posiblemente modificado).

Fuente: classes/class-wc-gateway-apple-pay-checkout.php:1963 (y 1 ubicación más en el mismo archivo).

PHP
add_filter( 'wc_gateway_apple_pay_redsys_allow_account_creation', '__return_true' );
wc_gateway_apple_pay_redsys_blocks_allow_account_creationFilter

Igual que el anterior pero para la pasarela de Apple Pay en el checkout de WooCommerce Blocks.

Parámetros
NombreTipoDescripcion
$registration_enabledboolSi se permite la creación de cuenta. Devuelve el booleano (posiblemente modificado).

Fuente: includes/blocks/class-wc-gateway-apple-pay-redsys-support.php:298.

PHP
add_filter( 'wc_gateway_apple_pay_redsys_blocks_allow_account_creation', '__return_false' );
wc_gateway_googlepay_redsys_allow_account_creationFilter

Filtra si se puede crear automáticamente una cuenta durante una compra con Google Pay (checkout clásico).

Parámetros
NombreTipoDescripcion
$registration_enabledboolSi se permite la creación de cuenta. Devuelve el booleano (posiblemente modificado).

Fuente: classes/class-wc-gateway-googlepay-checkout.php:2101.

PHP
add_filter( 'wc_gateway_googlepay_redsys_allow_account_creation', '__return_true' );
wc_gateway_googlepay_redsys_blocks_allow_account_creationFilter

Igual que el anterior pero para la pasarela de Google Pay en el checkout de WooCommerce Blocks.

Parámetros
NombreTipoDescripcion
$registration_enabledboolSi se permite la creación de cuenta. Devuelve el booleano (posiblemente modificado).

Fuente: includes/blocks/class-wc-gateway-googlepay-redsys-support.php:307.

PHP
add_filter( 'wc_gateway_googlepay_redsys_blocks_allow_account_creation', '__return_false' );

Correos programados 2

redsys_send_expired_credit_card_emailFilter

Filtra los datos pasados al correo recordatorio programado de "tarjeta de crédito a punto de caducar" antes de enviarlo. Úsalo para personalizar o suprimir el recordatorio.

Parámetros
NombreTipoDescripcion
$dataarrayLos datos del correo. Devuelve el array (posiblemente modificado).

Fuente: classes/class-wc-gateway-redsys-scheduled-actions.php:257.

PHP
add_filter( 'redsys_send_expired_credit_card_email', 'my_expiring_email', 10, 1 );
function my_expiring_email( $data ) {
    return $data;
}
redsys_send_deleted_credit_card_emailFilter

Filtra el cuerpo del mensaje del correo de notificación de "tarjeta de crédito eliminada" antes de enviarlo al usuario.

Parámetros
NombreTipoDescripcion
$messagestringEl cuerpo del mensaje del correo. Devuelve el mensaje (posiblemente modificado).
$user_idintEl id del usuario cuya tarjeta fue eliminada.

Fuente: classes/class-wc-gateway-redsys-scheduled-actions.php:341.

PHP
add_filter( 'redsys_send_deleted_credit_card_email', 'my_deleted_email', 10, 2 );
function my_deleted_email( $message, $user_id ) {
    return $message;
}

Producto / Botón Comprar ahora 3

redsys_before_buy_now_button_productAction

Se dispara justo antes de renderizar el botón "Comprar ahora" (un clic) en una página de producto individual. Úsalo para mostrar marcado personalizado encima del botón.

Fuente: loader/one-clic-button.php:228.

PHP
add_action( 'redsys_before_buy_now_button_product', 'my_before_buy_now' );
function my_before_buy_now() {
    echo '<div class="my-buy-now-notice">' . esc_html__( 'Fast checkout:', 'my-textdomain' ) . '</div>';
}
redsys_after_buy_now_button_productAction

Se dispara justo después de renderizar el botón "Comprar ahora" (un clic) en una página de producto individual. Úsalo para mostrar marcado personalizado debajo del botón.

Fuente: loader/one-clic-button.php:246.

PHP
add_action( 'redsys_after_buy_now_button_product', 'my_after_buy_now' );
function my_after_buy_now() {
    echo '<p class="my-buy-now-help">' . esc_html__( 'Secure one-click payment.', 'my-textdomain' ) . '</p>';
}
redsys_accepted_shipping_methodsFilter

Filtra la lista de métodos de envío aceptados por el flujo "Comprar ahora" de un clic. Por defecto usa la opción almacenada woocommerce_redsys_shipping_methods.

Parámetros
NombreTipoDescripcion
$shipping_methodsarrayLos ids de métodos de envío aceptados. Devuelve el array (posiblemente modificado).

Fuente: loader/one-clic-button.php:89.

PHP
add_filter( 'redsys_accepted_shipping_methods', 'my_buy_now_shipping', 10, 1 );
function my_buy_now_shipping( $shipping_methods ) {
    $shipping_methods[] = 'flat_rate:3';
    return $shipping_methods;
}

Express checkout 3

redsys_express_custom_fieldsFilter

Filtra la lista de campos de checkout personalizados recogidos durante el flujo de checkout exprés (estilo Apple Pay / Google Pay), para un contexto dado.

Parámetros
NombreTipoDescripcion
$custom_fieldsarrayLa definición de los campos personalizados. Devuelve el array (posiblemente modificado).
$contextmixedEl contexto en el que se solicitan los campos.

Fuente: includes/class-redsys-express-custom-fields.php:214.

PHP
add_filter( 'redsys_express_custom_fields', 'my_express_fields', 10, 2 );
function my_express_fields( $custom_fields, $context ) {
    return $custom_fields;
}
redsys_express_custom_fields_mergedFilter

Filtra el conjunto final combinado de campos personalizados del checkout exprés después de combinar todas las fuentes.

Parámetros
NombreTipoDescripcion
$mergedarrayLos campos personalizados combinados. Devuelve el array (posiblemente modificado).

Fuente: includes/class-redsys-express-custom-fields.php:524.

PHP
add_filter( 'redsys_express_custom_fields_merged', 'my_express_fields_merged', 10, 1 );
function my_express_fields_merged( $merged ) {
    return $merged;
}
redsys_express_render_inline_fieldsFilter

Filtra si los campos personalizados del checkout exprés deben renderizarse en línea. Por defecto es false; devuelve true para renderizarlos en línea.

Parámetros
NombreTipoDescripcion
$render_inlineboolSi se deben renderizar los campos en línea. Devuelve el booleano (posiblemente modificado).

Fuente: includes/class-redsys-express-custom-fields.php:581.

PHP
add_filter( 'redsys_express_render_inline_fields', '__return_true' );

A2A 14

redsys_a2a_agent_card_publicFilter

Filtra el documento público de la agent card de A2A antes de devolverlo a los llamantes no autenticados.

Parámetros
NombreTipoDescripcion
$cardarrayLa agent card pública. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:67.

PHP
add_filter( 'redsys_a2a_agent_card_public', 'my_a2a_public_card', 10, 1 );
function my_a2a_public_card( $card ) {
    return $card;
}
redsys_a2a_agent_card_extendedFilter

Filtra el documento extendido (autenticado) de la agent card de A2A.

Parámetros
NombreTipoDescripcion
$cardarrayLa agent card extendida. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:84.

PHP
add_filter( 'redsys_a2a_agent_card_extended', 'my_a2a_extended_card', 10, 1 );
function my_a2a_extended_card( $card ) {
    return $card;
}
redsys_a2a_agent_card_skillsFilter

Filtra la lista de skills anunciadas en la agent card de A2A. Por defecto es un array vacío; añade tus propias definiciones de skills.

Parámetros
NombreTipoDescripcion
$skillsarrayLa lista de skills. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:152.

PHP
add_filter( 'redsys_a2a_agent_card_skills', 'my_a2a_skills', 10, 1 );
function my_a2a_skills( $skills ) {
    return $skills;
}
redsys_a2a_agent_card_security_schemesFilter

Filtra los esquemas de seguridad declarados en la agent card de A2A.

Parámetros
NombreTipoDescripcion
$schemesarrayLos esquemas de seguridad. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:199.

PHP
add_filter( 'redsys_a2a_agent_card_security_schemes', 'my_a2a_schemes', 10, 1 );
function my_a2a_schemes( $schemes ) {
    return $schemes;
}
redsys_a2a_agent_card_scopesFilter

Filtra los scopes OAuth por defecto declarados en la agent card de A2A.

Parámetros
NombreTipoDescripcion
$defaultsarrayLos scopes por defecto. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:224.

PHP
add_filter( 'redsys_a2a_agent_card_scopes', 'my_a2a_scopes', 10, 1 );
function my_a2a_scopes( $defaults ) {
    return $defaults;
}
redsys_a2a_agent_card_nameFilter

Filtra el nombre del agente que se muestra en la agent card de A2A.

Parámetros
NombreTipoDescripcion
$namestringEl nombre del agente. Devuelve el string (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:287.

PHP
add_filter( 'redsys_a2a_agent_card_name', function ( $name ) {
    return 'My Store Agent';
} );
redsys_a2a_agent_card_descriptionFilter

Filtra la descripción del agente que se muestra en la agent card de A2A.

Parámetros
NombreTipoDescripcion
$descstringLa descripción del agente. Devuelve el string (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-agent-card.php:302.

PHP
add_filter( 'redsys_a2a_agent_card_description', function ( $desc ) {
    return 'Payments agent for My Store.';
} );
redsys_a2a_agent_card_permissionFilter

Filtra si la solicitud actual tiene permiso para acceder a la agent card de A2A. Por defecto es true; devuelve false para denegar el acceso.

Parámetros
NombreTipoDescripcion
$permittedboolSi se permite el acceso. Devuelve el booleano (posiblemente modificado).
$requestWP_REST_RequestLa solicitud REST entrante.

Fuente: classes/a2a/class-redsys-a2a-rest-controller.php:223.

PHP
add_filter( 'redsys_a2a_agent_card_permission', 'my_a2a_permission', 10, 2 );
function my_a2a_permission( $permitted, $request ) {
    return $permitted;
}
redsys_a2a_rate_limitsFilter

Filtra la configuración de límite de tasa aplicada a un cliente A2A.

Parámetros
NombreTipoDescripcion
$defaultsarrayLa configuración de límite de tasa por defecto. Devuelve el array (posiblemente modificado).
$clientmixedEl cliente al que se aplican los límites.

Fuente: classes/a2a/class-redsys-a2a-auth.php:481.

PHP
add_filter( 'redsys_a2a_rate_limits', 'my_a2a_rate_limits', 10, 2 );
function my_a2a_rate_limits( $defaults, $client ) {
    return $defaults;
}
redsys_a2a_gateway_id_for_modeFilter

Filtra qué id de pasarela usa el puente A2A para un modo de pago dado.

Parámetros
NombreTipoDescripcion
$idstringEl id de la pasarela. Devuelve el id (posiblemente modificado).
$modestringEl modo de pago que se está resolviendo.

Fuente: classes/a2a/class-redsys-a2a-redsys-bridge.php:56.

PHP
add_filter( 'redsys_a2a_gateway_id_for_mode', 'my_a2a_gateway_for_mode', 10, 2 );
function my_a2a_gateway_for_mode( $id, $mode ) {
    return $id;
}
redsys_a2a_enabled_modesFilter

Filtra la lista de modos de pago A2A habilitados.

Parámetros
NombreTipoDescripcion
$modesarrayLos modos habilitados. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-redsys-bridge.php:95.

PHP
add_filter( 'redsys_a2a_enabled_modes', 'my_a2a_modes', 10, 1 );
function my_a2a_modes( $modes ) {
    return $modes;
}
redsys_a2a_limits_configFilter

Filtra el array de configuración de gasto/límites de A2A.

Parámetros
NombreTipoDescripcion
$configarrayLa configuración de límites. Devuelve el array (posiblemente modificado).

Fuente: classes/a2a/class-redsys-a2a-limits.php:99.

PHP
add_filter( 'redsys_a2a_limits_config', 'my_a2a_limits', 10, 1 );
function my_a2a_limits( $config ) {
    return $config;
}
redsys_a2a_task_advancedAction

Se dispara cuando una tarea A2A transiciona a un nuevo estado a través de la capa de integración de webhooks.

Parámetros
NombreTipoDescripcion
$task_idstringEl id de la tarea A2A.
$target_statestringEl estado al que avanzó la tarea.
$eventmixedEl payload del evento que provocó la transición.

Fuente: classes/a2a/class-redsys-a2a-webhook-glue.php:98.

PHP
add_action( 'redsys_a2a_task_advanced', 'my_a2a_task_advanced', 10, 3 );
function my_a2a_task_advanced( $task_id, $target_state, $event ) {
    // React to task state changes.
}
redsys_a2a_task_refundedAction

Se dispara cuando se reembolsa una tarea A2A.

Parámetros
NombreTipoDescripcion
$task_idstringEl id de la tarea A2A.
$order_idintEl id de pedido de WooCommerce relacionado.
$amountmixedEl importe reembolsado.

Fuente: classes/a2a/class-redsys-a2a-webhook-glue.php:183.

PHP
add_action( 'redsys_a2a_task_refunded', 'my_a2a_task_refunded', 10, 3 );
function my_a2a_task_refunded( $task_id, $order_id, $amount ) {
    // Sync refund to your system.
}

UCP 25

redsys_ucp_session_createdAction

Se dispara cuando se crea una nueva sesión de checkout UCP para un pedido.

Parámetros
NombreTipoDescripcion
$session_idstringEl id de la sesión UCP.
$orderWC_OrderEl pedido creado.
$statearrayEl estado de la sesión.
$client_idstringEl id de cliente OAuth que creó la sesión.

Fuente: classes/ucp/class-redsys-ucp-capability-checkout.php:268.

PHP
add_action( 'redsys_ucp_session_created', 'my_ucp_session_created', 10, 4 );
function my_ucp_session_created( $session_id, $order, $state, $client_id ) {
    // React to new UCP sessions.
}
redsys_ucp_session_updatedAction

Se dispara cuando se actualiza una sesión UCP existente.

Parámetros
NombreTipoDescripcion
$session_idstringEl id de la sesión UCP.
$orderWC_OrderEl pedido.
$statearrayEl estado actualizado de la sesión.
$client_idstringEl id de cliente OAuth.

Fuente: classes/ucp/class-redsys-ucp-capability-checkout.php:397.

PHP
add_action( 'redsys_ucp_session_updated', 'my_ucp_session_updated', 10, 4 );
function my_ucp_session_updated( $session_id, $order, $state, $client_id ) {}
redsys_ucp_session_status_changedAction

Se dispara cuando cambia el estado de una sesión UCP (por ejemplo a reembolsada o cancelada). Se usa para mantener el estado de la sesión UCP sincronizado con el pedido de WooCommerce.

Parámetros
NombreTipoDescripcion
$session_idstringEl id de la sesión UCP.
$ucp_statusstringEl nuevo estado UCP (por ejemplo refunded, canceled).
$orderWC_Order|nullEl pedido relacionado, o null si no está disponible.
$old_statusstringEl estado anterior (el estado anterior de WooCommerce del pedido, cuando esté disponible).

Fuente: classes/ucp/class-redsys-ucp-order-sync.php:53 (y 3 ubicaciones más en la capa UCP).

PHP
add_action( 'redsys_ucp_session_status_changed', 'my_ucp_status_changed', 10, 4 );
function my_ucp_status_changed( $session_id, $ucp_status, $order, $old_status ) {}
redsys_ucp_complete_handoffAction

Se dispara cuando una sesión UCP completa su handoff (el comprador es transferido para completar el pago) para un pedido.

Parámetros
NombreTipoDescripcion
$session_idstringEl id de la sesión UCP.
$orderWC_OrderEl pedido.
$payloadarrayEl payload del handoff (un array; array vacío si no hay).

Fuente: classes/ucp/class-redsys-ucp-capability-checkout.php:515.

PHP
add_action( 'redsys_ucp_complete_handoff', 'my_ucp_handoff', 10, 3 );
function my_ucp_handoff( $session_id, $order, $payload ) {}
redsys_ucp_cart_createdAction

Se dispara cuando se crea un nuevo carrito UCP.

Parámetros
NombreTipoDescripcion
$cart_idstringEl id del carrito UCP.
$statearrayEl estado del carrito.

Fuente: classes/ucp/class-redsys-ucp-capability-cart.php:110.

PHP
add_action( 'redsys_ucp_cart_created', 'my_ucp_cart_created', 10, 2 );
function my_ucp_cart_created( $cart_id, $state ) {}
redsys_ucp_cart_updatedAction

Se dispara cuando se actualiza un carrito UCP.

Parámetros
NombreTipoDescripcion
$cart_idstringEl id del carrito UCP.
$updatedarrayEl estado actualizado del carrito.

Fuente: classes/ucp/class-redsys-ucp-capability-cart.php:167.

PHP
add_action( 'redsys_ucp_cart_updated', 'my_ucp_cart_updated', 10, 2 );
function my_ucp_cart_updated( $cart_id, $updated ) {}
redsys_ucp_cart_expiredAction

Se dispara cuando la limpieza por cron de UCP determina que un carrito ha caducado.

Parámetros
NombreTipoDescripcion
$cart_idstringEl id del carrito UCP.
$cart_rowobject|arrayEl registro del carrito almacenado.

Fuente: classes/ucp/class-redsys-ucp-cron.php:69.

PHP
add_action( 'redsys_ucp_cart_expired', 'my_ucp_cart_expired', 10, 2 );
function my_ucp_cart_expired( $cart_id, $cart_row ) {}
redsys_ucp_cart_ttl_minutesFilter

Filtra el tiempo de vida, en minutos, de un carrito UCP.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL en minutos. Devuelve el valor (posiblemente modificado).
$cart_idstringEl id del carrito UCP.

Fuente: classes/ucp/class-redsys-ucp-capability-cart.php:99.

PHP
add_filter( 'redsys_ucp_cart_ttl_minutes', 'my_ucp_cart_ttl', 10, 2 );
function my_ucp_cart_ttl( $ttl, $cart_id ) {
    return 120;
}
redsys_ucp_session_ttl_minutesFilter

Filtra el tiempo de vida, en minutos, de una sesión UCP. Por defecto es 60.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL en minutos. Devuelve el valor (posiblemente modificado).
$session_idstringEl id de la sesión UCP.
$orderWC_OrderEl pedido relacionado.

Fuente: classes/ucp/class-redsys-ucp-capability-checkout.php:250.

PHP
add_filter( 'redsys_ucp_session_ttl_minutes', 'my_ucp_session_ttl', 10, 3 );
function my_ucp_session_ttl( $ttl, $session_id, $order ) {
    return 90;
}
redsys_ucp_skip_handoff_signature_checkFilter

Filtra si debe omitirse la verificación de la firma del handoff para una sesión UCP. Por defecto es false (la firma se verifica). Devuelve true para omitirla (no recomendado en producción).

Parámetros
NombreTipoDescripcion
$skipboolSi se debe omitir la comprobación. Devuelve el booleano (posiblemente modificado).
$session_idstringEl id de la sesión UCP.

Fuente: classes/ucp/class-redsys-ucp-manager.php:287.

PHP
add_filter( 'redsys_ucp_skip_handoff_signature_check', '__return_false', 10, 2 );
redsys_ucp_handoff_ttlFilter

Filtra el tiempo de vida de un token de handoff UCP.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL del handoff (en segundos). Devuelve el valor (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-manager.php:298.

PHP
add_filter( 'redsys_ucp_handoff_ttl', function ( $ttl ) {
    return $ttl;
} );
redsys_ucp_mcp_toolsFilter

Filtra la lista de herramientas expuestas por el servidor MCP (Model Context Protocol) de UCP.

Parámetros
NombreTipoDescripcion
$toolsarrayLa lista de herramientas MCP. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-mcp-server.php:276.

PHP
add_filter( 'redsys_ucp_mcp_tools', 'my_ucp_mcp_tools', 10, 1 );
function my_ucp_mcp_tools( $tools ) {
    return $tools;
}
redsys_ucp_languagesFilter

Filtra la lista de idiomas soportados anunciada por la capa de descubrimiento de UCP.

Parámetros
NombreTipoDescripcion
$languagesarrayLa lista de idiomas. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-discovery.php:396.

PHP
add_filter( 'redsys_ucp_languages', 'my_ucp_languages', 10, 1 );
function my_ucp_languages( $languages ) {
    return $languages;
}
redsys_ucp_embedded_endpointFilter

Filtra la URL del endpoint embebido por defecto anunciada por el descubrimiento de UCP.

Parámetros
NombreTipoDescripcion
$endpointstringLa URL del endpoint embebido. Devuelve la URL (posiblemente modificada).

Fuente: classes/ucp/class-redsys-ucp-discovery.php:433.

PHP
add_filter( 'redsys_ucp_embedded_endpoint', function ( $endpoint ) {
    return $endpoint;
} );
redsys_ucp_well_known_documentFilter

Filtra el documento de descubrimiento .well-known de UCP antes de servirlo.

Parámetros
NombreTipoDescripcion
$docarrayEl documento well-known. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-discovery.php:608.

PHP
add_filter( 'redsys_ucp_well_known_document', 'my_ucp_well_known', 10, 1 );
function my_ucp_well_known( $doc ) {
    return $doc;
}
redsys_ucp_response_envelopeFilter

Filtra el sobre de respuesta que envuelve el resultado de una operación de la API de UCP.

Parámetros
NombreTipoDescripcion
$envelopearrayEl sobre de respuesta. Devuelve el array (posiblemente modificado).
$operation_typestringEl tipo de operación que produjo la respuesta.
$requestWP_REST_RequestLa solicitud de origen.

Fuente: classes/shared/class-redsys-ucp-response-envelope.php:113.

PHP
add_filter( 'redsys_ucp_response_envelope', 'my_ucp_envelope', 10, 3 );
function my_ucp_envelope( $envelope, $operation_type, $request ) {
    return $envelope;
}
redsys_ucp_buyer_consents_requiredFilter

Filtra si se requieren consentimientos del comprador en un flujo UCP.

Parámetros
NombreTipoDescripcion
$defaultmixedEl requisito de consentimiento por defecto. Devuelve el valor (posiblemente modificado).

Fuente: classes/ucp/extensions/class-redsys-ucp-extension-buyer-consent.php:61.

PHP
add_filter( 'redsys_ucp_buyer_consents_required', function ( $default ) {
    return $default;
} );
redsys_ucp_identity_user_authenticated_scopesFilter

Filtra la lista de scopes considerados concedidos para una identidad de usuario UCP autenticada.

Parámetros
NombreTipoDescripcion
$outarrayLos scopes autenticados. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-capability-identity.php:274.

PHP
add_filter( 'redsys_ucp_identity_user_authenticated_scopes', 'my_ucp_scopes', 10, 1 );
function my_ucp_scopes( $out ) {
    return $out;
}
redsys_ucp_platform_profile_ttlFilter

Filtra el TTL de caché de un perfil de plataforma UCP obtenido.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL de caché (en segundos). Devuelve el valor (posiblemente modificado).
$urlstringLa URL del perfil de plataforma.
$decodedarrayLos datos del perfil decodificados.

Fuente: classes/ucp/class-redsys-ucp-platform-profile-resolver.php:224.

PHP
add_filter( 'redsys_ucp_platform_profile_ttl', 'my_ucp_profile_ttl', 10, 3 );
function my_ucp_profile_ttl( $ttl, $url, $decoded ) {
    return $ttl;
}
redsys_ucp_webhook_supported_eventsFilter

Filtra la lista de tipos de eventos de webhook soportados por el despachador de webhooks de UCP.

Parámetros
NombreTipoDescripcion
$defaultsarrayLos eventos soportados. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-webhook-dispatcher.php:42.

PHP
add_filter( 'redsys_ucp_webhook_supported_events', 'my_ucp_events', 10, 1 );
function my_ucp_events( $defaults ) {
    return $defaults;
}
redsys_ucp_webhook_batch_sizeFilter

Filtra el tamaño de lote usado al despachar webhooks UCP. Por defecto es 25.

Parámetros
NombreTipoDescripcion
$batch_sizeintEl tamaño de lote. Devuelve el valor (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-webhook-dispatcher.php:138.

PHP
add_filter( 'redsys_ucp_webhook_batch_size', function ( $size ) {
    return 50;
} );
redsys_ucp_webhook_timeoutFilter

Filtra el tiempo de espera de la solicitud HTTP, en segundos, para una entrega de webhook UCP. Por defecto es 10.

Parámetros
NombreTipoDescripcion
$timeoutintEl tiempo de espera en segundos. Devuelve el valor (posiblemente modificado).
$webhookmixedEl webhook que se está entregando.

Fuente: classes/ucp/class-redsys-ucp-webhook-dispatcher.php:182 (y 1 ubicación más en el mismo archivo).

PHP
add_filter( 'redsys_ucp_webhook_timeout', 'my_ucp_webhook_timeout', 10, 2 );
function my_ucp_webhook_timeout( $timeout, $webhook ) {
    return 20;
}
redsys_ucp_webhook_event_payloadFilter

Filtra el payload enviado para un evento de webhook UCP.

Parámetros
NombreTipoDescripcion
$dataarrayEl payload del evento. Devuelve el array (posiblemente modificado).
$event_typestringEl tipo de evento.
$session_idstringEl id de la sesión UCP relacionada.

Fuente: classes/ucp/class-redsys-ucp-webhook-dispatcher.php:249.

PHP
add_filter( 'redsys_ucp_webhook_event_payload', 'my_ucp_payload', 10, 3 );
function my_ucp_payload( $data, $event_type, $session_id ) {
    return $data;
}
redsys_ucp_webhook_skipFilter

Filtra si debe omitirse una entrega de webhook UCP para un evento dado. Por defecto es false; devuelve true para omitirla.

Parámetros
NombreTipoDescripcion
$skipboolSi se debe omitir. Devuelve el booleano (posiblemente modificado).
$event_typestringEl tipo de evento.
$webhookmixedLa suscripción al webhook.

Fuente: classes/ucp/class-redsys-ucp-webhook-dispatcher.php:260.

PHP
add_filter( 'redsys_ucp_webhook_skip', 'my_ucp_webhook_skip', 10, 3 );
function my_ucp_webhook_skip( $skip, $event_type, $webhook ) {
    return $skip;
}
redsys_ucp_webhook_signature_algoFilter

Filtra el algoritmo de firma usado para firmar las entregas de webhooks UCP/de comercio. Por defecto es rfc9421.

Parámetros
NombreTipoDescripcion
$algostringEl algoritmo de firma. Devuelve el valor (posiblemente modificado).

Fuente: classes/shared/class-redsys-commerce-webhook-dispatcher.php:85.

PHP
add_filter( 'redsys_ucp_webhook_signature_algo', function ( $algo ) {
    return $algo;
} );

ACP 19

redsys_acp_session_createdAction

Se dispara cuando se crea una nueva sesión de checkout ACP.

Parámetros
NombreTipoDescripcion
$checkout_idstringEl id del checkout/sesión ACP.
$orderWC_OrderEl pedido.
$statearrayEl estado de la sesión.
$provider_idstringEl id del proveedor que creó la sesión.

Fuente: classes/acp/class-redsys-acp-checkout-service.php:136.

PHP
add_action( 'redsys_acp_session_created', 'my_acp_session_created', 10, 4 );
function my_acp_session_created( $checkout_id, $order, $state, $provider_id ) {}
redsys_acp_session_updatedAction

Se dispara cuando se actualiza una sesión ACP.

Parámetros
NombreTipoDescripcion
$checkout_idstringEl id del checkout/sesión ACP.
$orderWC_OrderEl pedido.
$statearrayEl estado actualizado de la sesión.
$provider_idstringEl id del proveedor.

Fuente: classes/acp/class-redsys-acp-checkout-service.php:917.

PHP
add_action( 'redsys_acp_session_updated', 'my_acp_session_updated', 10, 4 );
function my_acp_session_updated( $checkout_id, $order, $state, $provider_id ) {}
redsys_acp_session_status_changedAction

Se dispara cuando cambia el estado de una sesión ACP, manteniéndola sincronizada con el estado del pedido de WooCommerce.

Parámetros
NombreTipoDescripcion
$checkout_idstringEl id del checkout/sesión ACP.
$new_acp_statusstringEl nuevo estado ACP.
$orderWC_OrderEl pedido.
$old_wc_statusstringEl estado anterior del pedido de WooCommerce.

Fuente: classes/acp/class-redsys-acp-order-sync.php:157.

PHP
add_action( 'redsys_acp_session_status_changed', 'my_acp_status_changed', 10, 4 );
function my_acp_status_changed( $checkout_id, $new_acp_status, $order, $old_wc_status ) {}
redsys_acp_complete_handoffAction

Se dispara cuando una sesión ACP completa su handoff para un pedido.

Parámetros
NombreTipoDescripcion
$checkout_idstringEl id del checkout/sesión ACP.
$orderWC_OrderEl pedido.
$payloadarrayEl payload del handoff.

Fuente: classes/acp/class-redsys-acp-checkout-service.php:1029.

PHP
add_action( 'redsys_acp_complete_handoff', 'my_acp_handoff', 10, 3 );
function my_acp_handoff( $checkout_id, $order, $payload ) {}
redsys_acp_session_ttl_minutesFilter

Filtra el TTL, en minutos, de una sesión ACP. Por defecto es 60.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL en minutos. Devuelve el valor (posiblemente modificado).
$checkout_idstringEl id del checkout ACP.
$orderWC_OrderEl pedido relacionado.

Fuente: classes/acp/class-redsys-acp-checkout-service.php:113.

PHP
add_filter( 'redsys_acp_session_ttl_minutes', 'my_acp_ttl', 10, 3 );
function my_acp_ttl( $ttl, $checkout_id, $order ) {
    return 90;
}
redsys_acp_skip_handoff_signature_checkFilter

Filtra si debe omitirse la comprobación de la firma del handoff para un checkout ACP. Por defecto es false.

Parámetros
NombreTipoDescripcion
$skipboolSi se debe omitir la comprobación. Devuelve el booleano (posiblemente modificado).
$checkout_idstringEl id del checkout ACP.

Fuente: classes/acp/class-redsys-acp-manager.php:262.

PHP
add_filter( 'redsys_acp_skip_handoff_signature_check', '__return_false', 10, 2 );
redsys_acp_handoff_ttlFilter

Filtra el TTL de un token de handoff ACP.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL del handoff (en segundos). Devuelve el valor (posiblemente modificado).

Fuente: classes/acp/class-redsys-acp-manager.php:284.

PHP
add_filter( 'redsys_acp_handoff_ttl', function ( $ttl ) {
    return $ttl;
} );
redsys_acp_cleanup_batch_sizeFilter

Filtra el tamaño de lote usado por la limpieza por cron de ACP. Por defecto es 50.

Parámetros
NombreTipoDescripcion
$batch_sizeintEl tamaño de lote. Devuelve el valor (posiblemente modificado).

Fuente: classes/acp/class-redsys-acp-cron.php:41.

PHP
add_filter( 'redsys_acp_cleanup_batch_size', function ( $size ) {
    return 100;
} );
redsys_acp_idem_ttlFilter

Filtra el TTL de las claves de idempotencia de ACP.

Parámetros
NombreTipoDescripcion
$ttlintEl TTL de idempotencia (en segundos). Devuelve el valor (posiblemente modificado).
$kstringLa clave de idempotencia.

Fuente: classes/acp/class-redsys-acp-idempotency.php:60 (y 1 ubicación más en el mismo archivo).

PHP
add_filter( 'redsys_acp_idem_ttl', 'my_acp_idem_ttl', 10, 2 );
function my_acp_idem_ttl( $ttl, $k ) {
    return $ttl;
}
redsys_acp_well_known_languagesFilter

Filtra los idiomas soportados anunciados en el documento .well-known de ACP.

Parámetros
NombreTipoDescripcion
$languagesarrayLa lista de idiomas. Devuelve el array (posiblemente modificado).

Fuente: classes/acp/class-redsys-acp-manager.php:165.

PHP
add_filter( 'redsys_acp_well_known_languages', 'my_acp_languages', 10, 1 );
function my_acp_languages( $languages ) {
    return $languages;
}
redsys_acp_well_known_documentFilter

Filtra el documento de descubrimiento .well-known de ACP antes de servirlo.

Parámetros
NombreTipoDescripcion
$docarrayEl documento well-known. Devuelve el array (posiblemente modificado).

Fuente: classes/acp/class-redsys-acp-manager.php:226.

PHP
add_filter( 'redsys_acp_well_known_document', 'my_acp_well_known', 10, 1 );
function my_acp_well_known( $doc ) {
    return $doc;
}
redsys_acp_webhook_supported_eventsFilter

Filtra la lista de tipos de eventos de webhook soportados por el despachador de webhooks de ACP.

Parámetros
NombreTipoDescripcion
$defaultsarrayLos eventos soportados. Devuelve el array (posiblemente modificado).

Fuente: classes/acp/class-redsys-acp-webhook-dispatcher.php:74.

PHP
add_filter( 'redsys_acp_webhook_supported_events', 'my_acp_events', 10, 1 );
function my_acp_events( $defaults ) {
    return $defaults;
}
redsys_acp_webhook_batch_sizeFilter

Filtra el tamaño de lote usado al despachar webhooks ACP. Por defecto es 25.

Parámetros
NombreTipoDescripcion
$batch_sizeintEl tamaño de lote. Devuelve el valor (posiblemente modificado).

Fuente: classes/acp/class-redsys-acp-webhook-dispatcher.php:177.

PHP
add_filter( 'redsys_acp_webhook_batch_size', function ( $size ) {
    return 50;
} );
redsys_acp_webhook_timeoutFilter

Filtra el tiempo de espera de la solicitud HTTP para una entrega de webhook ACP.

Parámetros
NombreTipoDescripcion
$timeoutintEl tiempo de espera en segundos. Devuelve el valor (posiblemente modificado).
$webhookmixedEl webhook que se está entregando.

Fuente: classes/acp/class-redsys-acp-webhook-dispatcher.php:223 (y 1 ubicación más en el mismo archivo).

PHP
add_filter( 'redsys_acp_webhook_timeout', 'my_acp_webhook_timeout', 10, 2 );
function my_acp_webhook_timeout( $timeout, $webhook ) {
    return $timeout;
}
redsys_acp_webhook_request_argsFilter

Filtra los argumentos de la solicitud HTTP usados al entregar un webhook ACP.

Parámetros
NombreTipoDescripcion
$argsarrayLos argumentos de solicitud de wp_remote_post. Devuelve el array (posiblemente modificado).
$webhookmixedLa suscripción al webhook.
$event_typestringEl tipo de evento.

Fuente: classes/acp/class-redsys-acp-webhook-dispatcher.php:242.

PHP
add_filter( 'redsys_acp_webhook_request_args', 'my_acp_request_args', 10, 3 );
function my_acp_request_args( $args, $webhook, $event_type ) {
    return $args;
}
redsys_acp_webhook_event_payloadFilter

Filtra el payload enviado para un evento de webhook ACP.

Parámetros
NombreTipoDescripcion
$dataarrayEl payload del evento. Devuelve el array (posiblemente modificado).
$event_typestringEl tipo de evento.
$checkout_idstringEl id del checkout ACP relacionado.

Fuente: classes/acp/class-redsys-acp-webhook-dispatcher.php:449.

PHP
add_filter( 'redsys_acp_webhook_event_payload', 'my_acp_payload', 10, 3 );
function my_acp_payload( $data, $event_type, $checkout_id ) {
    return $data;
}
redsys_acp_webhook_skipFilter

Filtra si debe omitirse una entrega de webhook ACP para un evento dado. Por defecto es false.

Parámetros
NombreTipoDescripcion
$skipboolSi se debe omitir. Devuelve el booleano (posiblemente modificado).
$event_typestringEl tipo de evento.
$webhookmixedLa suscripción al webhook.

Fuente: classes/acp/class-redsys-acp-webhook-dispatcher.php:215 (y 1 ubicación más en el mismo archivo).

PHP
add_filter( 'redsys_acp_webhook_skip', 'my_acp_webhook_skip', 10, 3 );
function my_acp_webhook_skip( $skip, $event_type, $webhook ) {
    return $skip;
}
redsys_acp_webhook_allow_httpFilter

Filtra si se permiten URLs de webhook con HTTP plano (no HTTPS) para las suscripciones de webhook ACP. Por defecto es false (se requiere HTTPS). Devuelve true para permitir HTTP (no recomendado en producción).

Parámetros
NombreTipoDescripcion
$allowboolSi se permite HTTP. Devuelve el booleano (posiblemente modificado).
$urlstringLa URL del webhook que se está validando.

Fuente: classes/acp/class-redsys-acp-webhook-rest.php:252.

PHP
add_filter( 'redsys_acp_webhook_allow_http', '__return_false', 10, 2 );
woocommerce_mcp_allow_insecure_transportFilter

Filtra si se permite el transporte inseguro (no HTTPS) para las solicitudes de autenticación ACP/MCP. Por defecto es false. Devuelve true solo en entornos de desarrollo de confianza.

Parámetros
NombreTipoDescripcion
$allowboolSi se permite el transporte inseguro. Devuelve el booleano (posiblemente modificado).
$requestWP_REST_RequestLa solicitud entrante.

Fuente: classes/acp/class-redsys-acp-auth.php:351.

PHP
add_filter( 'woocommerce_mcp_allow_insecure_transport', '__return_false', 10, 2 );

OAuth y well-known 3

redsys_oauth_supported_scopesFilter

Filtra la lista de scopes OAuth soportados por el servidor OAuth UCP del plugin.

Parámetros
NombreTipoDescripcion
$scopesarrayLos scopes soportados. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-oauth-server.php:106.

PHP
add_filter( 'redsys_oauth_supported_scopes', 'my_oauth_scopes', 10, 1 );
function my_oauth_scopes( $scopes ) {
    return $scopes;
}
redsys_oauth_scope_alias_mapFilter

Filtra el mapa de alias de scopes OAuth usado por el servidor OAuth.

Parámetros
NombreTipoDescripcion
$maparrayEl mapa de alias. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-oauth-server.php:133.

PHP
add_filter( 'redsys_oauth_scope_alias_map', 'my_oauth_alias_map', 10, 1 );
function my_oauth_alias_map( $map ) {
    return $map;
}
redsys_oauth_client_id_prefixFilter

Filtra el prefijo usado al generar ids de cliente OAuth, por tipo de cliente.

Parámetros
NombreTipoDescripcion
$prefixstringEl prefijo del id de cliente (por defecto {client_type}_). Devuelve el prefijo (posiblemente modificado).
$client_typestringEl tipo de cliente.

Fuente: classes/ucp/class-redsys-ucp-oauth-server.php:258.

PHP
add_filter( 'redsys_oauth_client_id_prefix', 'my_oauth_prefix', 10, 2 );
function my_oauth_prefix( $prefix, $client_type ) {
    return $prefix;
}

Varios / texto / URLs 5

redsys_thankyou_page_textFilter

Filtra el texto que se muestra en la página de pedido recibido / agradecimiento para los pedidos de Redsys.

Parámetros
NombreTipoDescripcion
$textthabksstringEl texto de agradecimiento. Devuelve el texto (posiblemente modificado).
$order_idintEl id de pedido de WooCommerce.

Fuente: includes/thank-you-receipe.php:52.

PHP
add_filter( 'redsys_thankyou_page_text', 'my_thankyou_text', 10, 2 );
function my_thankyou_text( $textthabks, $order_id ) {
    return __( 'Thank you, your payment was received.', 'my-textdomain' );
}
redsys_docs_urlFilter

Filtra la URL de documentación enlazada desde la entrada del plugin en la lista de plugins de WordPress.

Parámetros
NombreTipoDescripcion
$urlstringLa URL de la documentación. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-plugin-list-links-redsys-premium.php:57.

PHP
add_filter( 'redsys_docs_url', function ( $url ) {
    return 'https://example.com/my-docs/';
} );
redsys_apidocs_urlFilter

Filtra la URL de documentación de la API enlazada desde la entrada del plugin en la lista de plugins de WordPress.

Parámetros
NombreTipoDescripcion
$urlstringLa URL de la documentación de la API. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-plugin-list-links-redsys-premium.php:58.

PHP
add_filter( 'redsys_apidocs_url', function ( $url ) {
    return $url;
} );
redsys_support_urlFilter

Filtra la URL de soporte enlazada desde la entrada del plugin en la lista de plugins de WordPress.

Parámetros
NombreTipoDescripcion
$urlstringLa URL de soporte. Devuelve la URL (posiblemente modificada).

Fuente: classes/class-plugin-list-links-redsys-premium.php:59.

PHP
add_filter( 'redsys_support_url', function ( $url ) {
    return $url;
} );
redsys_onboarding_menu_slugFilter

Filtra el slug del menú de administración usado por la pantalla de la guía de onboarding / configuración de Redsys.

Parámetros
NombreTipoDescripcion
$slugstringEl slug del menú (por defecto redsys-onboarding). Devuelve el slug (posiblemente modificado).

Fuente: classes/class-redsys-setup-guide.php:45.

PHP
add_filter( 'redsys_onboarding_menu_slug', function ( $slug ) {
    return $slug;
} );

Otros hooks 2

redsys_ucp_oauth_authorization_server_metadataFilter

Filtra el documento OAuth Authorization Server Metadata (.well-known/oauth-authorization-server) servido por la capa UCP.

Parámetros
NombreTipoDescripcion
$docarrayEl documento de metadatos. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-oauth-metadata.php:124.

PHP
add_filter( 'redsys_ucp_oauth_authorization_server_metadata', 'my_oauth_as_metadata', 10, 1 );
function my_oauth_as_metadata( $doc ) {
    return $doc;
}
redsys_ucp_oauth_protected_resource_metadataFilter

Filtra el documento OAuth Protected Resource Metadata (.well-known/oauth-protected-resource) servido por la capa UCP.

Parámetros
NombreTipoDescripcion
$docarrayEl documento de metadatos. Devuelve el array (posiblemente modificado).

Fuente: classes/ucp/class-redsys-ucp-oauth-metadata.php:183.

PHP
add_filter( 'redsys_ucp_oauth_protected_resource_metadata', 'my_oauth_pr_metadata', 10, 1 );
function my_oauth_pr_metadata( $doc ) {
    return $doc;
}

Consigue la biblioteca completa de hooks

Cada action y filter mostrado aquí se incluye con el plugin WooCommerce Redsys Gateway Premium.