Multibanco, MB WAY, Credit card and Payshop (IfthenPay) for WooCommerce

Descripción

«Pagamento de Serviços» (pago de servicios) en Multibanco (red ATEM portuguesa), o servicios de banca doméstica, es el método más popular de pago por servicios y compras (online) en Portugal. Los clientes portugueses confían en el sistema «Multibanco» más que en ningún otro.
Este plugin te permitirá generar una referencia de pago para que el cliente pueda usarla para pagar su pedido WooCommerce, a través de un servicio ATM o de banca doméstica.

También están disponibles los métodos de pago de MB WAY (usando el número de teléfono móvil del cliente), tarjeta de crédito o débito y CTT Payshop.

Este es el plugin oficial de IfthenPay, y es obligatorio un contrato con esta empresa. El soporte técnico lo ofrece Webdados.

Este plugin pronto necesitará WordPress 5.0, WooCommerce 3.4 y PHP 7.0 o superiores.
Si no puedes actualizar alguno de estos componentes, deberías revisar el registro de cambios de este plugin para averiguar cuál es la última versión que puedes usar en tu escenario.

¿Estas emitiendo facturas automáticas en tu tienda WooCommerce?

En caso contrario, conoce nuestro nuevo plugin: Invoicing with InvoiceXpress for WooCommerce

Características:

  • Genera una referencia de Multibanco para el pago sencillo en la red ATM portuguesa o el servicio de banca doméstica;
  • Permite al cliente pagar usando MB WAY usando su teléfono móvil:
  • Permite al cliente pagar usando su tarjeta de crédito o débito (WooCommerce >=4.0);
  • Genera una referencia de Payshop para pagos sencillos en la red de agentes de Payshop, tiendas CTT u oficinas postales disponibles en todo Portugal;
  • Cambia automáticamente el estado del pedido a «Procesando» (o a «Completado» si el pedido solo contiene productos virtuales descargables) y avisa tanto al cliente como al propietario de la tienda, si está activa la «llamada de retorno» en el pago;
  • Se puede activar la «llamada de retorno« automática a IfthenPay, desde la pantalla de ajustes del plugin en cada método de pago;
  • El propietario de la tienda puede establecer un mínimo y máximo en el total del pedido para que esté disponible cada pasarela de pago;
  • Posibilidad de reducir el inventario cuando se crea o paga el pedido;
  • Permite buscar pedidos (en el área de administración) por la referencia de Multibanco o Payshop;
  • Integración con plugins de avisos por SMS de terceros (solo Multibanco y Payshop):
  • Compatible y probado con WPML (para tiendas multilingues);
  • Probado con Polylang;
  • Integración (experimental) con WooCommerce Subscriptions (solo Multibanco y MB WAY);
  • Integración (experimental) con WooCommerce Deposits by webtomizer (no para tarjetas de crédito de momento);
  • Integración experimental con el bloque de finalizar compra de WooCommerce Blocks (solo Multibanco);
  • Probado y compatible con PHP7;

Extensiones premium:

  • Entidad por categoría:
    • Configura una entidad y subentidad base de Multibanco, o una clave de MB WAY, en cada categoría de producto, para que puedas recibir pagos en distintas cuentas basados en el pedido;
    • Bloquea el carrito para que solo haya productos de la misma cuenta en cada pedido;

Instalación

  • Usa la característica de instalación automática incluida en tu panel de administración de WordPress y busca «Multibanco, MBWAY, Credit card and Payshop (IfthenPay) for WooCommerce».
  • Multibanco: Ve a WooCoomerce > Ajustes > Pagos > Pago de servicios con Multibanco y rellena los datos facilitados por IfthenPay (entidad y subentidad) para usar este método de pago. Es obligatorio un contrato con IfthenPay para recibir estos datos.
  • MB WAY: Ve a WooCoomerce > Ajustes > Pagos > Pago con MB WAY en el teléfono móvil y rellena los datos facilitados por IfthenPay (clave de MB WAY) para usar este método de pago. Es obligatorio un contrato con IfthenPay para recibir estos datos.
  • Tarjeta de crédito o débito: Ve a WooCoomerce > Ajustes > Finalizar compra > Tarjeta de crédito o débito y completa los datos facilitados por IfthenPay (clave de la tarjeta de crédito) para poder usar este método de pago. Es obligatorio contactar con IfthenPay para recibir estos datos.
  • Payshop: Ve a WooCommerce > Ajustes > Pagos > Pago en la red de agentes de Payshop y rellena los datos facilitados por IfthenPay (clave de Payshop) para poder usar este método de pago. Es obligatorio un contrato con IfthenPay para recibir estos datos.
  • Asegúrate de pedir a IfthenPah que active la «petición de retorno» en su lado con la URL y clave anti-phishing facilitada en la pantalla de ajustes. Hay una característica en cada pantalla de método de pago que te permite hacer esta solicitud mediante un servicio wev, excepto con la tarjeta de crédito, donde no es necesario.
  • Empieza a recibir pagos 🙂

FAQ

¿Puedo empezar a recibir pagos ya mismo? ¡Dame la pasta!

¡No! Tienes que firmar un contrato con IfthenPay para activar este servicio. Ve a https://ifthenpay.com para más información.

Soy un individuo y no un negocio registrado. ¿Puedo usar este plugin?

No. IfthenPay solo ofrece este servicio a negocios registrados y equivalentes (como autónomos registrados, por ejemplo). Deberías contactarles si necesitas más detalles sobre este asunto.

La referencia generada por Multibanco no contiene el número del pedido. ¿Cómo sé qué pedido se ha pagado?

IfthenPay te enviará un correo electrónico cada vez que se pague una referencia, pero la referencia no contiene el número del pedido. Por diseño, nuestro plugin no incluye el número del pedido en la referencia debido al modo en que WooCommerce/WordPress establecen los IDs de pedidos/publicaciones.

En cualquier caso, no necesitas el número del pedido en la referencia, debido a que nuestro plugin utiliza un mecanismo de llamada de retorno. IfthenPay avisa automáticamente a WooCommerce cuando se usa para un pago una referencia específica de Multibanco y, también automáticamente, se establecerá como pagado.

Si todavía necesitas saber a qué referencia está vinculado el pedido utiliza la caja de búsqueda en la pantalla de administración de pedidos de WooCommerce.

