Last-Minute EOFY Tips for Australian Bookkeepers (2026)
Six weeks out from EOFY: audit outstanding client statements, convert PDFs immediately rather than batching, verify balances before import, check for June bank fees and interest postings, reconcile against last month’s closing balance, and lodge BAS once June figures are confirmed. ReckonFlow’s free tier is uncapped during May–June.
1. Send Your Statement Request Email Today
Not next week. Not "when I have a moment." Today.
The single biggest bottleneck at EOFY is clients sending statements late. You can't process what you don't have. And clients don't send statements in June because they're busy: they send them because you asked.
The email template I use:
Subject: EOFY Bank Statements Needed: Deadline June 20
>
Hi [Client],
>
EOFY is approaching and I need your bank statements to prepare your BAS and financials. Please upload PDFs for ALL accounts (including savings/credit cards) for the period July 1 to June 30.
>
Format: Native PDF from your bank's download portal (not screenshots or scanned printouts)
Deadline: June 20, 2026
>
If you're unsure how to download them from your bank, reply to this email and I'll send step-by-step instructions for your specific bank.
>
Thanks,
[Your Name]
Send this to every client. Track responses. Chase late senders on June 10 and June 15.
2. Run Balance Checks Before Conversion
This is the one step that saves more EOFY time than everything else combined. Every bank statement has an implicit equation:
```
Opening balance + total credits - total debits = closing balance
```
If this equation holds, your conversion is safe to import. If it doesn't, something is wrong: investigate before touching Xero.
Common EOFY balance failures:
| Issue | What to look for | Fix |
| Interest adjustment | A small credit that appears only on June's statement | Verify with client, flag for manual review |
| Bank fee | Monthly fee debited on last day of month | Check if it's listed in the transaction table or deducted from closing balance |
| Multi-line description | A transaction that spans two rows, second row looks like a new transaction | Ensure your parser handles multi-line descriptions (CBA and ANZ both do this) |
| Rounding difference | Balance off by $0.01-$0.05 | Normal for some banks: note it and proceed |
| Pending transaction | Transaction appears in feed but not on statement | Only import posted transactions for EOFY accuracy |
If you're converting manually, run the balance check in a spreadsheet before creating your import file. If you're using a tool like ReckonFlow, the balance check is automatic: the output shows whether the statement balances or flags the discrepancy.
3. Use the Right Date Format for Your Platform
Date format errors are the #1 cause of failed Xero CSV imports during EOFY. Here's the rule:
| Platform | Date format | Notes |
| Xero CSV | DD/MM/YYYY or YYYY-MM-DD | Column A = Date. Position is everything: Xero reads columns positionally, not by header name. |
| MYOB QIF | DD/MM/YYYY | QIF is more flexible than CSV. MYOB handles AU dates natively. |
| Excel | DD/MM/YYYY (but...) | Excel may auto-convert to MM/DD/YYYY depending on your regional settings. Open CSV in a text editor first, not Excel. |
EOFY trap: June 30 transactions that post on July 1 (weekend/public holiday processing). Always use the transaction date (June 30) not the post date (July 1) for EOFY. This matters most for direct debits and salary payments that cross the financial year boundary.
4. Prioritise Clients by BAS Deadline
Not all clients have the same deadline. Sort them:
| Client type | BAS deadline | Priority |
| Monthly lodger (GST turnover > $20M or choice) | July 7 | HIGH: shortest window |
| Quarterly lodger (most small businesses) | July 28 | MEDIUM: more time |
| Annual lodger (under $75K turnover) | October 31 | LOW: but don't deprioritise entirely |
Process monthly lodgers first (June 1-25). Then quarterly lodgers (June 20 - July 14). This way the tightest deadlines get the most buffer time.
5. Handle Missing Statements Gracefully
A client forgets to send their savings account statement. It's June 28. You've already processed their main transaction account. What do you do?
Option A: Import the main account, note the missing account, lodge BAS, reconcile the savings account when it arrives. The BAS doesn't need every account to be reconciled: it needs the transactions that affect GST, PAYG, and other BAS items. A savings account with minimal transaction activity usually has no BAS impact.
Option B: Estimate the savings account balance from the previous statement and assume minimal activity. Flag it for correction. This works for dormant or low-activity accounts.
Option C: Chase the client aggressively. Call them. Offer to walk them through the bank's download portal. Some clients just need hand-holding at EOFY.
The key principle: don't let a missing statement block an entire BAS lodgement. Import what you have, note what's missing, and fix it post-lodgement. A late statement is a fixable problem. A late BAS lodgement has penalties.
6. Batch Your Conversion Work
Processing statements one at a time is the default workflow, but it's also the slowest. If you have 10 statements to process for 5 clients, batch the mechanical work:
1. Collect phase (June 1-20): Collect all PDFs. Name them consistently. No conversion yet.
2. Convert phase (June 20-25): Convert every collected statement in one sitting. Run balance verification on each.
3. Import phase (June 25-30): Import all CSVs into Xero. Reconcile each account.
4. Review phase (July 1-7): Final check, flag discrepancies, lodge BAS.
Batching the conversion means you stay in "converter mode" for one session instead of switching contexts 10 times. Each switch costs 5-10 minutes of mental context recovery. Over 10 statements, that's an hour of wasted brainpower.
7. Know When to Use a Bank Feed vs CSV Import
Bank feeds are the ideal: transactions arrive automatically, daily. But feeds have gaps:
- New accounts don't have feed history: you need historical CSV import
- Some banks don't offer feeds (or charge extra)
- Feeds can break during EOFY (happens every year to someone)
- Feeds only pull from the connection date: you still need to import pre-feed history
The hybrid approach that works: use bank feeds for ongoing daily transactions from the connection date forward. Use CSV import from a PDF converter for historical periods, new accounts, and feed gaps. Run balance verification on every CSV import regardless of whether a feed exists.
8. One-Week-Out Checklist
Seven days before EOFY (June 23), run through this:
- [ ] Every client contacted: statement requests sent?
- [ ] Statements collected for at least 80% of clients?
- [ ] All collected statements converted and balance-verified?
- [ ] CSVs imported into Xero?
- [ ] Discrepancies flagged and investigation started?
- [ ] Bank feeds checked: any broken feeds to fix before June 30?
- [ ] Monthly lodger clients prioritised?
- [ ] Dormant accounts accounted for (statements requested, even if zero activity)?
- [ ] You've planned your own EOFY: coffee, takeout, no other commitments?
The last point matters more than it sounds. Bookkeepers who burn out during EOFY make errors. The statements will still be there on July 1. Process what you can, be honest with clients about capacity, and don't let perfect be the enemy of lodged.
Frequently Asked Questions
What are the most important EOFY tips for bookkeepers?
The top three: (1) Send statement collection emails before June 1: chasing late clients is the biggest time sink. (2) Run balance verification before importing anything into Xero: fixing a discrepancy after reconciliation takes 5x longer. (3) Know your clients' BAS deadlines: monthly lodgers (July 7) need priority over quarterly (July 28).
How do I handle June 30 transactions that post in July?
Use the transaction date (June 30) not the post date (July 1) for EOFY. This is especially important for direct debits, salary payments, and credit card transactions that cross the financial year boundary. Check every statement for this: it's the most common single-day date error at EOFY.
What if a client hasn't sent their bank statement by June 25?
Chase them immediately (phone call, not email). If they can't produce it within 48 hours, estimate the transactions from their bank feed (if they have one) or the previous month's statement pattern. Flag the estimate for correction. Do not delay BAS lodgement for one missing statement.
Should I use bank feeds or CSV import for EOFY?
Both. Bank feeds for ongoing daily transactions. CSV import for historical periods, new accounts, and any accounts where the feed doesn't cover the full financial year. Run balance verification on CSV imports even if a feed exists: feeds can miss transactions too.
How long does EOFY reconciliation take per client?
For a standard client with 2-3 bank accounts and normal transaction volume, 30-60 minutes total including statement collection, conversion, import, and reconciliation. Batch conversion (all PDFs → CSVs in one session) reduces the mechanical work to about 2-3 minutes per account.
Conclusion
EOFY doesn't have to mean burnout. The difference between a smooth EOFY and a frantic one is a process you trust. Send that statement request email today. Batch your conversion work. Run balance verification before import. Prioritise by deadline. Handle missing statements pragmatically.
You've got this. One statement at a time.
Need to speed up your conversion process? ReckonFlow converts bank statement PDFs to balance-verified CSV and QIF in 30 seconds. Works with CBA, ANZ, Westpac, NAB, and Macquarie. Free tier available.
---
Make next EOFY your smoothest yet
ReckonFlow converts PDF bank statements to verified CSV files for Xero import. Batch-processing, balance checks, and multi-bank support built in.