PostFinance for WooCommerce Plugin

The WordPress plugin TWINT for WooCommerce adds the mobile payment method TWINT to your online shop and lets customers pay for orders using their smartphones (more about TWINT).

During the checkout process the plugin communicates with the servers of TWINT in the background and the customer never leaves your website. After a successful payment the WooCommerce order status and stock is automatically updated and the customer is redirected to the confirmation page.

Updates are available on the plugins screen in the WordPress backend after activating the license.

In addition to this plugin you will need a free TWINT business account to receive payments.

Please read the important information in the documentation to make sure that your server fulfills the requirements.


  • Payment gateway for payments using the TWINT app.
  • Secure payment processing in the background. The customer never leaves the shop during payment.
  • Compatible to WooCommerce 2.0.x – 3.8.x, WordPress 3.8-5.2.x
  • The license grants you updates and support (by email) for one year for the number of websites the license is valid for.
  • The plugin will not be locked when a license expires and you are allowed to use it for the number of websites the license was initially purchased for but only a valid license guarantees that the plugin works flawlessly in the future.
  • Plugin in German and English.
  • Documentation in German and English.
  • Compatible to WMPL.
  • Directly update the plugin from the WordPress backend.
  • Optional installation service (CHF 50.- per website/shop).
  • Get 30% off the normal price when renewing the plugin.


  • TWINT account.
  • Valid SSL certificate for the domain of your website.
  • SOAP module (SoapClient) activated on your server. Can be activated in the PHP settings of your web hosting or by directly asking your web host.


  • The license entitles you to use the plugin for the purchased number of end products (end product: One application, e.g. one website).
  • The license includes updates and support (by e-mail) for one year for the purchased number of websites.
  • You can cancel automatic renewals of payments anytime. In this case, the license will be valid until the end of the paid period.
  • Die automatische Erneuerung der Lizenz kann jederzeit gekündigt werden. Die Lizenz ist in dem Fall gültig bis zum Ende der bezahlten Periode.
  • You are allowed to use the plugin for the purchased number of websites after the expiration of the license. However, the plugin is only guaranteed to work in the future with a valid license.
  • For WordPress multisite installations you need to purchase the plugin for the installed number of sites.
  • You are not allowed to sell or distribute the plugin.
  •  x 

    Billed yearly until cancelled

  •  x 

    Billed yearly until cancelled

  •  x 

    Billed yearly until cancelled

Add to cart


  •  x 

    Billed yearly until cancelled

  •  x 

    Billed yearly until cancelled

  •  x 

    Billed yearly until cancelled

Add to cart

Installation service

Installation and setup of the plugin in connection to the TWINT account (1 Website).


Check out our Demo


Read the documentation


Version: 1.6.2


Version 1.6.2 – 05.09.2019

  • Tweak – Added CSS class to QR code image to prevent Jetpack lazy loading.
  • Fix – Mask special characters in password before saving.

Version 1.6.1 – 26.06.2019

  • Feature – Display Logs in order admin screen.
  • Tweak – Prune logs in background process if they exceed the threshold.
  • Tweak – Added de_CH translation files.
  • Tweak – Load payment mask via AJAX to prevent requests to TWINT on checkout page.
  • Dev – Added background process functionality.

Version 1.6.0 – 27.05.2019

  • Feature – Added single transactions to TWINT meta box.
  • Feature – Added Logging class to provide more logs for payment process.
  • Fix – Display meta box.
  • Tweak – Minified js files.
  • Dev – Save TWINT data in hidden meta array.
  • Dev – Added certificate handler.
  • Dev – Added gulp dev tools.

Version 1.5.8 – 06.05.2019

  • Fix – Use property instead of constant for display name.

Version 1.5.7 – 06.05.2019

  • Fix – Use returned URL on checkout to redirect to the corresponding screen instead of the URL in the wrapper element.
  • Fix – Decode HTML entities before sending response to frontend script.

Version 1.5.6 – 03.05.2019

  • Fix – AJAX call arguments on checkout.

Version 1.5.5 – 03.05.2019

  • Fix – Preserve certificate line breaks when options are saved.
  • Fix – Corrected option name for cashier registration.

Version 1.5.4 – 01.05.2019

  • Fix – Added custom settings field for certificate password to prevent escaping of special chars on output.
  • Tweak – Restrict certificate upload to administrator role.

Version 1.5.3 – 26.04.2019

  • Fix – Removed error message from admin and frontend if create_client fails.
  • Tweak – Remove certificate field if upload and enrollment of certificate is successful.

Version 1.5.2 – 25.04.2019

  • Fix – Handle exception for status check and checkin in frontend.
  • Fix – Delete certificate files on update and activation.

