WooCommerce, Shopify and BigCommerce to Xero accounting workflows. Book a demo
BACS accounting guide

How to treat WooCommerce BACS orders in Xero

BACS is different from an online card payment because placing the order does not prove that cash has arrived. The accounting workflow should preserve that distinction instead of marking every order paid automatically.

The BACS order lifecycle

1. Customer places the order

WooCommerce can create an order with bank-transfer instructions before the bank receipt exists. At this point the business may have a valid trade sale to invoice, but it does not yet have payment evidence.

2. Create or retain an unpaid Xero invoice

For a trade or wholesale workflow, the order can become an individual Xero invoice using the billing company, name and email for contact matching. The invoice remains outstanding rather than being paid into a fictitious clearing account.

3. Match the real receipt later

When the bank transfer arrives, the Xero invoice can be settled against the actual receipt. That keeps aged receivables useful and makes overdue BACS orders visible.

Why BACS should not be hidden inside a retail card summary

A card gateway provides a captured-payment event that can be grouped by paid date. BACS may not. Mixing unpaid transfer orders with captured card sales can overstate cleared cash and make the bank reconciliation harder to explain.

Example policy

A practical trade rule

Card retail

Captured card orders can join the paid-date retail summary and post to the appropriate gateway clearing account.

BACS trade

Create an individual approved or draft invoice and leave it unpaid until the transfer appears.

Audit trail

Keep the WooCommerce order number and Xero invoice identifier so a retry cannot create a duplicate document.

Two ways to treat a BACS order

Unpaid invoice vs delayed summary inclusion

Unpaid individual invoice

The order becomes its own Xero invoice, marked unpaid until the bank transfer is confirmed and matched to the bank feed.

Delayed summary inclusion

The order is held back from the daily summary until payment clears, then included in the summary for the date it was actually paid.

Questions people ask

FAQs

Why can't BACS orders join the same-day summary?

BACS transfers can take one to three working days to clear, so including them immediately would record revenue before the money has actually arrived.

Does ClearCommerce mark BACS orders as unpaid automatically?

Yes, when configured that way. The export profile can hold BACS orders as unpaid invoices until a payment match confirms the transfer.

What happens if a BACS transfer never arrives?

The order stays visible as an unpaid invoice or excluded item, rather than being assumed paid and included in a summary.

Want BACS handled as a product rule?

ClearCommerce individual invoice mode can keep eligible WooCommerce BACS and account-term orders unpaid in Xero.

BACS invoice workflow