Template Bill Import Guide
📋 Overview
Expense Tracker: Koala (“Koala”) supports importing bills from external files, which is useful when you migrate historical records. Supported import sources:
- Template file import: import a standard CSV file
- WeChat bill import: import a bill file exported from WeChat
- Alipay bill import: import a bill file exported from Alipay
- Pixiu bill import: import a CSV file exported from Pixiu
- iCost bill import: import an Excel file exported from iCost
📁 Supported File Formats
- CSV (
.csv): Alipay, Pixiu, Template - Excel (
.xlsx,.xls): WeChat, iCost
🚀 Quick Start
Step 1: Open the import page
- Open Expense Tracker: Koala
- Tap Settings
- Find Bill Import
- Enter the bill import page
Step 2: Choose the import source
- Template file: standard-format CSV
- WeChat: WeChat-exported bill file
- Alipay: Alipay-exported bill file
- Pixiu: Pixiu-exported bill file
- iCost: iCost-exported bill file
⚠️ Important: Choose the correct source, otherwise parsing may fail.
Step 3: Pick a file
- Tap File path
- Select the file in the file picker
- Confirm the file name is shown
📝 Note:
- The file must be stored locally on the device (accessible via the file manager)
- Make sure the file format is correct (CSV or xlsx)
- Make sure the file is not corrupted
Step 4: Link a ledger
- Tap Linked ledger
- Choose the ledger you want to import into
- Confirm the ledger selection
💡 Tip: If you only have one ledger, it will be automatically selected as the default.
Step 5: Parse the file
- Tap the Parse button in the top-right corner
- Wait for the system to parse the file (this may take a few seconds)
- After parsing succeeds, you will be automatically taken to the preview page
⚠️ If parsing fails:
- Check that the file format is correct
- Check that you selected the correct import source
- Check that the file is not corrupted
- Try re-exporting the file
Step 6: Preview and edit
After parsing succeeds, you can do the following on the preview page:
- View all bill records: displayed grouped by date
- Edit a single record: tap a record to modify its category, amount, time, etc.
- Batch operations: long-press any record to enter multi-select mode, then use the bottom action bar (Select all / Delete) to delete records in bulk
- Invalid data: when you tap Import and invalid data exists, you will be prompted to import valid data only or go back and edit
📝 Recommendation: Before importing, preview the data first and make sure it is correct.
Step 7: Import data
- After confirming the data on the preview page is correct
- Tap the Import button
- Wait for the import to complete (this may take a few seconds)
- After a successful import, the result will be displayed
✅ Import successful: All valid records have been imported into the ledger. You can view them in the bill list.
📝 Template CSV Format
To import via template file, prepare a CSV in the format below.
CSV requirements
- Encoding: UTF-8 or GBK
- Delimiter: comma
, - Header row: required in the first line
Example
csv
Transaction Date,Transaction Type,Parent Category,Child Category,Income Amount,Expense Amount,Account,Tags,Remark
2026/01/01,Expense,Food,Lunch,,15.00,Default Account,Office Meal,Lunch with colleagues
2026/01/05,Income,Salary,Monthly Salary,5000.00,,Bank Card,,Monthly SalaryField reference
| Field | Description | Required | Example |
|---|---|---|---|
| Transaction date | Bill date, format: yyyy/MM/dd (also supports yyyy-MM-dd) | ✅ | 2026/01/01 |
| Transaction type | Expense or income | ✅ | Expense / Income |
| Parent category | Level-1 category name | ❌ | Food |
| Child category | Level-2 category name under the parent | ❌ | Breakfast |
| Inflow amount | Amount used when type is income | ✅ | 100.00 |
| Outflow amount | Amount used when type is expense | ✅ | 15 |
| Account | Account name (prefer an existing account) | ❌ | Default Account |
| Note | Bill note | ❌ | Lunch |
| Tags | Tag names, separated by commas | ❌ | Office Meal, Dining Out |
Download the Template File
- On the import page, tap Download Template File
- The system generates a CSV template with only the header row in the current app language, then opens the system share/save sheet
- Fill in your data row by row under the headers, then return to the import page and select the file to import
⚠️ Notes
1. Data Format Requirements
- Date format:
YYYY/MM/DDis supported (e.g.2026/01/01), andYYYY-MM-DDis also compatible - Amount format: numeric, decimals supported (e.g.
100.00) - Transaction type: must be "Expense" or "Income" (Chinese "支出" / "收入" is also supported)
- Category & account: categories/accounts that don't exist in the app are created automatically during import (it is recommended to create your common accounts in advance to avoid non-standard names)
2. Data Validation
Before import, the system automatically validates data:
- ✅ Valid records: correct format, can be imported normally
- ⚠️ Invalid records: format errors, must be corrected before import
- ❌ Skipped records: you can choose to skip invalid records and import only valid data
3. Duplicate Data Handling
- Check for duplicate data before importing
4. Importing Large Data Sets
- If the data volume is large (over 1000 records), import in batches
- Keep the app in the foreground during import
- After import, manually trigger a data sync
💡 Tip: Free users can store up to 300 bills in total across all ledgers; members have no limit. If you have a large data set, check your remaining bill quota before importing.
🔧 FAQ
Q1: Parsing failed?
A: Check the following:
- Is the file format correct (CSV or xlsx)?
- Did you select the correct import source?
- Is the file corrupted?
- Is the file encoding correct (UTF-8 recommended)?
Q2: Data is incomplete after import?
A: Possible reasons:
- Some records had format errors and were skipped by the system
- Categories or accounts don't exist — create them first
- Check invalid records on the preview page
Q3: Can I import images?
A: Image import is not supported at this time.
Q4: Can I edit records after import?
A: Yes. After import, you can edit or delete any record in the bill list.
Q5: Can I import multiple files at once?
A: Not at this time. You can only import one file per session. If you need to import multiple files, do them one by one.
📚 Related Guides
💡 Tips
- Back up existing data before importing
- Verify data correctness after import
- If you have questions, contact the developer via the "Feedback" feature
Last updated: September 2026