¿Puedo probar la llamada de retorno para simular un pago y vislumbrar qué pasa cuando un cliente hace un pago real?

Sí, puedes. Edita tu archivo wp-config.php y configura WP_DEBUG a true. Luego haz un pedido de prueba en la tienda usando Multibanco, MB WAY o PayShop. Ve a la pantalla de edición de pedidos y haz clic en el botón «Simular pago con llamada de retorno».

¿Puedo usar este plugin / el servicio de IfthenPay en más de una web?

Sí, pero no con la misma y subentidad de Multibanco o claves de MB WAY, tarjeta de crédito o Payshop. Pide a IfthenPay distintas credenciales para cada web en la que necesites que esté disponible el servicio. No hay ningún costo adicional añadido, y puedes incluso transferir los pagos a distintas cuentas bancarias.

¿Puedo cambiar el aspecto de las instrucciones de pago en la página de «Agradecimiento» y/o en el correo electrónico de nuevo pedido, así como el formato del mensaje SMS?

¡Sí, puedes! Pero deberías estar al día con los filtros de WordPress. Hay filtros para hacer esto, y puedes encontrar ejemplos dentro de hooks-examples.php.

¿Puedo cambiar el icono de la pasarela de pago de la página de finalizar compra?

También hay filtros para esto. Mira en hooks-examples.php.

Quiero añadir un cargo adicional para los pagos de Multibanco MB WAY, tarjeta de crédito o Payshop. ¿Cómo debería hacerlo?

¡No deberías hacerlo! Hasta donde sabemos, es ilegal según la legislación portuguesa y una directiva europea añadir un cargo adicional basado en el método de pago elegido por el cliente.
Si no te preocupa la ley, hay plugins disponibles que te permiten añadir cargos adicionales según el método de pago. Por favor, no nos pidas soporte sobre esto.

¿Cuánto tiempo tiene el cliente para pagar con MB WAY?

Las peticiones de pago MB WAY caducan después de 5 minutos.

[WPML] Mi web es multilingüe. ¿Podré usar este plugin?

Sí. Este plugin es oficialmente compatible con WPML. Necesitarás los plugins WPML y WPML String Translation (además de WooCommerce Multilingual, que es obligatorio para cualquier instalación de WooCommerce + WPML).

[WPML] ¿Cómo puedo traducir el título y descripción del método de pago que el cliente ve en la página de finalizar compra para los idiomas secundarios?

Ve a WPML > String Translation > Buscar y traduce toda la cadenaen los dominios woocommerce y multibanco_ifthen_for_woocommerce que tengan ifthen_for_woocommerce en su nombre.

[SMS] ¿Cómo incluyo las instrucciones del pago por Multibanco y/o Payshop en el SMS enviado por «WooCommerce – APG SMS Notifications»?

Ve a WooCommerce > Avisos SMS y añade las variables %multibanco_ifthen% and/or %payshop_ifthen% a «Mensaje en espera personalizado»

[SMS] ¿Cómo incluyo las instrucciones del pago por Multibanco y/o Payshop en el SMS enviado por «Twilio SMS Notifications»?

Ve a WooCommerce > Ajustes > SMS y añade las variables %multibanco_ifthen% y/o %payshop_ifthen% a los «Avisos al cliente» > «Mensaje de SMS en espera».

[SMS] ¿Cómo incluyo las instrucciones del pago por Multibanco y/o Payshop en el SMS enviado por «YITH WooCommerce SMS Notification»?

Ve a YITH Plugins > Avisos SMS > Ajustes SMS y añade las variables {multibanco_ifthen} y/o {payshop_ifthen} a «En espera».

[Avanzado] ¿Puedo usar una clave de entidad/subentidad específica de Multibanco, MB WAY, tarjeta de crédito o Payshop basada en los detalles del pedido?

Sí, deberías usar los filtros multibanco_ifthen_base_ent_subent, multibanco_ifthen_base_mbwaykey, multibanco_ifthen_base_creditcardkey o multibanco_ifthen_base_payshopkey. Mira hooks-examples.php.

[Avanzado] El pedido se queda «En espera» en Multibanco y Payshop, ¿puedo hacer que quede como «Pendiente» por defecto?

No sé por qué extraño motivo querrías hacer esto pero, sí, puedes. Simplemente cambia a false los filtros multibanco_ifthen_set_on_hold y/o mbway_ifthen_set_on_hold.
Ten en cuenta de que no se enviarán al cliente las instruccione de pago en ningún correo electrónico de «nuevo pedido» a menos que uses algún plugin o código personalizado que lo fuerce.

[Avanzado] He configurado WooCommerce para que cancele los pedidos sin pagar después de x minutos, ¿por qué no se están cancelando los pedidos con Multibanco y/o Payshop?

WooCommerce solo cancela automáticamente pedidos «Pendientes», no los que están «En espera», porque estos pedidos están configurados para pagarse mediante métodos offline (como este), y el pago puede ocurrir en cualquier momento, incluso después de que se cancele el pedido. A pesar de esto, si quieres asumir ese riesgo, simplemente cambia a true los filtros multibanco_ifthen_cancel_unpaid_orders y/o mbway_ifthen_cancel_unpaid_orders.
También puedes restaurar el inventario del producto de ese pedido cambiando a true a los filtros multibanco_ifthen_cancel_unpaid_orders_restore_stock y/o mbway_ifthen_cancel_unpaid_orders_restore_stock, aunque el equipo de WooCommerce no lo recomienda.
Ten en cuenta que la referencia de Multibanco o Payshop todavía estará activa y se puede pagar más tarde.

[Avanzado] ¿Puedo evitar que el plugin añada las instrucciones de pago y/o el mensaje de pago recibido en los correos electrónicos?

Puedes usar los filtros multibanco_ifthen_email_instructions_pending_send y/o mbway_ifthen_email_instructions_pending_send: return false y las instrucciones de pago no se incluirán en el correo electrónico de «nuevo pedido» – de todos modos no recomendamos hacerlo.
Puedes usar los filtros multibanco_ifthen_email_instructions_payment_received_send y/o mbway_ifthen_email_instructions_payment_received_send: return false y el mensaje de pago recibido no se incluirá en el correo electrónico de «procesando».

IfthenPay dice que mi URL de llamada de retorno está devolviendo un error 404. ¿Debería sentarme en una esquina y llorar o hay una solución?

