I have a client whose accounting team has run into the following issue (admittedly an edge case but causes a lot of confusion and troubleshooting time for the team so we want to fix). Following the bug reporting instructions I have replicated this in two demo instances (dmaster and wpmaster) and now want to know if anyone else has experienced this. Here are the conditions/steps. To your knowledge is this a known issue?
- The import matches contributions to contact by External ID
- A given contact has been de-duped and the External ID needed for correct contribution matching has been overwritten by a different External ID
- The contact record with the correct External ID is in the trash
- The contribution import runs without throwing any error message
- The contribution does not appear in the contact record because its External ID does not match, and it DOES appear on the contact record that is in the trash (soft delete).
To summarize: When contributions are imported matching to External ID, expected behavior to get an error message and failed import line if I import a contribution that matches to a contact that is soft-deleted. Instead I get no error message and a successful import matched to a soft-deleted contact.
System info: The client is running Civi 5.31.0 on WP 5.5.3 but since I replicated on dmaster and wpmaster that seems less relevant.
Other relevant info: When using other methods of matching to a contact, the system behaves as expected (i.e., gives an error message and does not import the contribution):
- Email address as matching method gives "No matching Contact found for ([EMAIL ADDRESS])"
- Contact ID as matching method gives "Invalid Contact ID: contact_id 204 is a soft-deleted contact."