> ## Documentation Index
> Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Checkout process

> Configure the WEBSALE checkout process: define steps, queried fields, addresses, payment and shipping methods for a fully customizable order flow.

The checkout process in WEBSALE is freely configurable and can be implemented as needed. This affects both the number of steps in a checkout and the contents that are queried and processed during the checkout process, for example addresses, payment methods, shipping methods, confirmations, or additional information.

***

## Configurations

The following settings are relevant for configuring a WEBSALE checkout process:

### checkout - Checkout process

Central configuration of the checkout process, for example for guest ordering, default selections, free checkout fields, shipping methods, and error display. The following are particularly relevant:

* `checkout.checkout` - General checkout settings, guest ordering, free fields, default values
* `checkout.shippingMethod` - Shipping methods in the checkout process
* `checkout.fieldErrorVisibility` - Error display and error logic in the checkout
* `checkout.checkout.defaults` - Default selections, e.g., country, shipping method, payment method

For all configuration options, see [checkout - Checkout process](/en/konfiguration/checkout-bestellablauf)\\

### customer - Customer data

Configuration of the customer data fields, for example for field definitions, mandatory fields, labels, field types, and validations. The following are particularly relevant:

* `customer.customerDataField` - Definition of individual customer data fields to be queried
* `customer.customerDataFieldSettings` - Settings and validations of the customer data fields
* `customer.customerDataGroup` - Grouping of customer data fields

For all configuration options, see [customer - Customer data](/en/konfiguration/customer-kundendaten)

### accounts - User accounts

Relevant for logged-in customers, saved addresses, and saved bank or payment data. The following are particularly relevant:

* `accounts.addressFieldsSettings` - Settings for address fields
* `accounts.addressField` - Definition of individual address fields
* `accounts.customerAddressField` - Assignment of customer and address fields

Optionally additionally:

* `accounts.bankInfoField` - Bank data fields
* `accounts.creditCardField` - Credit card fields

For all configuration options, see [accounts - User accounts](/en/konfiguration/accounts-benutzerkonten)

### payment - Payment methods

Configuration of the offered payment methods and connected payment providers. The following is particularly relevant:

* `payment.payment` - Available payment methods

Depending on the payment methods used, additionally, for example:

* `payment.payPalCheckout` - Configuration for PayPal Checkout
* `payment.stripe` - Configuration for Stripe

or the respective configuration of the payment methods that are to be offered in the checkout.

For all configuration options, see [payment - Payment methods](/en/konfiguration/payment-zahlungsmethoden)

***

## Modules

The following modules are particularly relevant for integration into the templates:

* [\$wsCheckout](/en/frontend/referenz/module/wscheckout) - Checkout state, addresses, shipping, payment, problems, totals
* [\$wsActions](/en/frontend/referenz/module/wsactions) - Generating and evaluating actions
* [\$wsAccount](/en/frontend/referenz/module/wsAccount) - Login status, email, addresses, loadAddress()
* [\$wsViews](/en/frontend/referenz/module/wsviews) - Current URL, destination pages, view URLs
* [\$wsBasket](/en/frontend/referenz/module/wsbasket) - Basket and order overview
* [\$wsConfig](/en/frontend/referenz/module/wsconfig) - Configuration values, for example salutations and currency

Optionally additionally, if integrated in the checkout:

* [\$wsPayPalCheckout](/en/frontend/referenz/module/wspaypalcheckout) - PayPal Checkout
* [\$wsStripe](/en/frontend/referenz/module/wsstripe) - Stripe

***

## Actions

For a checkout, depending on the desired scope, the actions documented under [Checkout](/en/frontend/referenz/aktionen/checkout) are particularly relevant.

For all actions for the checkout process, see [Checkout](/en/frontend/referenz/aktionen/checkout)

***

## Additionally relevant for a one-page checkout

If all checkout areas are merged onto a single page, the following points in particular are relevant:

* [MultiActions](/en/frontend/referenz/aktionen) - Trigger multiple actions with a single click
* [\$wsCheckout.draftBillAddressId](/en/frontend/referenz/module/wscheckout) - "Temporarily storing" the billing address without actually saving it
* [\$wsCheckout.draftShippingAddressId](/en/frontend/referenz/module/wscheckout) - "Temporarily storing" the shipping address without actually saving it
* [checkout.fieldErrorVisibility](/en/konfiguration/checkout-bestellablauf) - Error display and error logic in the checkout
* [checkout.checkout.defaults](/en/konfiguration/checkout-bestellablauf) - Default selections, for example country, shipping method, or payment method

All of the areas mentioned are described and linked in the respective reference documentation. This overview serves as a technical entry point for the implementation.
