When upgrading from 2.0 to 2.1, there is a known issue having to do with the newly introduced encryption of credit card numbers.
In 2.0 credit card numbers were stored in plain text, but 2.1 stores them using encryption, and thus attempts to decrypt them when pulling them from the database. So a 2.1 instance retrieving card numbers stored by 2.0 will encounter an error.
To fix this, run the following SQL query to select the client and their credit card numbers. Copy and paste the results in a text file or keep them open in the query window:
SELECT
cl.first_name, cl.last_name, cl.company, c.number
FROM dni_cards c
INNER JOIN dni_clients cl ON c.dni_clients_id = cl.id
Now clear the unencrypted card numbers:
UPDATE
dni_cards SET number = null WHERE Len(number) = 16
Open up the administration website, click "clients" in the top navigation, and re-enter the card numbers for the appropriate clients.
Reply to this post if you run into any issues.
---
Rob
DotNetInvoice Support