API status

Overview

Irregular Tax Collection is a separate process for collecting taxes from end users. This differs from (regular) direct tax collections, for example, withholding taxes during order processing or when receiving dividends. With direct tax collections, taxes can be directly collected from pending cash proceeds.

However, with irregular tax collections, Upvest usually cannot take taxes from pending cash proceeds, but instead must generate respective cash itself. Upvest then uses the generated cash to pay the outstanding taxes.

For example, some main use cases for tax collections include:

  • The collection of the preliminary lump-sum tax or Vorabpauschale according to the German tax law.
  • Various “irregular” tax collections resulting from tax corrections (e.g., due to retroactive tax residency changes, automatic corrections, or cancellations).
  • Tax collection on non-cash corporate actions (e.g., when securities movements are treated as fictitious sales according to tax laws).

The most common tax collection use case in Germany involves the collection of the preliminary lump-sum tax (“Vorabpauschale”). To cover the tax claim arising from these use cases, it is required to collect money directly from the end user.

This guide explains how tax collection works with the Investment API.

Preparing for tax collection

For the preliminary lump-sum tax (“Vorabpauschale”), you must ensure readiness by the end of the calendar year. This includes being able to consume all relevant API events related to this process.

In addition, we recommend you complete the following to keep your end users informed of the upcoming process:

  • Contact end users in advance about the upcoming process

  • Generate an Frequently Asked Questions (FAQ) document or section on your website

  • Communicate to the end users your resolution process if the automated process cannot be completed. Refer to the Resolving issues - Tax collection section for more details.

How does the tax collection work?

We currently support irregular tax collections via Sell-to-Cover orders. These are system-generated sell orders targeted at generating the required (after-tax) liquidity to pay the outstanding taxes.

Coming soon

Upvest will introduce a new collection method called "Collection from Cash". This will allow users to not only pay their taxes via sell-to-cover orders, but to use available cash for paying their taxes instead.

Tax collection via Sell-to-Cover order

The tax collection process involves the following steps:

  1. An internally generated tax transaction starts a new tax collection process (e.g., due to annual collection of the preliminary lump-sum tax). For example, an end user is subject to EUR 100.00 of German Kapitalertragsteurer (KESt) and EUR 5.50 for the German solidarity surcharge, resulting in total outstanding taxes of EUR 105.50.

  2. A system generated sell-to-cover order is placed on the end-user's account. The order amount is determined by adding a 10% buffer to the outstanding taxes. In the example, a nominal order would be placed with an order amount of EUR 116.05. This buffer is required because the individual sell-to-cover order can itself lead to direct tax withholdings. The outstanding taxes can only be collected from after tax proceeds of this order.

  3. The sell order is executed at our trading partners. Collection amounts for individual users are often small and hence Upvest uses block orders for respective collections.

  4. After the execution of the sell-to-cover order, the received net sell proceeds remain locked until the order settles.

  5. After order settlement, the tax payment is made using the locked cash balance.

  6. If the buffer was not fully utilised to pay the taxes on the sell-to-cover order, the remaining cash is unlocked. The balance can then be withdrawn by a cash balance update request or remain on the end-user's cash account.

  7. The end user receives the associated PDF reports (both for the order and for the tax collection).