This error occurs when the customer has not set a default location to every product and occurs during the sales order sync to MYOB.
The error is:
Sync error: SalesOrder.Details[0].WarehouseID: 'Warehouse' cannot be empty. Inserting 'Sales Order Line' record raised at least one error. Please review the errors. [Type: PX.Api.ContractBased.OutcomeEntityHasErrorsException]
This error must be fixed in MYOB. The stock item needs to have the default warehouse as a completed field.
If there is a choice of multiple locations to dispatch from, choose one, otherwise the sync will see an empty field and and error will continue until you put a warehouse location against the part number.
If the Default Warehouse is already populated, update all the 'Warehouse' write fields the warehouse set in the field. In the example I've come across, this was the same as the API branch.