alt

Important information

There was an update of Unzer TLS/SSL certificates. Learn more

Unzer

FAQs and known issues

Find answers to frequently asked questions.

FAQs

How can I submit Shopware’s order number to the Unzer payment system?

You cannot use Shopware 5’s order number as an order ID for an Unzer payment request. Shopware 5’s order number is generated only when an order is marked as paid.

The Unzer Payment Plugin for Shopware 5 uses a unique identifier as order ID or the transaction ID for it’s payment request to the Unzer payment system. The same unique identifier is also used by Shopware system as an identifier for the end customer’s shop session. Changing this ID can cause many problems in Shopware’s internal workflows with end customer session.


Where can I find the payment data for customers for invoice and prepayment payment methods?

The payment data is saved in the Shopware’s order s_order database table. It can be exported or fetched for the third-party applications, like the ERP systems. It looks similar to the following example:

Bitte überweisen Sie uns den Rechnungsbetrag auf folgendes Konto:

Betrag: 45,55 €
Empfänger: Best Company
IBAN: DE01000000001234567890
BIC: HEIDELPAYXY
Verwendungszweck: 5252.6354.5765
Please transfer the invoice amount to the following account:

Amount: 45,55 €
Account holder: Best Company
IBAN: DE01000000001234567890
BIC: HEIDELPAYXY
Descriptor: 5252.6354.5765

Known issues

Shipment message is not generated automatically with plugin version 1.0.2

Problem

The plugin is not sending the shipment message automatically although the invoice PDF doc is available.

Solution

This is a bug in the older plugin version that prevents the automated shipment message. It is now fixed in the later versions 1.0.2 and later.

If you are using the older version of the plugin, to solve this problem, open the file …\custom\plugins\UnzerPayment\Subscribers\Model\OrderSubscriber.php and update it as shown here:

       ...
       if (!$invoiceDocument) {
            return;
        }

        /** @var UnzerPaymentApiLoggerServiceInterface $apiLogger */
        $this->apiLogger     = $this->dependencyProvider->get('unzer_payment.services.api_logger');
//        $unzerPaymentClient  = $this->dependencyProvider->get('unzer_payment.services.api_client')->getUnzerPaymentClient();
        $unzerPaymentClient  = $this->dependencyProvider->get('unzer_payment.services.api_client')
            ->getUnzerPaymentClient(
                $order->getShop()->getLocale()->getLocale(),
                $order->getShop()->getId()
            );
        $this->entityManager = $args->getEntityManager();
        ...

Registration of webhooks with plugin version 1.0.2

Problem

After selecting the Register Webhooks, the webhooks must be registered to the store URL. But, the Webhook-url is registered to a wrong or incomplete store URL.

Example: Your plugin installation is located in directory ../var/www/html/MySuperStore/live/custom/plugins/UnzerPayment and your shop URL is configured to URL www.mysuperstore.com . In a normal case, the webhook-url should be www.mysuperstore.com/live/UnzerPayment/executeWebhook . The plugin doesn’t get the correct path by default and registers the following wrong webhook-url www.mysuperstore.com/UnzerPayment/executeWebhook.

Reason

This is a bug that is now fixed in the plugin version 1.0.3 and later.

Solution

For Shopware 1.0.3 version and later

This is a bug in this plugin version that prevents registering of the correct webhook-url. This is now fixed in the later versions 1.0.3 and later.

For Shopware versions prior to 1.0.3
  1. Before registering a webhook, update the following file.
    • File: ...\custom\plugins/UnzerPayment\Controllers\Backend\UnzerPayment.php
    • Line: 294 Github Repository
  ...
  public function registerWebhooksAction(): void
  {
      if (!$this->unzerPaymentClient) {
          return;
      }

      $context = Context::createFromShop($this->shop, $this->get('config'));
      $success = false;
      $message = '';
      $url     = $this->container->get('router')->assemble([
          'controller' => 'UnzerPayment',
          'action'     => 'executeWebhook',
          'module'     => 'frontend',
      ], $context);
  ...
  
  1. Add the following code after line 8 so that the code looks like this:
...
public function registerWebhooksAction(): void
    {
        if (!$this->unzerPaymentClient) {
            return;
        }

        $context = Context::createFromShop($this->shop, $this->get('config'));
        $context->setBaseUrl($this->shop->getBasePath() . $context->getBaseUrl());
        $success = false;
        $message = '';
        $url     = $this->container->get('router')->assemble([
            'controller' => 'UnzerPayment',
            'action'     => 'executeWebhook',
            'module'     => 'frontend',
        ], $context);
 ...       
  1. Save the file to your server and clear all the back end caches.
  2. Reload your Shopware 5 back end, select Register Webhooks and register the webhooks.

Some payment methods display an error on the checkout or confirm page

Problem

Credit card, EPS, invoice secured and other payment methods display an error on checkout/confirm page “The payment provider is currently unavailable, please select another payment method.

Reason

It is possible that you have installed and activated Consent Manager plugin of the manufacturer consent manager.net.

Solution

Deactivate the Consent Manager plugin.


Plugin version 1.2.0 and 1.2.1 update failed

Problem

After running an update on Plugin version 1.2.0 or 1.2.1, the Plugin is uninstalled and the following error message is displayed in the Shopware log.

An exception occurred while executing 'CREATE TABLE IF NOT EXISTS s_plugin_unzer_order_ext_backup ( unzer_order_id varchar(50) NOT NULL, payment_name varchar(50) NOT NULL, user_data json NOT NULL, basket_data json NOT NULL, s_comment longtext NULL, dispatch_id int(11) NOT NULL, created_at datetime NOT NULL ON UPDATE now() ); ': SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'json NOT NULL, basket_data json NOT NULL, s_comment longtext NULL, ' at line 4

Reason

The encoding of the database is not set to UTF-8.

Solution

Check your database collation and make sure encoding is set to UTF-8 to use all features of Shopware 5 Plugin.


For failed orders, the status is not updated in the Orders window

Problem

When you are selecting Yes for the Allow automatic order creation via webhook feature when configuring your plugin, the status for failed transactions (that were created through the webhook) is displayed incorrectly as open.

Solution

In the next upcoming release, we will update the status correctly to failed.


Where can I find the payment data for customers payment for invoice or prepayment?

Currently, the Unzer Payment Plugin for Shopware 5 does not store the payment data. You can find this information on the Shopware 5’s invoice PDF when you print an invoice via Shopware 5’s order document.

icon info
Payment data like descriptor, account number and others will be available in a future version of Unzer Shopware 5 plugin.

For plugin version 1.3.1, payment is not created or gives error

Problem

For plugin version 1.3.1, payments cannot be processed for countries where country configuration Disable tax conditions for this country is set to active.

Solution

We are working to fix this bug.

For now, please downgrade to plugin version 1.3.0 until we release the software update.