Xero Bank Rules: How to Automate Your Bank Reconciliation (Canadian Guide)

At a Glance
Bank reconciliation is the bookkeeping task that most small business owners dread. It is repetitive, detail-oriented, and easy to put off until your accountant asks why your books have not been updated since August. Xero bank rules eliminate most of that drudgery. For a hands-on tool to practice, see our Xero Bank Reconciliation Hub.
A bank rule tells Xero: “When you see a transaction that looks like this, code it to this account, with this tax rate, and assign it to this contact.” Once a rule is set up, matching transactions appear on your reconciliation screen pre-coded. You click OK and move on. No scrolling through dropdown menus. No remembering which account the Microsoft 365 subscription goes to. No guessing whether to apply HST or No Tax to a bank fee.
We set up Xero bank rules for every client at LedgerLogic. For most Canadian businesses, 15 to 20 well-configured rules can automate 60 to 80 percent of monthly bank reconciliation. That translates to 2 to 4 hours saved each month — time that is better spent running your business. Our post on whether Xero is worth it quantifies this time savings at $225 to $600 per month in value, and bank rules are the single biggest driver of that number.
This guide walks through setup, provides 10 Canadian-specific bank rule examples with the correct GST/HST coding, and covers the advanced features most guides skip.
What Xero Bank Rules Do (and Why They Matter)
Xero bank rules are automated templates that match incoming bank feed transactions to pre-set account codes, contacts, and tax rates. When a transaction on your bank feed matches a rule’s conditions, Xero suggests the coded transaction on the reconciliation screen. You review it and click OK — one click to reconcile instead of manual coding.
There are three types of bank rules:
Spend Money rules — for outgoing payments. This is the most common type. Think subscriptions, bank fees, rent, fuel, and any recurring expense.
Receive Money rules — for incoming payments. Useful for Shopify payouts, Stripe deposits, recurring client payments, and interest income.
Transfer Money rules — for transfers between your own accounts. Useful for moving money between your operating account and savings account, or for Wagepoint/payroll debits that transfer to a clearing account.
The value of bank rules goes beyond time savings. They enforce consistency. Without rules, one transaction might get coded to “Office Expenses” one month and “Computer Expenses” the next, depending on who is reconciling. With rules, the same transaction gets coded the same way every time. That consistency makes your chart of accounts more reliable and your financial reports more accurate.
How to Set Up a Bank Rule in Xero (Step by Step)
The fastest way to create a bank rule is to start from a real transaction on your bank feed. Xero pre-fills the conditions based on how your bank formats the description, which saves you from guessing.
Step 1: Go to your bank reconciliation screen. Navigate to Accounting → Bank Accounts → select the account → Reconcile. You will see your unreconciled transactions on the left.
Step 2: Find a recurring transaction and create a rule. Look for a transaction you want to automate — a monthly bank fee, a software subscription, or a regular supplier payment. Click “Options” on the right side of the transaction row and select “Create Bank Rule.”
Step 3: Choose the rule type. Xero pre-selects this based on whether the transaction is money in, money out, or a transfer. You can change it if needed.
Step 4: Set your matching conditions. This is the most important step. Xero pre-fills conditions based on the transaction’s bank description. Review and refine them:
- Use “Contains” rather than “Equals” in most cases. “Contains” is more flexible and will still match if your bank adds extra text (like a date or reference number) to the description. “Equals” requires an exact match and breaks easily.
- Choose “Any” vs “All” conditions thoughtfully. “Any” means the rule fires if any one condition is met (broader). “All” means every condition must be met (stricter). For most rules, “Any” with a single well-chosen “Contains” condition works best.
- Remove unique identifiers from the condition text. If the bank description includes a date, transaction ID, or variable reference number, delete those parts. You want the condition to match the consistent part of the description only.
Step 5: Assign contact, account, and tax rate. Select or create a contact for the transaction. Choose the correct chart of accounts category. The tax rate defaults to whatever you set on that account — this is why setting up your chart of accounts with correct default tax rates matters. If the default is wrong for this specific rule, override it here.
Step 6: Name the rule and save. Give the rule a clear, descriptive name (e.g., “TD Bank — Monthly Account Fee” rather than just “Bank Fee”). Next time a matching transaction appears on your bank feed, Xero will suggest the rule. You review and click OK.
CPA tip: Always start from a real transaction on your bank feed. Xero pre-fills the conditions based on how your bank actually formats the description. If you create a rule from scratch (Accounting → Bank Accounts → Bank Rules → Create Rule), you have to guess at the exact text your bank uses, and it is easy to get wrong.
10 Bank Rules Every Canadian Business Should Set Up
These are the rules we configure for nearly every Canadian client. For each one, we provide the condition to match, the account to code to, the tax rate to apply, and a CPA note on common mistakes.
1. Bank Fees
Match: Contains “monthly fee” or “account fee” or “service charge”
Account: Bank Fees (expense)
Tax Rate: No Tax
CPA note: Bank fees are an exempt financial service in Canada. Never apply GST/HST to bank fees. Some businesses mistakenly code these as “Tax Exempt” which is technically different from “No Tax” in Xero. Use the tax rate that corresponds to no tax input credits.
2. Fuel (Petro-Canada, Shell, Esso, Canadian Tire Gas+)
Match: Contains “PETRO-CAN” or “SHELL” or “ESSO” or “CANADIAN TIRE GAS”
Account: Vehicle Expenses — Fuel (expense)
Tax Rate: HST on Expenses (13% in Ontario) or GST on Expenses (5% in Alberta/BC)
CPA note: If the vehicle is used for both business and personal, you can only claim the business-use portion. Consider creating a rule that codes 100% to fuel, and make the personal-use adjustment at year-end with your accountant. The GST/HST tips page has more on ITC restrictions for mixed-use vehicles.
3. Shopify Payouts
Match: Contains “SHOPIFY” and rule type is Receive Money
Account: Sales — Shopify (revenue)
Tax Rate: HST/GST on Income (applicable rate for your province)
CPA note: Shopify payouts are net of fees. If you use A2X to reconcile Shopify into Xero, do not also create a bank rule for Shopify deposits — A2X handles the detailed breakdown. This rule is only for businesses reconciling Shopify payouts manually.
4. Amazon Seller Fees
Match: Contains “AMAZON” or “AMZN” and rule type is Spend Money
Account: Cost of Sales — Marketplace Fees (direct costs)
Tax Rate: GST on Expenses (5%)
CPA note: Amazon deposits are trickier because they combine sales, fees, refunds, and adjustments. For Amazon sellers, we recommend A2X integration over bank rules. But if you are a low-volume seller, a bank rule for the net deposit works as a starting point.
5. Stripe Deposits
Match: Contains “STRIPE” and rule type is Receive Money
Account: Sales — Online Services (revenue) or appropriate revenue account
Tax Rate: HST/GST on Income
CPA note: Like Shopify, Stripe deposits are net of processing fees. If you need to track Stripe fees separately, use Stripe’s integration with Xero or reconcile the fees manually rather than relying on a single bank rule for the net deposit.
6. Software Subscriptions (Microsoft 365, Google Workspace)
Match: Contains “MICROSOFT” or “GOOGLE” or “MSFT” or “GOOGLE*”
Account: Software Subscriptions (expense)
Tax Rate: HST on Expenses (13% in Ontario) or GST on Expenses (5%)
CPA note: Many software companies now charge GST/HST on Canadian subscriptions. Check your receipts to confirm the tax rate. If the vendor is a non-resident and does not charge GST/HST, you may need to self-assess the tax under the reverse charge rules — talk to your accountant.
7. Office Rent (Fixed Monthly Amount)
Match: Contains “RENT” or your landlord’s name, AND amount equals your monthly rent
Account: Rent (expense)
Tax Rate: Varies — if your landlord is a GST/HST registrant, apply the applicable rate. If not (revenue under $30,000), use No Tax.
CPA note: Use the “All conditions match” setting here with both a text match and an amount match. This prevents the rule from accidentally matching other transactions that mention “rent” in the description. If your landlord charges GST/HST, verify their registration status annually.
8. Wagepoint Payroll Debits
Match: Contains “WAGEPOINT” and rule type is Transfer Money
Account: Transfer to Payroll Clearing (bank account)
Tax Rate: No Tax
CPA note: Payroll debits should be set up as transfer rules, not spend money rules. The actual payroll expenses (salaries, CPP, EI) are recorded through Wagepoint’s integration with Xero. The bank debit is just the movement of cash from your operating account to cover the payroll run.
9. CRA Tax Payments (GST/HST Remittances)
Match: Contains “CRA” or “CANADA REVENUE” or “RECEIVER GENERAL”
Account: GST/HST Payable (liability) for GST/HST payments; Income Tax Payable (liability) for corporate tax payments
Tax Rate: No Tax
CPA note: Be careful here. You may need separate rules for GST/HST payments and income tax payments because they code to different liability accounts. If you make multiple types of CRA payments (GST/HST, corporate tax, payroll remittances), consider using “All conditions match” with an amount range or specific description to distinguish between them. Alternatively, do not create a rule for CRA payments and code them manually to ensure accuracy. For more on GST/HST filing, see our GST/HST rates by province page.
10. Interac e-Transfers Between Own Accounts
Match: Contains “E-TRANSFER” or “INTERAC” and the amount matches a regular transfer pattern
Rule Type: Transfer Money
Account: The destination bank account in Xero
Tax Rate: No Tax
CPA note: Internal transfers are one of the easiest bank rules to set up but one of the most commonly missed. Without a transfer rule, these transactions sit unreconciled and can distort your cash position if you only look at one account.
Want Us to Set Up Your Bank Rules?
Our CPA team configures Xero bank rules, chart of accounts, and bank feeds for Canadian businesses. We will set up your first 15–20 rules, configure the correct GST/HST coding, and show you how to maintain them going forward.
Advanced Bank Rules: Splits, Tracking Categories, and Percentage Allocations
Once you are comfortable with basic rules, Xero offers more advanced features that handle complex scenarios.
Splitting a transaction across multiple accounts. If your phone bill covers both business and personal use, you can create a bank rule that splits the amount: 70% to Telephone (expense) and 30% to Owner’s Draw (equity), for example. In the rule’s allocation section, add multiple lines with the percentage for each. Xero calculates the dollar amounts automatically based on the actual transaction total.
Applying tracking categories via bank rules. If you use tracking categories to segment expenses by location or department, you can assign a tracking category option within the bank rule. For example, a rent rule for your Toronto office would assign the “Location: Toronto” tracking option. This means every time the rule fires, the transaction is both coded to the right account and tagged with the right tracking category — no manual steps.
Fixed amount allocations. Some transactions include a fixed component and a variable component. For example, a credit card statement might include a $25 annual fee plus variable interest charges. You can set up a bank rule that allocates a fixed $25 to “Bank Fees” and the remainder to “Interest Expense.” Use section 3 of the bank rule (fixed line items) for the $25 amount, and section 4 (percentage allocation) for the remainder.
Bank Rules vs Hubdoc: When to Use Which
This is a common source of confusion, and getting it wrong creates duplicate transactions. Here is the distinction:
Use bank rules for transactions where you do not need the source document (receipt, invoice) attached in Xero. These are typically recurring, predictable expenses where the bank transaction itself is sufficient documentation: bank fees, subscription charges, internal transfers, regular rent payments, and automated debits with no corresponding invoice.
Use Hubdoc for transactions where you need the source document attached for CRA compliance or internal controls. Hubdoc captures receipts and invoices (via email forwarding, the mobile app, or direct connections to suppliers), extracts the key data, and pushes the document into Xero as a bill or expense claim. The bank transaction then gets matched to the Hubdoc-created bill during reconciliation.
The critical rule: Never create a bank rule for a transaction that you also process through Hubdoc. If you do, you will end up with two entries in Xero for the same expense — one from the bank rule (spend money transaction) and one from Hubdoc (bill) — and your expenses will be doubled.
Practical split for most Canadian businesses:
- Bank rules: bank fees, software subscriptions, rent, payroll debits, CRA payments, internal transfers
- Hubdoc: client meals and entertainment, office supply purchases, professional services invoices, any expense the CRA might request documentation for during an audit
If you are unsure about a specific transaction type, ask yourself: “Would the CRA ask to see a receipt for this?” If yes, use Hubdoc. If no, a bank rule is fine.
Troubleshooting: Why Your Bank Rules Are Not Working
If you have set up rules but they are not matching transactions, check these common issues.
“Equals” is too strict. This is the most common problem. If your condition uses “Equals” and the bank description includes any extra text — a date, a reference number, a slightly different format — the rule will not match. Switch to “Contains” for the key identifying text.
Bank description format changed. Banks occasionally update how they format transaction descriptions in their feeds. A rule that matched “PETRO-CAN 1234” might stop working if the bank changes it to “PETRO-CANADA STN 1234.” Check the actual text of the unmatched transaction and update your rule’s condition accordingly.
Rule is set to the wrong bank account. By default, a bank rule applies to the bank account you were viewing when you created it. If you have multiple bank accounts and credit cards in Xero, verify that the rule is applied to all relevant accounts (or specifically to the correct one). You can set this in the rule’s settings under “Apply rule to.”
Rule order matters. Xero evaluates bank rules from top to bottom. If a more general rule appears above a more specific one, the general rule may match first and the specific rule never fires. Go to Accounting → Bank Accounts → Bank Rules and drag rules into the correct priority order. More specific rules should go higher; more general rules should go lower.
The transaction already has a match. If Xero finds a matching bill or invoice for a bank transaction, it suggests the bill match rather than the bank rule. This is correct behaviour — the bill match is more accurate because it links to a specific document. Bank rules only suggest when no other match exists.
FAQ
How many bank rules can I create in Xero?
There is no hard limit. Most small businesses find that 15 to 30 rules cover their recurring transactions well. You can create rules for individual bank accounts or apply them across all accounts. Start with your highest-frequency transactions — the ones you see every month — and add more as new recurring patterns emerge. After about 20 rules, you will have automated the bulk of your reconciliation.
Can I edit or delete a bank rule in Xero?
Yes. Navigate to Accounting → Bank Accounts → Bank Rules to see all existing rules. You can edit conditions, account assignments, tax rates, or contacts at any time. Deleting a rule removes it going forward but does not affect transactions that were already reconciled using that rule. If a bank changes the format of a transaction description, editing the rule’s condition is usually faster than creating a new one.
Do Xero bank rules work with all Canadian banks?
Bank rules work with any bank feed connected to Xero, whether through a direct feed or manual CSV import. In Canada, the five major banks (RBC, TD, BMO, Scotiabank, CIBC) all support direct bank feeds. Most credit unions and many smaller institutions are also supported. If your bank does not support direct feeds, you can upload bank statements as CSV files and your rules will still apply to the imported transactions.
Should I use bank rules for supplier invoices?
Generally, no. If you enter a supplier bill in Xero (either manually or through Hubdoc or Dext), match the bank transaction to that bill during reconciliation. Do not also create a bank rule for the same payment — this creates a duplicate expense entry. Bank rules are best for transactions without a corresponding bill or invoice in Xero.
How do I set the right GST/HST rate on a bank rule?
The tax rate on a bank rule defaults to whatever you set as the default on the assigned account in your chart of accounts. This is the primary reason we emphasise setting correct default tax rates on every account. If the default is not right for a specific rule, you can override it in the allocation section of the rule. For details on configuring tax rates across your Xero file, see our GST/HST setup guide.
What is the difference between bank rules and Hubdoc in Xero?
Bank rules auto-categorise bank feed transactions and create spend/receive money entries with no attached documents. Hubdoc captures source documents (receipts, invoices) and can push them into Xero as bills. Use bank rules for recurring charges where the receipt is not needed in Xero (bank fees, subscriptions, transfers). Use Hubdoc for expenses where you want CRA-audit-ready documentation attached (meals, supplies, any expense that might be questioned).
Why are my Xero bank rules not matching transactions?
The most common cause is a matching condition that is too restrictive. If you used “Equals” rather than “Contains,” the rule requires an exact text match and breaks when the bank changes its description format. Other causes include the rule being assigned to the wrong bank account, rule priority order putting a general rule above a specific one, or a bill/invoice match taking precedence over the bank rule. Check Accounting → Bank Accounts → Bank Rules to review and adjust. Master them with our Xero Bank Reconciliation Hub.
Seb ProstCPA, Ex-CRA
Licensed CPA with 10+ years of experience, including work with the Canada Revenue Agency. Founder of LedgerLogic, a cloud accounting firm serving Canadian SMEs. Xero Certified Advisor.


