## TL;DR

QuickBooks flags an import row as duplicate when date, amount, and vendor match an existing transaction. Review each flagged row: skip it if it is a true duplicate, adjust the date or reference so it imports if it is legitimately a second charge.

## Error

```text
QuickBooks: duplicate expense warning on import
```

## Steps

1. Open the import preview in QuickBooks and filter to rows flagged as duplicates. Expected: each flagged row shows the existing transaction it matched.
2. For each flag, compare the imported row with the existing transaction (vendor, date, amount, receipt). Expected: you can tell true duplicates from same-day repeat charges.
3. Skip the true duplicates in the import. Expected: they are excluded and the warning count drops.
4. For legitimate repeat charges (two identical coffees, two Uber rides), keep the row and add a distinguishing memo or reference. Expected: QuickBooks imports them without merging.
5. After import, spot-check the register for the imported date range. Expected: no doubled transactions.

## When to use

- Bank-feed or CSV import into QuickBooks warns about duplicates.
- You re-import a date range that was partially imported before.

## When not to use

- Duplicates are already posted in the register (handle inside QuickBooks, not at import).
- The warning appears on manually entered expenses (check for double entry).

## Tool compatibility

- QuickBooks Online and Desktop; CSV and bank-feed imports.

## Variant phrasings

### Possible duplicate detected during import

Same warning, alternate wording.

### This transaction may already exist

The bank-feed phrasing of the same check.

## Why it happens

QuickBooks matches incoming rows against existing transactions on vendor, date, and amount. Re-imports, overlapping date ranges, and bank feeds that include already-imported card transactions all trigger the match.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_izA-IBU0GWT2T4auUSvc3Q
