User is trying to send BQE CORE invoices to Xero, but gets the following errors:
Invoice Validation ERROR - The description field is mandatory for each line item (when sending summarized invoices)
Invoice Validation ERROR - Account code must be specified (when sending invoices with discounts)
'Invoice validation error-[invoice name] invoice not of valid status for modification'.
When you send invoices to Xero for the first time, CORE also sends some adjustment items to the Xero inventory. Even though they are not actual activity or expense items in CORE, they are needed to represent some specific details as line items on Xero invoices. For example, the adjustment items COREServiceAmt and COREExpenseAmt represent the summarized time and expenses on the corresponding Xero invoices when you choose to send the invoices with summarized items (Xero Sync Details > Sync Settings > Invoices). Similarly, the adjustment item COREInvDiscount represents the discount you apply to your invoices in CORE on the corresponding Xero invoices.
CORE sends the adjustment items with all the details that are needed to use them in Xero. Xero requires all the line items on an invoice to have a description and an account code. So CORE always sends the adjustment items with these details. But if for some reason (say manually editing the adjustment items in Xero and removing these details), these details are missing in some of the adjustment items and you try to send an invoice that uses such items, you get an Invoice Validation Error.
To prevent this, you need to check the details of all these adjustment items in the Xero inventory (Business > Products and services screen) and make sure they are not missing any required detail. To be completely sure, you can also delete these adjustment items so that the next time you send an invoice, CORE also sends the adjustment items afresh, including all the required details.
This error can also occur when the invoice you are trying to sync already exists in Xero. Please check that invoice in the Xero program to confirm.