Submit product information within your payment.


Baskets are used for adding the additional information for the products that a customer is buying. It gives a more transparent and clear picture regarding their shopping details. Generally, a basket is optional, but some payment methods require such information for risk analysis, and insurance, such as Unzer Direct Debit Secured  and Unzer Invoice Secured for instance. The advantages are:

  • The customer can review their shopping summary on our Payment Page before making a payment.
  • It increases the acceptances rates when using our secured payment methods.

Types of baskets

Based on your business requirements, you can implement the following basket APIs:

  • use baskets with minimum fields if you don’t want to implement secured payment methods or offer discounts.
  • use baskets with more fields if you want to offer discounts or secured payment methods.

Currently, there are three different types of baskets available.

Baskets with a minimal set of fields

If you don’t want to offer any discounts, vouchers, or have shipment costs to your customers, then you can use baskets with minimum information.

You should not use a basket with minimum set of fields for Unzer secured payment methods because they require additional information for the payment.


  • Minimal fields
  • No amount validation
  • Does not include secured payment methods

For secured payment methods, use marketplace basket.

Baskets with an extended set of fields

You should use baskets with additional set of fields if you want to process discounts, vouchers, or shipment costs. Also, if you want to offer secured payment methods, a more comprehensive set of fields is required.


  • Minimal basket and some other additional fields
  • Basket item amounts are validated
  • It is also applicable for secured payment methods

Baskets for Marketplace usage

If you are processing transactions via our marketplace solution, you can provide a comprehensive set of details and the participant IDs for all the participants who are selling their products and services on your ecommerce platform.


  • Contains all the details of the Standard basket and participant ID
  • Supports marketplace payment methods

Integration options for basket API for various payment methods

You can use the basket feature with payment pages, UI components, and server-side-only integration options.

Payment methods supporting basket API

Payment Type Name Payment Type Minimal set of fields Extended set of fields Marketplace usage
Unzer Bank Transfer pis Y Y Y
Unzer Direct Debit sepa-direct-debit Y Y X
Unzer Direct Debit sepa-direct-debit-secured X Y X
Unzer Instalment installment-secured X Y X
Unzer Invoice invoice Y Y X
Unzer Invoice invoice-secured X Y X
Unzer Prepayment prepayment Y Y X
Card card Y Y Y
PayPal paypal Y Y X
Sofort sofort Y Y Y
Giropay giropay Y Y X
Przelewy24 przelewy24 Y Y X
iDeal ideal Y Y X
EPS eps Y Y X
Alipay alipay Y Y X
WeChat wechatpay Y Y X
Apple Pay applepay Y Y X
Bancontact bancontact Y Y X
Post Finance eFinance post-finance-efinance Y Y X
Post Finance Card post-finance-card Y Y X
Once a basket is created, you cannot delete it.

How it works

  1. In your ecommerce site, the customer selects the items they want to purchase. You send a POST request to create the basket resource.
  2. A unique basket ID is created.
  3. The newly generated basketId can now be used when the payment is initiated.

Once a basket has been created, it cannot be replaced or deleted. If you haven’t assigned a basket to a transaction yet, you can update it. For example, you can add more items, remove items, but cannot update the basket ID. A basket resource can be created or updated using your public or private key. Fetching a basket is only possible with your private key.

Although it’s possible to use any character combination for the orderId, we recommend that you use the same orderId as for payments (created by types/authorizetypes/charge, and so on). The order ID should be unique to easily search and identify the transaction.

For more information, see API reference guide.

Updating a basket

If you want to update a basket, you must update the all the contents of the basket. You cannot change individual items of a basket resource.

You can copy the contents of the old one, alter them, and submit it using a PUT command or create a new basket.

Replacing baskets for a specific payment

Currently, you cannot replace a basket with another basket for a transaction that is already initiated. So, once you create a charge or authorize request, it is not possible to change the basket ID.

The basket ID is generated for a specific payment and hence cannot be replaced.

Error codes for basket API

The basket related error codes begin with 300.xxx.xxx. For more on the basket API, see API reference guide.

See also

Baskets with a minimal set of fields