When SKULabs syncs a purchase order to QuickBooks Online (QBO), QuickBooks can reject it with this error:
A business validation error has occurred while processing your request. You must select an account for this transaction.
In SKULabs the purchase order is tagged Failed QBO sync, and the error appears in the purchase order's activity as One of the items in this PO is missing an ExpenseAccountRef. Please update in QBO.
Why purchase orders are not syncing to QuickBooks
QuickBooks requires every product on a purchase order to have an expense account. SKULabs matches each purchase order line to a QuickBooks product. If one of those products was created in QuickBooks without an expense account (for example, a product added manually or by another app), QuickBooks refuses the whole purchase order.
Products that SKULabs creates in QuickBooks get the expense account from your QuickBooks settings in SKULabs, so this error usually points to a product that already existed in QuickBooks.
How to fix the missing expense account
Open the failed purchase order in SKULabs and note the SKUs on it.
In QuickBooks Online, go to Products and services and find each of those products.
Edit the product and, in its purchasing information, select an Expense account (usually your cost of goods sold account). Save the product.
Repeat for every product on the purchase order that has no expense account.
SKULabs retries a failed purchase order automatically, about 6 hours after the last failed attempt. When the purchase order syncs successfully, the Failed QBO sync tag is removed.
If every product has an expense account and the error continues, contact support@skulabs.com with the purchase order number.
