Skip to end of metadata
Go to start of metadata


An active PAYONE - Account is required. If you do not have one yet, please contact us.

Plugin Installation

You have 3 ways to install our plugin:

Installation directly in Shopware - Admin
  1. "Buy" the free PAYONE plugin in the Shopware Store.
  2. Download our plugin in your shop under Extensions → My extensions.
  3. Install and activate the plugin.

Installation directly in Shopware - Admin

Installation via Composer
composer require payone-gmbh/shopware-6
php bin/console plugin:install PayonePayment
php bin/console plugin:activate PayonePayment
php bin/console cache:clear

PAYONE - Portal configuration

To send the transaction status to the correct address, the log in to the PAYONE Merchant Interface (PMI).

Under Configuration → Payment Portals → YOUR_PORTAL → Advanced → TransactionStatus URL


Additional Response-data

Under General, set the Additional Response data for both Live and Test modes to "on".

Shopware 6 - Admin configuration

  • Click on Settings → Extensions → PAYONE

  • Please enter your access data here:

  • Please activate under Sales Channels → [used Sales Channel] → Payment and shipping the payment methods for your used sales channels:

  • Each payment method can be used with separate access data. These can be entered directly in the payment type.

Special adjustments

Some payment methods require special adjustments. The next points are only relevant to you if you use the specific payment method:

PAYONE Secure Invoice

PAYONE Secure Invoice

This payment method requires its own payment portal. Please enter a separate portal ID under Settings → Extensions → PAYONE → Payone Secure Invoice

PAYONE Prepayment

PAYONE Prepayment

To inform customers about the bank details, we have included a block with billing data in the invoice template. It makes sense to include this data in the order confirmation email template as well. We do not have a detailed instruction available currently.

Unzer Payments

Unzer Payments

To be able to offer Unzer, the payment methods must be additionally configured in the backend:

  • Unzer Rechnungskauf

Under Settings → Extensions → PAYONE → Paysafe Pay Later Invoice the following data must be stored: Company name (for the supplementary T&C), IBAN and BIC (both will be displayed next to the payment reference). Activate the B2B slider if you want to accept B2B orders.

  • Unzer Ratenkauf

Under Settings → Extensions → PAYONE → Paysafe Pay Later Installment the following data must be stored: Company name (for the supplementary GTC), channel name and channel password (both you get from Unzer).

Apple Pay

Apple Pay

Under Settings → Extensions → PAYONE → Apple Pay the following data must be stored: Supported Cards, ApplePay Merchant ID, ApplePay Display Name und Certificate Passphrase (the last three values you get from Apple).

Create the following files in the config folder: merchant_id.pem and merchant_id.key.

You will receive the content of the files in the process of Apple Onboardings under point 3.

In addition, a subfolder .well-known must be created in the public folder. In this subfolder please put the file: apple-developer-merchantid-domain-association.txt

You will receive the contents of the file after domain certification from Apple.

ApplePay is only visible and usable on Apple devices.

In addition to the configuration in Magento, it is also necessary to set up the corresponding certificates to operate Apple Pay as a payment method. You can find instructions for this here: Special Remarks - Apple Pay

Additionally, Apple requires validation of the store domain for Apple Pay. To do this, follow the instructions in the Apple Developer Portal:

Payment methods setup

Activate the requested payment methods under Settings → Shop → Payment

Editing the orders

The PAYONE plugin sets the payment status of an order according to the set status assignment.


Preauthorized transactions can be captured using the "Capture" button in the order details.


The "Refund" button can be used to refund an order (in the "paid" status).

Partialcapture and -refund

You can partially enter or refund an order by selecting an order item and editing the quantity. The entry amount is adjusted dynamically. 

If you want to fully capture or refund the order, click "Complete Capture".

You can also directly enter the requested amount in the "Capture amount" field.

Captures and refunds are only possible after the store has received a transaction status for an order, therefore, the buttons for captures and refunds are grayed out directly after an order.

Extended configurations

Here you will find separate setting options that allow you to customize our plugin more precisely to your needs.

Detailed status mapping (global)

Detailed status mapping (global)

Under Settings → Extensions → PAYONE → Status Mapping you can individually assign the states to which the orders should be set as soon as the respective information is sent by the PAYONE platform.

Detailed status mapping (by payment method)

Detailed status mapping (by payment method)

Under Settings → Extensions → PAYONE you can individually assign the states for every payment method separatly. Please choose the payment method and activate "Display state mapping configuration".

Creditcard - CSS adjustments

Creditcard - CSS adjustments

The following customizations are not necessary to offer credit card payments. The possibility to customize the payment type visually in the frontend is described in the following:

You can change the CSS by creating a new plugin that depends on this plugin via Composer. Here you can then define an overriding JavaScript plugin like this one:

import PayonePaymentCreditCard from '../../../../../PayonePayment/src/Resources/storefront/credit-card/';

export default class MyPayonePaymentCreditCard extends PayonePaymentCreditCard
    getFieldStyle() {
        const style = super.getFieldStyle();

        style.push('height: 300px');

        return style;
        const style = super.getSelectStyle();

        style.push('background-color: black');

        return style;

Then you can register the overriding plugin in your custom/plugins/MyPlugin/src/Resources/storefront/main.js:

import MyPayonePaymentCreditCard from './my-payone-payment/';

const PluginManager = window.PluginManager;
PluginManager.override('PayonePaymentCreditCard', MyPayonePaymentCreditCard, '[data-is-payone-credit-card]');

// Necessary for the webpack hot module reloading server
if ( {;
Right management

Right management

If you use Shopware's rights management, please give permission to all users. Under Settings → System → Users&permissions → Role create a new role or update an existing role. Activate the PAYONE transaction management right.

Quick Facts

Payment methods + Features

Find our plugin documentation here .

Download our plugin from here .

Credit Cards



American Express


Diners Club

Maestro International


Apple Pay



PayPal Express

Wire Transfer

PAYONE Direct Debit

PAYONE Invoice

PAYONE Prepayment

Online Bank Transfers






PAYONE Secure Invoice

Unzer Lastschrift

Unzer Rechnungskauf

Unzer Ratenkauf


Open Source

Automatic Credit Card Type Detection

Transaction - Handling

(Partial) Captures and Refunds

Transactionstatus URL:


Latest Release


New Features
* New payment method: Open Invoice
* Add checkbox for credit card payments to save or remove payment data

* remove capturemode param if completed
* update ZeroAmountCartValidator
* always set data protection check

* include line items with no tax for capture
* add shipping information to Unzer

Tested with:


Table of Contents

  • No labels