¡No llores! ¡Hay una solución!
Probablemente tengas unos ajustes de enlaces permanentes raros (o no has configurado los enlaces permanentes) en tu instalación de WordPress.
Diles que cambien la URL de llamada de retorno de https://tuweb/wc-api/WC_Multibanco_IfThen_Webdados/?chave=[CHAVE_ANTI_PHISHING]&entidade=[ENTIDADE]&referencia=[REFERENCIA]&valor=[VALOR] a https://tuweb/?wc-api=WC_Multibanco_IfThen_Webdados&chave=[CHAVE_ANTI_PHISHING]&entidade=[ENTIDADE]&referencia=[REFERENCIA]&valor=[VALOR].

Necesito soporte técnico, ¿Con quién debería contactar, IfthenPay o Webdados?

Aunque este es el plugin oficial de IfthenPay para WooCommerce, el desarrollo y soporte lo ofrece Webdados.
Para el soporte gratuito/estándar deberías usar los foros de soporte aquí mismo en WordPress.org
Para soporte premium, urgente e integraciones experimentales deberías contactar con Webdados. Puede (y con seguridad pasará) que se apliquen cargos.

Cualquier soporte relacionado con pagos fallidos o autorizaciones de tarjetas de crédito deben dirigirse a IfthenPay.

¿Cumple este plugin con el Reglamento General de Protección de Datos europeo (RGPD)?

Este plugin no recopila ni envía a Webdados (el autor del plugin) o a IfthenPay (el procesador de pagos) ningún dato privado de la web, de los clientes o de los pedidos en la que está instalado.
En el módulo de MB WAY, se recopila el número de teléfono móvil para solicitar la autorización de pago y se puede procesar legitimamente en base al artículo 6 (1) (b) del RGPD.
La política de privacidad de IfthenPay se puede encontrar en https://ifthenpay.com/termosCondicoes

¿Puedo colaborar con una traducción?

Por supuesto. Ve a GlotPress y ayúdanos.

Reseñas

16 de febrero de 2021
A usar e recomendar a clientes há cerca de dois anos! Nunca tive problemas. Funciona tudo de forma espetacular, com os callbacks e as encomendas a serem marcadas como pagas automaticamente. Já tenho vários clientes que fizeram contrato na ifthenpay para usar nas lojas online, graças e este plugin.
27 de julio de 2020
Excelente plugin para a excelente forma de pagamento ifthenpay. Obrigado!
Leer todas las 16 reseñas

Colaboradores y desarrolladores

«Multibanco, MB WAY, Credit card and Payshop (IfthenPay) for WooCommerce» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

«Multibanco, MB WAY, Credit card and Payshop (IfthenPay) for WooCommerce» ha sido traducido a 2 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce «Multibanco, MB WAY, Credit card and Payshop (IfthenPay) for WooCommerce» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

5.1.2 – 2020-08-11

  • You can safely update this plugin if you’re running WooCommece 3.0 or newer but we’ll very soon drop support for WooCommerce previous to 3.4 (which was launched in May 2018)
  • It’s now possible to remove the new methods notifications by returning true to the multibanco_ifthen_hide_newmethod_notifications filter
  • Tested with 5.9-alpha-51588 and WooCommerce 5.6.0-rc.1

5.1.1 – 2020-06-16

  • Fix a bug on the credit card gateway where some payments were not recognised
  • Small tweaks and debug
  • Tested with 5.8-beta2-51167 and WooCommerce 5.4.1

5.1.0 – 2020-05-27

  • Several code tweaks, input sanitization and extra checks
  • Tested with WordPress 5.8-alpha-51034, WooCommerce 5.4.0-rc.1 and WooCommerce Blocks 5.2.0

5.0.1 – 2020-04-03

  • New multibanco_ifthen_send_email_instructions, mbway_ifthen_send_email_instructions, creditcard_ifthen_send_email_instructions and payshop_ifthen_send_email_instructions filters to allow removing the payment gateway instructions from emails
  • Fix Credit card settings fields not hiding when the key is not set
  • WooCommerce Blocks (4.7.0 and above) improvements: respect the Multibanco «Only for Portuguese customers» setting and fix icon size
  • Small copy adjustments
  • Tested with WordPress 5.8-alpha-50650, WooCommerce 5.2.0-rc.1 and WooCommerce Blocks 4.7.0

5.0.0 – 2020-03-16

  • Nuevo método de pago disponible: «Tarjeta de crédito o débito» (WooCommerce >= 4.0) – Tienes que registrar un anexo al contrato
  • Requiere WordPress 4.6 y WooCommerce 3.0 o superiores
  • Para compatibilidad con WooCommerce 2.6 tienes que usar la versión 4.4.9
  • Cambiado el nombre del plugin
  • Nueva y más rápida variable de MB WAY
  • Forzar el correo electrónico de «Nuevo pedido» al propietario de la tienda cuando hay un pago de Payshop
  • Eliminar los iconos que no eran pequeños
  • Renombrado de nuestra caja meta del pedido a «IfthenPay» por simplificar
  • Simplificar el modo en el que comprobamos si está activo WooCommerce
  • No cambiar la referencia de Multibanco al pagar de nuevo desde el área del cliente en el modo de «Referencias incrementales con fecha de caducidad» si la referencia todavía no ha caducado
  • Nuevos filtros para permitir el reposicionamiento de las instrucciones de pago en los correos electrónicos: multibanco_ifthen_email_hook, multibanco_ifthen_email_hook_priority, mbway_ifthen_email_hook, mbway_ifthen_email_hook_priority, creditcard_ifthen_email_hook, creditcard_ifthen_email_hook_priority, payshop_ifthen_email_hook y payshop_ifthen_email_hook_priority
  • Nuevo mbway_ifthen_pay_another_method_button_text para poder cambiar «elegir otro texto para el botón del método» en MB WAY
  • Corrección de fallos: Comprobación del estado «Completado» en mbway.js además de en «Procesando»
  • Corrección de errores: Aviso PHP en el modo «Referencias incrementales con fecha de caducidad» de Multibanco
  • Corrección de fallos: Al pagar de nuevo desde el área de cliente se enviaba un correo electrónico de la última referencia en el modo de «Referencias incrementales con fecha de caducidad» de Multibanco
  • Corrección de fallos: Al pagar de nuevo desde el área de cliente no se envía ningún correo electrónico si el cliente cambia de Multibanco a Multibanco en el modo de «Referencias incrementales con fecha de caducidad» y la referencia ya ha caducado
  • Revisión completa de readme.txt y hooks-examples.php
  • Varias pequeñas mejoras
  • Probado con WordPress 5.8-alpha-50535 y WooCommerce 5.1.0

