UPC templates
The UPC templates are our own neutral layouts, one per list. Use them when your software has no layout UPC Accounting already reads: it is the simplest way to bring books in, and the most general way to take them out. The same templates are written by the exports, so a file exported from one set of UPC books imports into another with equal balances.
General rules
Section titled “General rules”| Rule | Detail |
|---|---|
| Files | One CSV per template, or one .xlsx workbook with a sheet per template, named as below (sheet names ignore case) |
| Header row | One row with these exact names, in any order. Extra columns are ignored. |
| Required columns | Shown in bold; the header must be there, and the value too unless noted |
| Dates | ISO yyyy-MM-dd |
| Amounts | . as the decimal mark, no thousands grouping, no currency symbol |
| Codes | Case-sensitive |
| Active | TRUE or FALSE; empty means TRUE |
| Encoding | UTF-8 (a byte-order mark is fine). Exports write UTF-8 with a byte-order mark, CRLF line ends and RFC 4180 quoting. |
| Size | 25 MB per file; 5,000 entries and 25,000 lines per import |
Accounts
Section titled “Accounts”Sheet Accounts. The chart of accounts.
| Column | Value |
|---|---|
| Code | The account code |
| Name | The account name |
| Class | ASSET, LIABILITY, EQUITY, INCOME or EXPENSE |
| Type, Subtype | The source program’s own type and detail type (free text) |
| ParentCode | The parent account’s code |
| Currency | ISO 4217 code, when the account is in another currency |
| TaxCode | The account’s default tax code |
| Description | Free text |
| Active | TRUE / FALSE |
Code,Name,Class,Type,Subtype,ParentCode,Currency,TaxCode,Description,Active1000,Chequing,ASSET,Bank,,,CAD,,Operating account,TRUE3000,Owner's capital,EQUITY,Equity,,,,,,TRUE5200,Grooming supplies,EXPENSE,Expense,Supplies,,,,,TRUEAccounts are not created on their own: in the import wizard the member maps each one to an account of the books, or chooses to create it.
Parties
Section titled “Parties”Sheet Parties. Customers, suppliers and employees.
| Column | Value |
|---|---|
| Kind | CUSTOMER, VENDOR or EMPLOYEE |
| Code | Your stable code for the party; matched before the name |
| Name | The display name |
| CompanyName, FirstName, LastName | Free text |
| Email, Phone | Free text |
| TaxNumber | The party’s tax or VAT number |
| Currency | ISO 4217 code |
| AddressLine1, AddressLine2, City, Region, PostalCode, Country | The address |
| OpenBalance | Not posted: balances belong in the trial balance |
| Active | TRUE / FALSE |
| Notes | Free text |
Kind,Code,Name,CompanyName,FirstName,LastName,Email,Phone,TaxNumber,Currency,AddressLine1,AddressLine2,City,Region,PostalCode,Country,OpenBalance,Active,NotesVENDOR,V-001,Kibble Wholesale,Kibble Wholesale Inc.,,,orders@example.com,,,CAD,1 Example Road,,Springfield,BC,V0V 0V0,CA,,TRUE,CUSTOMER,C-001,Jane Doe,,Jane,Doe,jane.doe@example.com,,,CAD,,,,,,,,TRUE,Sheet Items. Products and services. Listed in the import check, not imported: the books keep no item list.
| Column | Value |
|---|---|
| Code | Your item code |
| Name | The item name |
| Kind | SERVICE, INVENTORY, NON_INVENTORY, BUNDLE or OTHER |
| Description | Free text |
| SalesPrice, PurchaseCost | Amounts |
| IncomeAccount, ExpenseAccount, AssetAccount | Account codes |
| TaxCode | The item’s tax code |
| QuantityOnHand | A number |
| Active | TRUE / FALSE |
Journal
Section titled “Journal”Sheet Journal. One row per journal line: the most general way to move entries in or out.
| Column | Value |
|---|---|
| EntryNumber | Rows sharing it form one entry, which must balance |
| Date | The entry date |
| DocumentDate | The date of the source document |
| JournalCode | Your journal or source code |
| Reference | The document’s reference |
| EntryMemo | The entry’s description |
| AccountCode | The account’s code |
| AccountName | The account’s name |
| Debit | A non-negative amount in the books’ currency (empty when the line is a credit) |
| Credit | A non-negative amount in the books’ currency (empty when the line is a debit) |
| LineMemo | The line’s description |
| PartyKind | CUSTOMER, VENDOR, EMPLOYEE or empty |
| PartyCode, PartyName | The line’s customer, supplier or employee |
| Class | A class or tracking category (up to 60 characters are kept) |
| Location | A location, mapped to the business’s locations |
| TaxCode, TaxAmount | The line’s tax code and tax amount |
| Currency | ISO 4217 code of a foreign-currency line |
| ForeignAmount | The amount in Currency, signed: positive for a debit |
| ExchangeRate | Books’ currency units per one unit of Currency (for example 1.365 CAD per USD) |
Keep EntryNumber stable between exports: it is part of how an entry already imported is recognized and skipped.
EntryNumber,Date,DocumentDate,JournalCode,Reference,EntryMemo,AccountCode,AccountName,Debit,Credit,LineMemo,PartyKind,PartyCode,PartyName,Class,Location,TaxCode,TaxAmount,Currency,ForeignAmount,ExchangeRateGJ-0042,2026-09-03,2026-09-01,PURCH,INV-1042,Kibble Wholesale invoice 1042,5200,Grooming supplies,45.67,,Dog treats,VENDOR,V-001,Kibble Wholesale,Grooming,Downtown,,,,,GJ-0042,2026-09-03,2026-09-01,PURCH,INV-1042,Kibble Wholesale invoice 1042,1000,Chequing,,45.67,,VENDOR,V-001,Kibble Wholesale,Grooming,Downtown,,,,,GJ-0043,2026-09-10,,GJ,,Shears bought in USD,5200,Grooming supplies,136.50,,,,,,,,,,USD,100.00,1.365GJ-0043,2026-09-10,,GJ,,Shears bought in USD,1010,US dollar account,,136.50,,,,,,,,,USD,-100.00,1.365TrialBalance
Section titled “TrialBalance”Sheet TrialBalance. Balances as of one date; it becomes the books’ opening entry (at most 500 lines, any
difference to opening balance equity). See
Opening balances.
| Column | Value |
|---|---|
| AsOfDate | The date of the balances (one date per file) |
| AccountCode | The account’s code |
| AccountName | The account’s name |
| Debit | A non-negative amount (empty for a credit balance) |
| Credit | A non-negative amount (empty for a debit balance) |
| Currency | The currency of the amounts |
Total debits should equal total credits.
AsOfDate,AccountCode,AccountName,Debit,Credit,Currency2026-08-31,1000,Chequing,4000.00,,CAD2026-08-31,3000,Owner's capital,,4000.00,CADWhen the books export this template, AsOfDate is the start of the exported period: the balances brought
forward into it.
OpenItems
Section titled “OpenItems”Sheet OpenItems. Invoices and bills still open at the cut-over date. Listed in the import check, not
imported: put their balances in the trial balance (receivables and payables).
| Column | Value |
|---|---|
| Kind | INVOICE, BILL, CREDIT_NOTE or VENDOR_CREDIT |
| Number | The document number |
| PartyCode | The party’s code |
| PartyName | The party’s name |
| IssueDate, DueDate | Dates |
| Currency | ISO 4217 code |
| Total | The document total |
| OpenBalance | What is still open |
| Memo | Free text |
Not available yet
Section titled “Not available yet”- Fixed assets and employees templates are not defined yet.
- The payroll template is recognized but not imported; see Payroll provider registers.