Basket Checkout
The Shop extension comes with 8 predefined checkout types. These are:
requestprePaymentonInvoicesepa(aka direct debit)payPal(requires Pro Version of the Shop extension)payPalCheckout(requires Pro Version of the Shop extension)klarna(requires Pro Version of the Shop extension)stripe(requires Pro Version of the Shop extension)
Possible Payment Providers
As of November 1, 2025
| Payment Method | PayPal-Wallet | PayPal Checkout | Stripe | Klarna |
|---|---|---|---|---|
| PayPal Wallet | Yes | Yes | No | No |
| Credit Card | Yes (via PayPal) | Yes | Yes | No |
| Apple Pay | No | Yes (limited rollout) | Yes | No |
| Google Pay | No | Yes (limited rollout) | Yes | No |
| SEPA Direct Debit | Yes (via PayPal) | Yes | Yes | No |
| BLIK (PLN, Poland) | No | No | Yes | No |
| Przelewy24 (P24) | No | No | Yes | No |
| iDEAL (NL) | No | Yes | Yes | No |
| Bancontact (BE) | No | Yes | Yes | No |
| EPS (AT) | No | Yes | Yes | No |
| Giropay (DE) | No | Yes | Yes | No |
| Sofort (DE/AT) | No | Yes | Yes | Yes |
| Trustly | No | Yes | Yes | No |
| Klarna “Pay Now” | No | No | Yes | Yes |
| Klarna “Pay Later” (Invoice/Installments) | No | No | Yes | Yes |
Notice:
The availability of specific payment methods may vary depending on the product type, country of sale, or buyer account. Not all payment methods are available in every market or for every transaction.
General configuration
checkoutPidEnter the page UID of the checkout page.minimummOrderValueEnter the minimum order value (in cents).timeForPaymentEnter the giving amount of days for payment.deliveryTimeEnter an optional text for describing the delivery time for payment.orderOptionsDefine the checkout types here. We will look at this in more detail in another section.fieldDefinitionConfigure the form fields for checkout. These are configured in the respective TypoScript node to make them available in the various checkouts.
Further checkout-specific configurations can be found on the relevant documentation page.
TypoScript configuration checkout basis
plugin.tx_shop.settings.basketOrder {
# Page-ID des Checkout
checkoutPid = {$themes.configuration.pages.shop.checkout}
# Minimum order value in cents
minimumOrderValue = {$themes.configuration.extension.shop.basket.minimumOrderValue}
# Time for payment in days default value
timeForPayment = {$themes.configuration.extension.shop.basketOrder.timeForPayment}
# Default string for delivery time notice in basket above the additional costs
deliveryTime = {$themes.configuration.extension.shop.checkout.deliveryTime}
creditorIdentifier = {$themes.configuration.extension.shop.checkout.creditorIdentifier}
merchantName = {$themes.configuration.extension.shop.checkout.merchantName}
orderNumber = {$themes.configuration.extension.shop.checkout.orderNumber}
paymentSwitchInCheckout = {$themes.configuration.extension.shop.checkout.paymentSwitchInCheckout}
defaultPayment = {$themes.configuration.extension.shop.checkout.defaultPayment}
# VAT information depending on country and b2b/b2c
vat {
b2b {
inland {
notice = Es handelt sich um eine Inland-Lieferung an ein Unternehmen.<br />Ihre USt.-ID: %1$s
}
europeanUnion {
# Parameter is VAT-ID in basket order
notice = Es handelt sich um eine steuerbefreite innergemeinschaftliche Lieferung gem. §4 Nr. 1b UstG.<br />Unsere USt.-ID: DE 123 456 789<br />Ihre USt.-ID: %1$s
}
thirdCountry {
notice = Es handelt sich um eine steuerbefreite Ausfuhrlieferung gem. §4 Nr. 1a UstG.
}
}
b2c {
inland {
notice = Es handelt sich um eine Inland-Lieferung an eine Privatperson.
}
europeanUnion {
notice = Es handelt sich um eine innergemeinschaftliche Lieferung an eine Privatperson.
}
thirdCountry {
notice = Es handelt sich um eine steuerbefreite Ausfuhrlieferung gem. §4 Nr. 1a UstG.
}
}
}
orderOptions {
# Different order options
}
}
Payment Method Selection in Checkout
To allow customers to switch their payment method during checkout, a payment method selection can be enabled. This can be activated using the TypoScript constant themes.configuration.extension.shop.checkout.paymentSwitchInCheckout. Currently, the two values title and description from the orderOptions configuration are used in the TypoScript to provide selection labels. Additionally, the default payment method, which is selected first when the checkout process is initiated, can be specified in the TypoScript constant themes.configuration.extension.shop.checkout.defaultPayment.
Frontend Users with Login
If a customer is already logged in at checkout, their data from the user record is automatically entered into the order form. This data is read-only, as there should only be one central point for editing.
To allow the customer to adjust their account data, a profile editing page can be integrated using the EXT:modules extension (as is common in large online stores like Amazon, Shopware, Shopify, Aimeos, Magento, or PrestaShop). This extension should already be installed, as it is a dependency of the store. Once the corresponding TypoScript constant with the page ID has been configured, the link will appear. The constant entry could look like this: themes.configuration.pages.profile = 1947.
If you are using a different extension for profile editing, no problem. Then you still set the target page via the TypoScript constant themes.configuration.pages.profile or directly via setup TypoScript with, for example, plugin.tx_modules.settings.pages.profile = 1947.