4.4.9 – 2021-02-19

  • You can safely update this plugin if you’re running WooCommece 2.6.0 or newer but we’ll drop support for WooCommerce previous to 3.0 IN THE NEXT RELEASE
  • Last release before 5.0 (good news are on its way)
  • Fix force “New order” email to the store owner upon Multibanco payment on WooCommerce 5.0 and above
  • Tested with WordPress 5.7-beta2-50285 and WooCommerce 5.1.0-beta.1

4.4.8 – 2020-12-22

  • Fix minimum and maximum values for all gateways
  • Fix PHP notice
  • Tested with WordPress 5.7-alpha-49862 and WooCommerce 4.9.0-beta.1

4.4.7 – 2020-12-10

  • You can safely update this plugin if you’re running WooCommece 2.6.0 or newer but we’ll drop support for WooCommerce previous to 3.0 IN THE NEXT RELEASE
  • Requires WordPress 4.4 or above
  • Small readme.txt fix
  • Tested with WordPress 5.7-alpha-49782 and WooCommerce 4.8

4.4.6 – 2020-11-04

  • Bugfix setting the Multibanco order cancelation when using references with expiration (Thanks @josefreitas2)
  • Lay ground for a (yet to be confirmed) MB WAY refund functionality – Callback processing
  • Tested with WordPress 5.6-beta1-49314 and WooCommerce 4.7.0-rc.1

4.4.5 – 2020-08-11

  • Bugfix when sending order emails after a Payshop order is paid for
  • Tested with WordPress 5.5-RC3-48781, WooCommerce 4.4.0-rc.1 and WooCommerce Blocks 3.1.0

4.4.4 – 2020-08-05

  • New WooCommerce Blocks checkout only if the feature plugin is installed and activated
  • Bugfix on the Payshop callback activation request
  • Fix a PHP notice
  • Tested with WordPress 5.5-RC1-48708, WooCommerce 4.4.0-rc.1 and WooCommerce Blocks 3.1.0

4.4.3 – 2020-07-23

  • Revert showing the Multibanco «payment received» message on order completed emails (introduced on 4.4.0)
  • Only show WooCommerce Subscriptions options if the plugin is active
  • Only enable Multibanco support for the WooCommerce Blocks checkout if WooCommerce Blocks version is 3.0.0. or above and the support is enabled via the payment method options

4.4.2

  • Bugfix when WooCommerce Blocks 3.0.0 or above is active
  • Try to fix a fatal error when themes override the WooCommerce email templates with old (pre WooCommerce 2.6.0) versions
  • Tested with WordPress 5.5-beta3-48556, WooCommerce 4.3.1 and WooCommerce Blocks 3.0.0

4.4.1

  • Bugfix checking if order is paid when the «WooCommerce Order Status Manager» (by SkyVerge) plugin is active