Version 1.5.1 – 24.04.2019

  • Fix – Correctly save test certificate in own file instead of overwriting prod certificate on plugin update.

Version 1.5.0 – 23.04.2019

  • Feature – Implemented TWINT browser to app to allow users to switch to the TWINT app on the checkout.
  • Dev – Moved payment script to own js file.
  • Dev – Moved payment_page.php into WC_Gateway_Twint.
  • CSS – Smaller font for amount on mobile screens.

Version 1.4.3 – 18.04.2019

  • Fix – Enqueued wp media for the upload editor in the TWINT admin screen.
  • Tweak – Admin styles.

Version 1.4.2 – 17.04.2019

  • Fix – Renamed certificate option name.
  • Fix – Removed automatic cashier enrollment.

Version 1.4.1 – 17.04.2019

  • Fix – Correctly save previous certificates.

Version 1.4.0 – 17.04.2019

  • Feature – Upload field to upload certificate file in pkcs12 format and automatically convert it to PEM format.
  • Tweak – Renamed CSS names to prevent conflicts.
  • Tweak – Removed notice “connecting to twint” on checkout page.

Version 1.3.5 – 11.04.2019

  • Fix – Correctly check, activate and deactivate licenses of the current blog.

Version 1.3.4 – 09.04.2019

  • Fix – Correctly check activated licenses in multisite installations.

Version 1.3.3 – 27.02.2019

  • Fix – Check if certificate fields not empty if pkcs file cannot be converted to use existing certificate.

Version 1.3.2 – 22.11.2018

  • Fix – Use correct nonce for cashier register AJAX call.

Version 1.3.1 – 20.11.2018

  • Fix – Payment page styles.
  • Tweak – Use Mame_Licensing and Mame_Plugin_Updater for license and updates.

Version 1.3.0 – 17.08.2018

  • Feature – Refunds.
  • Tweak – Only show payment data metabox in TWINT orders.
  • Tweak – Admin styles.

Version 1.2.6 – 31.06.2018

  • Fix – Allow failed orders to be paid.
  • Fix – Remove unnecessary nonce in payment process.
  • Fix – Correct license notice redirect.
  • Tweak – Added translations.

Version 1.2.5 – 14.04.2018

  • Fix – Correct admin URL for network AJAX requests..

Version 1.2.4 – 12.09.2017

  • Fix – Wrong check to complete the order.

Version 1.2.3 – 09.09.2017

  • Fix – Round amount to two decimals.
  • Fix – Replaced deprecated direct property access to order status.
  • Fix – Close session before calling sleep.
  • Fix – Correct update URL for multisite installations

Version 1.2.2 – 13.07.2017

  • Fix – Payment handler proceeds with payment without AJAX requests.
  • Fix – Unique MerchantTransactionReference on TWINT order start.
  • Fix – Fixed no-js payment process.
  • Tweak – Replaced deprecated WooCommerce update option hook.

Version 1.2.1 – 12.06.2017

  • Feature – Copy to clipboard button for mobile devices.
  • Fix – AJAX handler to continue with unfulfilled payments.
  • Fix – Replaced deprecated WooCommerce query args with endpoint.
  • Tweak – CSS responsive styles.

Version 1.2.0 – 01.05.2017

  • Feature – Set timeout in settings.
  • Update – New TWINT payment mask.
  • Update – Localization.
  • Fix – enroll cash register on activation.

Version 1.1.2 – 20.12.2016

  • Fix – Bug on settings page that occurred if certificate is created from settings field content.

Version 1.1.1 – 19.12.2016

  • Fix – Fixed bug that occurred on plugin update.

Version 1.1.0 – 27.11.2016

  • Feature – Automatic certificate generation.
  • Feature – System status section.
  • Tweak – Save production and test params.
  • Tweak – Automatic register enrollment.
  • Fix – No register enrollment on plugin acivation.

Version 1.0.4 – 28.07.2016

  • Fix – Assets now loading correctly.
  • Tweak – Regenerate key and enroll register on activation.

Version 1.0.3 – 01.05.2016

  • Fix – Renamed constants due to conflict with PF plugin.
  • Fix – Renamed localized php variables due to conflict with PF plugin.

Version 1.0.2 – 29.04.2016

  • Fix – Renamed licensing settings field due to conflict with other plugin.

Version 1.0.1 – 29.04.2016

  • Fix- changed function to retrieve cart totals.
  • Tweak – frontend styles.

Version 1.0.0 – 29.04.2016

  • Release.

Free registration for PostFinance E-Payment

If you don't have a PostFinance e-Payment account you can fill out the form below to get a free Test-Account. You will be contacted by PostFinance for more information. This registration is completely free and non-binding.