Importing records

Peace imports one CSV format, and it is the one Peace exports. A file from Settings › Backup & export › Spreadsheet comes back in untouched. A file from another app needs its columns renamed and arranged once, in any spreadsheet, to match the table below.

Download the template — five example rows, one of each kind. The app can save the same template for you from Backup & export.

Columns

The first row names the columns, in any order and any case. Only the four marked required must be there; leave out any of the others. Columns Peace does not know are ignored.

ColumnWhat goes in it
date
required
YYYY-MM-DD, like 2026-08-31. No other order is accepted: 03/08/2026 is a real date in two different months, and guessing wrong is a mistake nobody would spot.
timeHH:MM, 24-hour. Leave it empty and the record is put at midday.
type
required
expense, income, transfer or correction. The type decides which side a record is on — not the sign of the amount.
amount
required
A plain number with a dot for decimals: 1234.50. No thousands separators, no currency symbol, and no more decimals than the currency has. For an expense, income or transfer the sign is ignored — 50 and -50 are the same lunch. For a correction the sign is the direction: -12 takes twelve off the balance.
currencyA three-letter code like EGP or USD. Leave it empty to use the account’s own. It must match the account’s currency.
account
required
The account the money moved in, by name. An account Peace does not have yet is created.
counter_accountFor a transfer: where the money went. The money leaves account and arrives here.
categoryBy name, for an expense or income. Empty leaves the record uncategorised; a name Peace does not have is created.
parent_categoryTo put category under another one — Snacks under Food. Needed only when two sub-categories share a name.
noteAny text. Commas and line breaks are fine inside quotes, which spreadsheets add for you.
tagsSeparated by semicolons: Holiday 2026;work.
is_refund1 on an expense that is money coming back — a return. It then counts against the category instead of as income.
home_amountRequired for a record in a currency other than your home one: what it was worth in your home currency on the day. Peace works out the rate from it.

Before anything is added

  • Peace shows how many records the file holds and over which dates, every account and category it would create, and every row it cannot import — by line number and reason, so you can fix it in the spreadsheet. The rest can be imported without it.
  • Records already in Peace are skipped. A Peace export carries an id for each record, so importing the same file twice adds nothing the second time.
  • Nothing is written until you tap Import, and the whole import can be undone afterwards — from the same screen, or later from Backup & export.

Files from other apps

  • Spreadsheets in some languages save CSV with semicolons between columns. Peace reads those too — but the amounts must still use a dot for decimals.
  • If your app writes expenses and income in separate columns, make one amount column and a type column beside it.
  • A transfer is one row: account is where the money left, counter_account where it arrived. Moving between accounts in different currencies is not imported — record it in the app, where the rate is asked for.

Importing happens on your phone; the file is not sent anywhere. See Your data.