4.4.0

  • New ifthen_unpaid_statuses filter to allow developers to set additional valid «unpaid» statuses for Multibanco, MB WAY and Payshop orders, besides the default ones («on-hold», «pending» and «partially-paid»). The statuses are used for callback validation, SMS message template, show order as unpaid on the backoffice, show «Pay» button on My Account orders list, issue new references if order value changes on the backoffice, reduce order stock rules, thank you page and email payment instructions.
  • Enforce requirement of WooCommerce 2.6.0 or above and bumped the WC requires at least tag accordingly
  • Enforce requirement of WordPress 4.4 or above and bumped the Requires at least tag accordingly
  • New filter ifthen_debug_log_extra that will allow developers to further debug the Multibanco reference generation (for now)
  • Try to fix a (very odd) behavior where the customer is redirected to the «pay order» page when completing checkout, which will generate a duplicate Multibanco payment reference (as expected).
  • New filters to hide the «Pay» button on «My Account» (which we do not recommend): multibanco_ifthen_hide_my_account_pay_button, mbway_ifthen_hide_my_account_pay_button, payshop_ifthen_hide_my_account_pay_button
  • (VERY) Experimental Multibanco support for the new [https://woocommerce.wordpress.com/category/blocks/](WooCommerce Blocks) [https://woocommerce.wordpress.com/2020/05/27/available-for-testing-a-block-based-woocommerce-cart-and-checkout/](checkout experience)
  • Tested with WordPress 5.5-beta2-48501 and WooCommerce 4.3.0

4.3.0

  • New instant callback activation method via webservice instead of email
  • When checking if the customer is from Portugal (to show/hide the payment methods) we now also check the shipping country
  • Only apply our WooCommerce 4.2.0 fix if version is equal or above 4.2.0 and below 4.3.0 (a WooCommerce fix is scheduled to be released on that version)
  • More prominent admin notice regarding old WordPress, WooCommerce or PHP versions in use
  • Remove old Spanish translation from the plugin folder, now that we have a proper one on WordPress.org thanks to https://profiles.wordpress.org/fernandot
  • Tested with WordPress 5.5-alpha-48241 and WooCommerce 4.3.0-rc.2

4.2.3

  • Show paid date and time on the order admin metabox
  • Better handling when the customer decides to change payment method in «My Account»
  • Only apply our WooCommerce 4.2.0 fix if «Prices entered with tax» is set to «Yes»
  • Code refactoring to prepare the next phase of supporting only WooCommerce 3.0 and above

4.2.2

  • Temporarily, while this WooCommerce bug is not solved, the value will not be matched when checking the callback and no new Multibanco or Payshop reference will be issued if the order changes value
  • Clarification on the settings page that the same set of entities or keys should never be used in more than one platform
  • Links to the Payshop agents and CTT stores search on the Payshop method extra instructions default message
  • Fix MB WAY phone number field hidden on some themes
  • Fix MB WAY and Payshop key fields appearance on the payment method settings
  • Show the Pay button on My Account for Multibanco and Payshop «On hold» orders
  • Better information when MB WAY order is already paid for
  • Better debug when requesting the MB WAY payment to the IfthenPay webservice
  • readme.txt tweaks
  • Tested with WordPress 5.5-alpha-47923 and WooCommerce 4.2.0

4.2.1

  • Bugfix issuing new Multibanco or Payshop payment details when the order value is changed on wp-admin on WooCommerce 4.0 and above
  • Extensions and other premium plugins list on the payment gateways settings page
  • Tested with WordPress 5.5-alpha-47547 and WooCommerce 4.0.1

4.2.0

  • Experimental: Automatically cancel unpaid orders after the Multibanco reference expires, if the «Incremental references with expiration date» mode is active
  • Bugfix when hiding Multibanco settings fields, if the «Incremental references with expiration date» mode is active
  • New hourly cron event for general plugin use
  • Tested with WooCommerce 4.0.0-rc.1
  • Requires WooCommerce 2.6.0 or above
  • For WooCommerce 2.5.0 support you need to use version 4.1.3

4.1.3

  • Fix bug on the subscription order edit screen

4.1.2

  • Requires WordPress 4.1 or above
  • Requires WooCommerce 2.5.0 or above
  • Requires PHP 5.6 or above
  • For WordPress 4.0, WooCommerce 2.4.0 and PHP 5.5 support you need to use version 4.1.1.2

4.1.1.2

  • Remove other plugins publicity from the settings page

4.1.1.1

  • Admin notice regarding old WordPress, WooCommerce or PHP versions in use (if you like to live in danger, you may disable it by returning false to the ifthen_show_old_techonology_notice filter)
  • Better readme.txt information regarding updates
  • Fix version number

4.1.0

  • This is the first release aimed at bringing the plugin, and it’s users, to recent technology (many more will follow)
  • Requires WordPress 4.0 or above
  • Requires WooCommerce 2.4 or above
  • Requires PHP 5.5 or above
  • For WordPress 3.8 and WooCommerce 2.2 support you need to use version 4.0.8
  • Use SVG icons and banners (except on emails where we still use PNG because SVG is not fully supported)
  • Deprecate big icons on the checkout
  • Tested with WordPress 5.3.3-alpha-46995 and WooCommerce 3.9.0-rc.2

4.0.8

  • Fix WooCommerce Subscriptions experimental integration
  • Tested with WooCommerce 3.8.1

4.0.7

  • Fix Payshop small icon size
  • Small fix on MB WAY WooCommerce Subscriptions support
  • Tested with WordPress 5.3.1-alpha-46771

4.0.6

  • Tested with WordPress 5.2.5-alpha and WooCommerce 3.8.0

4.0.5

  • Fix fatal error on WooCommerce below 3.4.0 when MB WAY or Payshop were not initialized yet

4.0.4

  • Fix bug when setting the Multibanco SMS instructions
  • Improve WooCommerce Deposits by webtomizer compatibility

4.0.3

  • Deactivate the payment methods if the required settings are not filled in
  • Fix bug when showing the MB WAY expiration date on the order admin page
  • Fix bug on the Payshop intructions on the thank you page when the reference has no expiration date
  • Correctly disable payment gateways if value is not on the allowed interval when payment inside the My account page
  • readme.txt adjustments

4.0.2

  • Fix version number

4.0.1

  • Fix small icons by default
  • Move mbway.js to the new assets folder and fix scripts version number
  • Fix small bug on Payshop that allowed the anti-phishing key to be changed via the settings page after it was set
  • Better MB WAY payment request debug

4.0.0

  • Payshop support (WooCommerce >= 3.0)
  • Plugin name change
  • Enforce payment gateways minimum and maximum default values
  • Change dumb quotes to smart quotes
  • Add payment gateway logo to settings page and order metabox
  • Admin CSS and JS as external assets instead of inline
  • Check for order currency instead of global WooCommerce currency when the order already exists
  • Several minor bugfixes and minimal code refactoring

3.6.4

  • Bugfix when creating a new reference if the order value changes while editing it on wp-admin
  • Tested with WordPress 5.2.3-alpha-45666 and WooCommerce 3.7.0-rc.1

3.6.3.1

  • Bugfix on the WooCommerce Subscriptions integration (Thanks (@vascothemudo)
  • Tested with WooCommerce 3.6.2

3.6.3

  • Add the partially-paid status to Multibanco valid pending payment status when checking the callback
  • New multibanco_ifthen_valid_callback_pending_status and mbway_ifthen_valid_callback_pending_status filters when checking for pending payment orders on Multibanco and MB WAY callbacks (WooCommerce >= 3.0)
  • Tested with WordPress 5.1.1 and WooCommerce 3.6.0-rc.1

3.6.2.2

  • 30 seconds timeout instead of 10 seconds when calling IfthenPay’s MB WAY webservice, because SIBS is having performance problems which results in IfthenPay being unable to reply to our request on time

3.6.2.1

  • Check for WooCommerce below 2.2 (apparently it’s still around) and stop the plugin initialization if found

3.6.2

  • 10 seconds timeout instead of 5 seconds when calling IfthenPay’s MB WAY webservice
  • New mbway_ifthen_webservice_timeout filter
  • Callback verification fallback in the case the webservice times out but the MB WAY payment request is sent and paid anyway
  • Small copy fixes

3.6.1

  • Fix callback activation request broken by WooCommerce 3.5.5
  • Better feedback if the callback activation email cannot be sent
  • readme.txt improvements

3.6.0.1

  • Changing Payment Methods support for WooCommerce Subscriptions (Thanks @ptravassos)

3.6

  • Support for Multibanco references with expiration date (needs activation by IfthenPay)
  • Payment instructions tables code refactoring
  • Expiration date/time on the payment instructions tables (when applicable)
  • Better workflow when requesting a new MB WAY payment, namely the possibility to change the phone number
  • Minor bugfix on the MB WAY payment instructions
  • Filterable interval on mbway.js

3.5

  • Allow the customer to change payment method from the “Thank you” and “View order” (My account) page for orders with MB WAY as the payment method
  • Allow shop owner to request MB WAY payment again after 6 minutes of the original request (instead of the previous 15 minutes)
  • Change the payment instructions table on the “View order” (My account) page after the MB WAY payment request is expired and the order is still not paid (also a new mbway_ifthen_thankyou_instructions_table_html_expired filter)
  • Small debug tweaks on mbway.js
  • Minor tweaks on the plugin and readme.txt copy
  • Tested with WordPress 5.1 and WooCommerce 3.5.5

3.4.3

  • New option (activated by default) to force the resending of the «New Order» email (not the British Synthpop band), when the Multibanco payment is done via callback (this was happening erroneously before we fixed the stock management issue on 3.4.2, but we understand this is usefull for the Multibanco payment method)

3.4.2

  • Fix stock management when it’s set to decrease on order
  • New (experimental) feature: Request MB WAY payment again, on the order edit screen, available 15 minutes after the original request

3.4.1

  • Small tweak on mbway.js
  • Small tweak on the MB WAY payment instructions
  • Dropped support for WooCommerce prior to 2.2 / Bumped WC requires at least tag
  • Tested with WooCommerce 3.5.2 / Bumped WC tested up to tag
  • Tested with WordPress 5.0 / Bumped Tested up to tag

3.4

  • WooCommerce Deposits by webtomizer (experimental) integration on WooCommerce >= 3.0 (sponsored by mojobrands.net)
  • Bugfix: MB WAY details not showing up on wp-admin
  • Bugfix: Reduce stock correctly according to settings since WooCommerce changed it’s behaviour in 3.4.0

3.3.1

  • Improved the multibanco_ifthen_thankyou_instructions_table_html, multibanco_ifthen_set_on_hold, multibanco_ifthen_email_instructions_pending_send, multibanco_ifthen_email_instructions_table_html, multibanco_ifthen_sms_instructions, multibanco_ifthen_email_instructions_payment_received_send, multibanco_ifthen_email_instructions_payment_received, mbway_ifthen_thankyou_instructions_table_html, mbway_ifthen_enable_check_order_status_thankyou, mbway_ifthen_email_instructions_pending_send, mbway_ifthen_email_instructions_table_html, mbway_ifthen_email_instructions_payment_received_send, mbway_ifthen_email_instructions_payment_received, multibanco_ifthen_cancel_unpaid_orders_restore_stock and mbway_ifthen_cancel_unpaid_orders_restore_stock filters by passing the order id to them
  • Renamed filters_examples.php to hooks-examples.php and improved it with examples for all the plugin hooks

3.3

  • New actions for developers: multibanco_ifthen_created_reference, mbway_ifthen_created_reference, multibanco_ifthen_unpaid_order_cancelled, mbway_ifthen_unpaid_order_cancelled, multibanco_ifthen_callback_payment_complete, multibanco_ifthen_callback_payment_failed, mbway_ifthen_callback_payment_complete and mbway_ifthen_callback_payment_failed
  • Tested with WordPress * / Bumped Tested up to tag
  • Downgraded the Requires at least tag to reflect the fact the plugin is still compatible with WooCommerce 2.0 and above
  • Tested with WooCommerce 3.5.1 / Bumped WC tested up to tag
  • Added WC requires at least tag on the plugin main file

3.2.1.2

  • Fix when getting Order WPML language on WooCommerce below 3.0
  • Tested with WooCommerce 3.5 / Bumped WC tested up to tag

3.2.1.1

  • Fixed a small bug where the Multibanco payment details would be regenerated if, for some exotic reason, an order value was changed on wp-admin for already paid orders

3.2.1

  • New multibanco_ifthen_multibanco_settings_fields and multibanco_ifthen_mbway_settings_fields filters to allow 3rd party plugins to add fields to the Multibanco and MB WAY settings screen
  • index.php file because «best practices»
  • Small coding standards fixes

3.2

  • New behaviour for special entities that don’t allow repeated payments in a specific time frame (only for WooCommerce 3.0 and above)
  • New multibanco_ifthen_base_mbwaykey filter to be able to change the base MB WAY Key used to generate the payment details, based on the order, which may be useful for marketplaces
  • Bumped WC tested up to tag

3.1.2

  • Fix on the Twilio SMS integration (Thanks iOutlet)

3.1.1.2

  • SVN mess-up fix

3.1.1

  • GDPR chit-chat on the FAQ
  • We no longer store the mobile phone number used for MB WAY

3.1

  • Complete grammar and spelling review
  • MB WAY description limited to 70 characters (Site name #order_id)
  • Bumped WC tested up to tag

3.0.6

  • Fixed a fatal error bug if the order is not found when the MB WAY callback is invoked by IfthenPay
  • Better feedback to the customer, informing that there are only 5 minutes to complete the payment – because it seems SIBS has changed the timeout and told no one about it ¯_(ツ)_/¯

3.0.5

  • Better WooCommerce detection
  • Always round MB WAY values to two decimals
  • Clean problematic characters from the MB WAY payment description
  • Small fixes
  • Bumped WC tested up to tag

3.0.4

  • Debug when contacting the IfthenPay webservice to create the MB WAY payment request (shame on us…)
  • Better feedback to the customer, informing that there are only 15 minutes to complete the payment
  • Bumped WC tested up to tag

3.0.3

  • Better (and persistent) feedback related to the callback still not being asked to IfthenPay
  • Removed the mbway_ifthen_set_on_hold filter that no longer makes sense since 3.0.2

3.0.2

  • Changed the default MB WAY order status to «pending», because there’s a time limit to pay for the order. Orders will be automatically canceled if you use the «Manage stock» and «Hold stock» settings on WooCommerce. You can use the «on-hold» behaviour like in Multibanco if you return false to mbway_ifthen_order_initial_status_pending. (Thanks for the mentoring @chrislema)
  • Fix: Multibanco logo was not showing up on the email notifications after 3.0
  • Fix: MB WAY Callback testing when WP_DEBUG = true
  • Fix: Checking for «pending» order status if applicable
  • Enhancement: hide callback and anti-phishing key if the settings were still not saved at least one time

3.0.1

  • Fix: Fatal error for Polylang using WPML compatibility

3.0

  • MB WAY support
  • Code refactoring
  • New retina ready and small icons
  • Several fixes

2.1.4

  • Fixed a bug where on WooCommerce < 3.0 references would be re-used incorrectly
  • Re-enabled the use of references when they’re not used anymore on on-hold or pending orders

2.1.3

  • Small change for compatibility with the new “WC – APG SMS Notifications” timer for on-hold status messages functionality
  • Bumped WC tested up to tag

2.1.2.1

  • Fix stable tag

2.1.2

  • Fix: Some code introduced in version 2.1 was only compatible with WooCommerce 2.6 and above and on minor versions a fatal error was thrown

2.1.1.1

  • Tested with WooCommerce 3.3

2.1.1

  • New multibanco_ifthen_cancel_unpaid_orders_restore_stock filter to which true should be returned if you want the stock for the products on auto-cancelled orders (by the multibanco_ifthen_cancel_unpaid_orders filter) to be restored;
  • FAQ improved;

2.1

  • WooCommerce Subscriptions (experimental) integration on WooCommerce >= 3.0: Automatically sets renewal orders to be paid by Multibanco and generates the new payment details;
  • Fix: Deletes payment details from orders that no longer have Multibanco as the payment method;
  • Do not show payment instructions in the “Thank you” page unless the order is on hold or pending (edge cases);
  • Show payment instructions in the order details screen on «My Account»;

2.0.4.1

  • Version fix

2.0.4

  • YITH WooCommerce SMS Notification plugin integration: it’s now possible to add Multibanco payment details to the SMS message sent by this plugin by using the {multibanco_ifthen} variable on the message template

2.0.3

  • New multibanco_ifthen_email_instructions_pending_send filter to which you can return false so that the payment instructions are not included in the «new order» email, although we do not recommend doing it
  • New multibanco_ifthen_email_instructions_payment_received_send filter to which you can return false so that the payment received message is not included in the «processing» email
  • Bumped Tested up to tag

2.0.2

  • Database abstraction on WooCommerce 3.0 and above, by using wc_get_orders
  • Small adjustments

2.0.1

  • New multibanco_ifthen_set_on_hold filter to be able to leave the order pending instead of on hold by returning false – use at your own risk
  • New multibanco_ifthen_cancel_unpaid_orders filter to be able to enable order auto cancelation by WooCommerce, if «Manage stock» and «Hold stock (minutes)» are configured, by returning true – use at your own risk
  • Bumped Tested up to and WC tested up to tag

2.0

  • Twilio SMS Notifications plugin integration: it’s now possible to add Multibanco payment details to the SMS message sent by this plugin by using the %multibanco_ifthen% variable on the message template
  • Small improvements in coding standards
  • readme.txt improvements

1.9.4

  • Support for new special entities that allow using the order id to generate the reference (because no check digits are needed), and, in the future, will also allow expiration date
  • Better feedback on the logs location on WooCoommerce 3.0 and above

1.9.3.5

  • Rollback the French translation to the local plugin folder, because it’s still not approved on GlotPress

1.9.3.4

  • Tested with WooCommerce 3.2
  • Added WC tested up to tag on the plugin main file
  • Bumped Tested up to tag

1.9.3.3

  • Avoid duplicate email instructions in some edge cases (fix)

1.9.3.2

  • Avoid duplicate email instructions in some edge cases

1.9.3.1

  • Removed the translation files from the plugin lang folder (translations are now managed width WordPress.org’s GlotPress tool and will be automatically downloaded from there)

1.9.3

  • Fixed text domain (changed from multibanco_ifthen_for_woocommerce to multibanco-ifthen-software-gateway-for-woocommerce) to make it compatible with WordPress.org translation system (Glotpress)
  • Fix several strings that were using the woocommerce textdomain instead of our own
  • Bumped Tested up to tag

1.9.2

  • Using WC() instead of $woocommerce
  • Using wc_reduce_stock_levels() instead of $order->reduce_order_stock() on WooCommerce 3.0 and above
  • Using WC()->customer->get_billing_country() instead of WC()->customer->get_country() on WooCommerce 3.0 and above

1.9.1

  • Started using the new WooCommerce 3.0 logging system
  • Quick (and dirty) fix for a bug on WooCommerce 3.0 that is not allowing payment gateways to add information to transactional emails
  • Improved debug logging

1.9

  • Tested with WooCommerce 3.0.0-rc.2
  • Changed version tests from 2.7 to 3.0
  • New WC_Multibanco_IfThen_Webdados class for better code organization
  • New WC_Order_MB_Ifthen class (extends WC_Order) to be used by the plugin to get and set order details
  • Bumped Tested up to tag

1.8.9

  • Multibanco payment option is now not shown if the currency is not Euro (Thanks @topsolutions)
  • Bumped Tested up to tag

1.8.8.2

  • Bumped Tested up to tag

1.8.8.1

  • Small CSS fix so that the payment instructions table on the «Thank You» page is not partially hidden on some mobile devices (Thanks Jorge Fonseca for the report)

1.8.8

  • WPML Fix: Shows the payment instructions on the correct language on the “Thank You” page and on Order Status and Customer Notes emails
  • Spanish basic translation (email strings only)

1.8.7

  • Started preparations for the new order meta setter and getter functions coming on WooCommerce 2.7
  • New mbifthen_format_ref function to format the reference with spaces after each 3 number (used by the plugin but can also be used externally)
  • New multibanco_ifthen_format_ref applied on the string to be returned from the mbifthen_format_ref function
  • Updated filters examples

1.8.6

  • Warn the store owner that if he ever changes URL he may have to ask IfthenPay to update the callback URL
  • Admin notice in case this plugin is active and WooCommerce is not
  • Bumped «Requires at least» tag

1.8.5

  • Small change to avoid Polylang removing the payment instructions from the client emails (Thanks Tiago Restivo for the report)
  • Bumped «Tested up to» tag

1.8.4

  • New multibanco_ifthen_base_ent_subent filter to be able to change the base Entity and Subentity used to generate the payment details, based on the order, which may be useful for marketplaces
  • Settings link on the plugins list
  • Bumped «Tested up to» tag

1.8.3

  • French translation (Thanks vinha.pt / vinha.co.uk / vinha.fr)

1.8.2

  • Fix: Fatal error on WooCommerce Subscriptions admin screen if the «Only for Portuguese customers?» option was activated (Thanks TwistedStudio)
  • FAQ update

1.8.1

  • Fix: The callback url sent to IfthenPay would use http:// even if ssl was active
  • Bumped «Tested up to» tag

1.8

  • If the order changes value on the backend, normally by adding or removing products, a new reference is created to replace the old one. The customer can be notified of the new reference if that option is checked on the plugin settings
  • On orders created on the backend the reference is now created correctly, even if it’s not sent to the customer email because of a WooCommerce bug (that is going to be fixed when this commit goes into production https://github.com/woothemes/woocommerce/commit/7dadae7bc80a842e10e78a972334937ed5c4416a)
  • Choose either to include the payment instructions on emails sent to admin, or not
  • Better feedback on the payment details info box on the backend
  • Small adjustments on the settings screen, typos fixing and code improvments

1.7.9.1

  • Possibility to dismiss the new “Callback” activation notice
  • New warning only on the settings page, before the “Callback” activation button

1.7.9

  • Warning for new users that haven’t yet asked IfthenPay for the “Callback” activation
  • New multibanco_ifthen_email_instructions_payment_received filter to customize the “Multibanco payment received” text on emails
  • Bugfix: Sometimes the “Multibanco payment received” wouldn’t show up on the client email
  • Small settings screen fixes
  • Minor spelling errors correction (Thanks @dmatos)

1.7.8

  • Better reporting if it’s not possible to generate the reference

1.7.7.1

  • Fixed “Tested up to” field

1.7.7

  • WordPress 4.4, WooCommerce 2.4.12 and PHP 7 compatibility check – All good!

1.7.6

  • Changes to the settings page in order to validate Entity and Subentity input
  • Bumped required WordPress version to match the same requirements WooCommerce has (4.1)

1.7.5.1

  • readme.txt changes

1.7.5

  • It’s now possible to set the extra instructions text below the payment details table on the “Thank you” page and “New order” email on the plugin settings screen
  • Small adjustments on the WPML detection code
  • Fix: Polylang conflict (Thanks fana605)
  • Updated filters examples

1.7.4.1

  • Minor fixes on wrong links to set the WooCommerce currency (Thanks JLuis Freitas)

1.7.4

  • Added new debug variables to the callback URL: date and time of payment and used terminal (this information will only be visible on the “Order Notes” administration panel)
  • Minor spelling errors correction

1.7.3.1

  • Changelog version fix

1.7.3

  • Bug fixes on filters_examples.php on the multibanco_ifthen_email_instructions_table_html and multibanco_ifthen_sms_instructions examples (props to Jorge Fonseca)

1.7.2

  • Small changes on the callback validation to better debug possible argument errors

1.7.1

  • Ask IfthenPay for “Callback” activation directly from the plugin settings screen
  • Settings screen fields re-organization in a more logical order
  • Adjustments in the plugin description and FAQ
  • Minor fixes to avoid a PHP Notice on WPML string registration

1.7.0.2

  • Fixing version numbers

1.7.0.1

  • Uploading missing images

1.7

  • Official IfthenPay plugin status \o/
  • New “SMS payment instructions” class to be able to integrate with SMS sending plugins in the future
  • New multibanco_ifthen_sms_instructions filter to customize the SMS payment instructions
  • WooCommerce – APG SMS Notifications plugin integration: it’s now possible to add the Multibanco payment details to the SMS message sent by this plugin by using the %multibanco_ifthen% variable on the message template
  • Shows alternate callback URL on WordPress installations that don’t have pretty permalinks active (Why? Oh why??)
  • New callback test tool on the edit order screen, if WP_DEBUG is set to true
  • WPML: Tries to fix the locale if WPML is active and we’re loading via AJAX
  • WPML: Get’s the title in the correct language for the icon’s alt attribute
  • WPML: Shows the payment instructions on the correct language on the “Thank You” page and on Order Status and Customer Notes emails
  • Now using WooCommerce’s payment_complete function so that orders with only downloadable items go directly to completed instead of processing
  • Fix: eliminates duplicate “payment received” messages on emails
  • Fix: Use “new” (2.2+) WooCommerce order status when searching for orders to be set as paid via callback (shame on us)
  • “Commercial information” and “Technical support” information and links on the right of the plugin settings screen
  • Adjustments in the plugin description and FAQ

1.6.2.1

  • Fixes a fatal error if WPML String Translation plugin is not active

1.6.2

  • WPML compatibility: You can now set the English title and description at the plugin’s settings screen and then go to WPML > String Translation to set the same for each language
  • Fix: get_icon() throw a notice

1.6.1

  • It’s now possible to change the payment gateway icon HTML using the woocommerce_gateway_icon filter. See filters_examples.php
  • Fix: Debug log path.
  • Fix: multibanco_ifthen_thankyou_instructions_table_html filter example had an error
  • Minor Portuguese translation tweaks.

1.6

  • Ahora es posible decidir si reducir el inventario cuando se confirma el pago mediante la llamada de retorno (por defecto) o cuando el cliente hace el pedido. En el primer caso no tienes que corregir el inventario si nunca se paga el pedido, pero tampoco tendrás la cantidad reservada para este pedido. En el segundo caso tendrás que corregir manualmente el inventario si no se paga nunca el pedido.
  • Hay 2 filtros que permiten cambiar las instrucciones de pago en la página de «Agradecimiento» y en el correo electrónico del cliente. Puedes elegir o manipular el HTML por defecto o crear el tuyo propio. Mira en filters_examples.php
  • Minor Portuguese translation tweaks.

1.5.1

  • Minor visual tweaks
  • Fix: eliminated some notices and warnings

1.5

  • It’s now possible to enable this payment method only for orders below a specific amount
  • Fix: No more values passed by reference, in order to avoid “deprecated” notices from PHP
  • Fix: Bug on the option introduced on version 1.3

1.4.2

  • Removed unused add_meta_box code

1.4.1

  • Minor Multibanco logo improvements (Thanks Gumelo)
  • Fix: Small bug when detecting multisite installs

1.4

  • WordPress Multisite support

1.3

  • It’s now possible to enable this payment method only for orders above a specific amount

1.2

  • Added the ability to receive callback logs on an email address
  • Fixed “Order Status Emails for WooCommerce” plugin detection (soon to be released)
  • Fixed “IfthenPay” link

1.1

  • Changed plugin name and instructions to reflect the new company/gateway name “IfthenPay” instead of “Ifthen Software”
  • Fix: Changed textdomain calls from a variable to a string
  • Fix: Icon and banner URL now uses plugins_url function instead of WP_PLUGIN_URL constant
  • “Order Status Emails for WooCommerce” plugin integration (soon to be released, or not…)

1.0.1

  • Fix: On some environments some labels were not being translated correctly
  • Minor changes to allow running upgrade tasks

1.0

  • Versión inicial.