Piraeus Bank WooCommerce Payment Gateway


This plugin adds Piraeus Bank paycenter as a payment gateway for WooCommerce. A contract between you and the Bank must be previously signed. Based on original plugin „Piraeus Bank Greece Payment Gateway for WooCommerce“ by emspace.gr [https://wordpress.org/plugins/woo-payment-gateway-piraeus-bank-greece/]

It uses the redirect method, and SSL is not required.

Requires SOAP installed in the server / hosting.

Important Notice

  1. Piraeus Bank has announced that it will gradually abolish the Preauthorized Payment Service for all merchants, beginning from the ones obtained MIDs from 29/1/2019 onwards.
    You are highly recommended to disable the preAuthorized Payment Service as soon as possible.

  2. We would like to inform you that our Plugin is compatible with the 3D Secure version 2 changes required from Piraeus bank.


Provides pre-auth transactions and free instalments.

HTTP Proxy

In case your server doesn’t provide a static IP address for your website, you can use an HTTP Proxy for outgoing requests from the server to the bank. The following fields need to be filled for http proxying:
HTTP Proxy Hostname: Required. If empty then HTTP Proxy is not used.
HTTP Proxy Port: Required if HTTP Proxy Hostname is filled.
HTTP Proxy Login Username/Password: Optional.


Just follow the standard WordPress plugin installation procedure.

Provide to Piraeus bank at epayments@piraeusbank.gr the following information, in order to provide you with test account information.
* Website url : http(s)://www.yourdomain.gr/
* Referrer url : http(s)://www.yourdomain.gr/checkout/
* Success page : http(s)://www.yourdomain.gr/wc-api/WC_Piraeusbank_Gateway?peiraeus=success
* Failure page : http(s)://www.yourdomain.gr/wc-api/WC_Piraeusbank_Gateway?peiraeus=fail
* Cancel page : http(s)://www.yourdomain.gr/wc-api/WC_Piraeusbank_Gateway?peiraeus=cancel

* Website url : http(s)://www.yourdomain.gr/
* Referrer url : http(s)://www.yourdomain.gr/checkout/
* Success page : http(s)://www.yourdomain.gr/?wc-api=WC_Piraeusbank_Gateway&peiraeus=success
* Failure page : http(s)://www.yourdomain.gr/?wc-api=WC_Piraeusbank_Gateway&peiraeus=fail
* Cancel page : http(s)://www.yourdomain.gr/?wc-api=WC_Piraeusbank_Gateway&peiraeus=cancel

Response method : GET / POST
Your’s server IP Address


CardHolder Name Field

According to Piraeus bank’s technical requirements related to 3D secure and SCA, the cardholder’s name must be sent before the customer is redirected to the bank’s payment environment. You choose not to show this field by uncheck the „Enable Cardholder Name Field“ in plugin’s settings, we will automatically send the full name inserted for the order, with the risk of having the bank refusing the transaction due to the validity of this field.

Enable Debug Mode

In order to enable the debug mode, you should add in your wp-config file (in the root folder of installation) the following lines:
define(‚WP_DEBUG‘, true);
define(‚WP_DEBUG_LOG‘, true);
define(‚WP_DEBUG_DISPLAY‘, false);

Then you have to enable the debug mode from plugin’s settings page.

Missing states information from a country

Woocommerce have a list of states for each country, from where we send the information to the Piraeus Bank for the fields BillAddrState, ShipAddrState.
But for some countries i.e. Cyprus, Germany woocommerce don’t have the appropriate informations.
In these cases you should follow the instructions of Woocommerce to add/edit States.


30. April 2024
First of all thank you for a great plugin. It was updated 2 months ago and still works flawlesly. However The latest version contains a small but that mainly appears on the users page in wp-admin.It’s visible if you use the query monitor and has something to do with the way the hooks are implemented. Obviously they do not need to fire in wp-admin. Only on the checkout page.Here is the error:Fatal error: Uncaught Error: call_user_func_array(): Argument #1 ($callback) must be a valid callback, class WC_Piraeusbank_Gateway does not have a method „add_woocommerce_customer_meta_fields“in /home/user/public_html/wp-includes/class-wp-hook.php on line 324 Call stack: WP_Hook::apply_filters()wp-includes/plugin.php:205 apply_filters()wp-content/plugins/woocommerce/includes/admin/class-wc-admin-profile.php:147 WC_Admin_Profile::get_customer_meta_fields()wp-content/plugins/woocommerce/includes/admin/class-wc-admin-profile.php:166 WC_Admin_Profile::add_customer_meta_fields()wp-includes/class-wp-hook.php:324 WP_Hook::apply_filters()wp-includes/class-wp-hook.php:348 WP_Hook::do_action()wp-includes/plugin.php:517 do_action()wp-admin/user-edit.php:875 require_once()wp-admin/profile.php:18 Search your installations… you know it to be true…Is there a way to have a fix on that?
10. Dezember 2022
Επιλεγοντας τις νεοτερες εκδοσεις PHP (8.0.26 και μετα) το προσθετο ενω λειτουργεί κανονικα και ολοκληρωνει τις πληρωμες, δημιουργεί προβλημα σε αλλο, ασχετο σημειο του site. το προβλημα διαγνωστηκε με το Query Monitor. το συγκεκριμενο προβλημα σταματα στην εκδοση PHP 7.4.33. Εχω στείλει στους δημιουργους του προσθετου μηνυματα για το συγκεκριμενο προβλημα και δεν ανταποκριθηκε κανενας…..ποτε…………
Lies alle 26 Rezensionen

Mitwirkende & Entwickler

„Piraeus Bank WooCommerce Payment Gateway“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:


„Piraeus Bank WooCommerce Payment Gateway“ wurde in 1 Sprache übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.

Übersetze „Piraeus Bank WooCommerce Payment Gateway“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.



Fix bug in 1.7.0


Fix vulnerability for sql injection

Compatibility with Woocommerce 6.2.1


Added technical specs needed for the bank, rendered in the settings page
Render error descriptions
Update Translations
Add option to enable/disable for the 2nd payment email with transaction details


Extra validations checks for phone numbers
Compatibility with Woocommerce 5.0
Add text for „without installation“ option


Extra validations checks for phone numbers
Add Germany’s states list in woo commerce


Add cardholder name input field in checkout
Extra validation for foreign countries state field
Add cyprus states list in woocommerce
Add debugging mode, to log certain information
Replaced deprecated reduce_order_stock with wc_reduce_stock_levels
Fix minor php warnings


extra validation for country calling number
extra fallback if no shipping address available
add transaction id in order note


Compatibility with PSD2 (3D Secure version 2)


fix an issue with proxy settings


Sanitize Data
update compatibility status with WooCommerce 4.3.0


update compatibility status with WooCommerce 4.1.0


update compatibility status with WooCommerce 4


fix release version


Update translations


Added max size for Logo of Piraeus Bank


For downloadable products, auto mark the order as completed only if all the products are downloadable
Update translations
Added option to display or not Piraeus Bank’s logo in checkout page.


POST response method is now available
Added Max number of instalments based on order total
Support for English, German and Russian language in redirect page.


Fix issue for failed status of order but with paid transaction


Bug Fixes (Pay again, after failed payment attempt)


New Piraeus API encryption algorithm


Added Proxy configuration option.


WooCommerce backwards compatible


WooCommerce 3.0 compatible


Text changed. New Title[GR]: Με κάρτα μέσω Πειραιώς


Bug Fixes


Bug Fixes


Initial Release