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

# Import payments from DATEV

> Configure a DATEV payment account and allocate payments from a DATEV booking batch to matching Nexudus invoices.

## Overview

Use the **DATEV payments** importer to record incoming payments from a DATEV booking batch against existing Nexudus invoices. Nexudus reads the invoice or document number in each selected DATEV row, finds the matching invoice in the current location, and adds the amount as a manual payment.

The importer supports full and partial payments. It does not create invoices or customers, import general ledger postings, apply cash discounts, or process outgoing payments.

<Warning>
  Preview every file before confirming it. Confirming an import creates payments and updates invoice balances.
</Warning>

## Before you begin

You need:

* Administrator access or permission to edit invoices.
* A DATEV booking batch CSV file in DATEV format version 13.
* A payment-type financial account with a numeric code of 1 to 9 digits.
* Existing Nexudus invoices whose invoice numbers appear in DATEV **Belegfeld 1**.

The selected financial account can belong to another location in the same location network.

## Configure DATEV

<Steps>
  <Step title="Open the DATEV integration">
    Select the location where you will run the import, then go to **Settings → Integrations → DATEV**.
  </Step>

  <Step title="Select the payment account">
    In **Payment account**, select the bank or cash financial account used for incoming DATEV payments. The list contains payment-type accounts with numeric codes and can include accounts shared across your location network.
  </Step>

  <Step title="Save the integration">
    Save your changes. The importer uses the financial account's **Code** to identify payment rows in the DATEV file.
  </Step>
</Steps>

<Info>
  If you change the payment account after previewing a file, the confirmed import still uses the account code shown in that preview.
</Info>

## How rows are selected

The DATEV debit or credit indicator applies to the **Konto** field. Nexudus compares **Konto** and **Gegenkonto** with the configured payment account code.

| DATEV row                                                                   | Result                                            |
| --------------------------------------------------------------------------- | ------------------------------------------------- |
| **Konto** is the payment account and **Soll/Haben-Kennzeichen** is `S`      | Selected as an incoming payment                   |
| **Gegenkonto** is the payment account and **Soll/Haben-Kennzeichen** is `H` | Selected as an incoming payment                   |
| **Konto** is the payment account and the indicator is `H`                   | Excluded as an outgoing payment                   |
| **Gegenkonto** is the payment account and the indicator is `S`              | Excluded as an outgoing payment                   |
| Neither account field contains the payment account                          | Excluded as an unrelated posting                  |
| **Skonto** contains an amount                                               | Excluded because cash discounts are not supported |

Excluded rows remain visible in the preview but cannot be imported.

## How payments are matched

For each incoming payment row, Nexudus applies these checks:

1. **Belegfeld 1** must exactly match the Nexudus invoice number in the current location.
2. **Umsatz** must be a positive amount with no more than two decimal places.
3. The row currency in **WKZ Umsatz**, or the booking batch currency when the row currency is empty, must match the invoice currency.
4. **Belegdatum** must be a valid date within the booking batch period and outside the locked billing period in Nexudus.
5. The invoice must not be a draft, void invoice, credit note, temporary-number invoice, or fully paid invoice.
6. The payment amount must not exceed the invoice's outstanding balance.
7. When several rows match the same invoice, their combined amount must not exceed the outstanding balance.

Matching uses the complete invoice number. Make **Belegfeld 1** the same as the invoice number shown in Nexudus; do not add prefixes, suffixes, or spaces.

<Tip>
  Export or review the invoice list before preparing the DATEV file so that **Belegfeld 1** contains the exact Nexudus invoice number.
</Tip>

## Import a booking batch

<Steps>
  <Step title="Open Imports">
    Select the correct location, then go to **Settings → Imports** and choose **DATEV payments**.
  </Step>

  <Step title="Check the payment account">
    Confirm that the payment account shown on the upload screen is the account used in the DATEV booking batch. If it is incorrect, update it in **Settings → Integrations → DATEV** before uploading the file.
  </Step>

  <Step title="Upload the DATEV file">
    Upload the booking batch CSV file. Nexudus starts a background preview and does not create payments at this stage.
  </Step>

  <Step title="Review every result group">
    Review the ready, error, duplicate, and excluded rows. Confirm the invoice number, amount, currency, payment date, account, and posting text for each payment you expect to import.
  </Step>

  <Step title="Confirm the import">
    Select **Import** to create the ready payments. Invalid, duplicate, and excluded rows are not imported.
  </Step>

  <Step title="Review the result">
    Open an imported invoice from the results and confirm its payment and outstanding balance. A full payment marks the invoice as paid; a partial payment reduces the outstanding balance.
  </Step>
</Steps>

## Understand preview results

| Result        | Meaning                                                                           | Action                                                                    |
| ------------- | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| **Ready**     | The row is an incoming payment and passed all invoice checks                      | Confirm the import when the details are correct                           |
| **Error**     | The row is intended as a payment but contains invalid data or cannot be allocated | Correct the DATEV data or the invoice and upload a new file               |
| **Duplicate** | The same DATEV posting was previously imported                                    | Do not import it again; review the existing invoice payment               |
| **Excluded**  | The row is unrelated, outgoing, or contains a cash discount                       | No action is required unless the row should have been an incoming payment |

Nexudus uses the stable details of each DATEV posting to identify duplicates. Re-uploading the same posting does not create another payment.

## Troubleshooting

### The DATEV importer is not available for upload

Open **Settings → Integrations → DATEV** and select a payment-type financial account with a numeric code. Accounts with non-numeric codes cannot identify DATEV payment rows.

### Invoice not found in this location

Check that you selected the location containing the invoice and that **Belegfeld 1** exactly matches the Nexudus invoice number. Invoices in another location are not matched, even when both locations are in the same network.

### The payment exceeds the outstanding balance

Reduce the DATEV amount to the invoice's current outstanding balance. Also check for other rows in the same file that match the invoice, because Nexudus validates their combined amount.

### The payment date is in a locked billing period

Review the DATEV **Belegdatum** and your Nexudus billing lock date. The importer does not move a payment into a different accounting period.

### A row appears under Excluded rows

Check the payment account, **Konto**, **Gegenkonto**, and debit or credit indicator. Rows with cash discounts and outgoing payments are intentionally excluded.

## Related pages

* [Import and export](/platform/settings/import-export)
* [Integrations](/platform/settings/integrations)
* [DATEV booking batch format](https://developer.datev.de/en/file-format/details/datev-format/format-description/booking-batch)
