The short answer

The Royal Bank of Canada (RBC) file has 8 columns, dates written as M/D/YYYY and one signed amount column. The CSV written for Wave has the columns Date,Description,Amount. So the date is rewritten as MM/DD/YYYY, the amount is written as one signed number, and the text columns are moved as in the table below.

Paid profile. The free manual column mapper works for any bank, this one included, but the free version writes only the first 25 converted rows of a file. The 9 USD one-time licence adds the ready-made Royal Bank of Canada (RBC) profile (one of the 35 paid profiles) and removes the 25-row limit. The column table on this page is free to read and can be used to fill in the manual mapper.

Open the converter

The converter runs in your browser. Your file is not uploaded.

What the Royal Bank of Canada (RBC) CSV looks like

Note kept with this layout in the profile data: The header names are the French labels listed in the source readme; an export made with the English interface carries English labels in the same positions, so match by position. Month and day have no leading zero. Column 7 is the amount in Canadian dollars, column 8 the amount in US dollars.

What Wave accepts

The file the converter writes for Wave: Date,Description,Amount
Wave columnRequired by WaveFilled from the Royal Bank of Canada (RBC) file
Daterequiredcolumn 3 "Date de l'opération"
Descriptionrequiredcolumn 5 "Description 1" and column 6 "Description 2"
Amountrequiredcolumn 7 "CAD"

From a web search excerpt of the vendor's help page (the page itself refuses automated reading; re-check it in a browser): "To import properly, your CSV file must have three or four columns: date, amount of the transaction (all in one column, or one column each for deposits and withdrawals), and description."

Column-by-column mapping

Every column of the Royal Bank of Canada (RBC) file, left to right, and where it ends up in the Wave file.

ColumnHeader textWhat it holdsWhere it goes in the Wave file
1Type de compteNot usedNot copied
2Numéro du compteAccount or card identifierNot copied
3Date de l'opérationTransaction dateDate, rewritten as MM/DD/YYYY
4Numéro du chèqueReference or check numberNot copied
5Description 1DescriptionDescription
6Description 2DescriptionDescription
7CADAmount, signed (negative is money out)Amount, sign kept (money out is negative)
8USDNot usedNot copied

Pitfalls for Royal Bank of Canada (RBC) to Wave

Dates

Amounts and their direction

Other Wave import rules

Before and after: an invented example

Invented sample data. These four rows were made up for this page. They are not from a real Royal Bank of Canada (RBC) export and hold no real account, name or balance.

The column headings are the header text the source prints. The 2 unused columns of the file are left out of the table.

Before: rows laid out like the Royal Bank of Canada (RBC) file
2: Numéro du compte3: Date de l'opération4: Numéro du chèque5: Description 16: Description 27: CAD
00003/4/2024S0001COFFEE CORNER MAIN ST-4.50
00003/5/2024S0002PAYROLL EXAMPLE CO2500.00
00003/7/2024S0003RENT MARCH-1234.56
00003/11/2024S0004REFUND EXAMPLE SHOP15.25
After: the same rows as a Wave file (Date,Description,Amount)
DateDescriptionAmount
03/04/2024COFFEE CORNER MAIN ST-4.50
03/05/2024PAYROLL EXAMPLE CO2500.00
03/07/2024RENT MARCH-1234.56
03/11/2024REFUND EXAMPLE SHOP15.25

Do it by hand in a spreadsheet, free

These steps need no tool from this site. The cell references follow the column positions of the profile above; if your spreadsheet uses semicolons between formula arguments, replace the commas.

  1. Open the Royal Bank of Canada (RBC) CSV in a spreadsheet program through its import dialog. Set the date column (column 3 "Date de l'opération") to Text so the program does not reinterpret it, and leave the amount columns as numbers.
  2. Row 1 is the header and the transactions start in row 2.
  3. Date: rewrite column C from M/D/YYYY to MM/DD/YYYY (3/4/2024 becomes 03/04/2024). This bank's dates do not have a fixed width, so a position formula is not reliable: split the column into its parts (Text to Columns, or the split function of your spreadsheet) and join them again in the new order.
  4. Amounts: column G is already signed the way Wave wants (money out negative). Copy it as it is.
  5. Text columns: fill Description (from column 5 "Description 1" and column 6 "Description 2"). Where several bank columns feed one column, join them with a separator such as " - ".
  6. Apply Wave's own rules from its help page: Keep only the date, amount and description columns; delete any other columns. The description column can be empty, but if filled it must contain words, not only numbers. Remove special characters such as #, &, $ and * from the file. Files with more than 100 rows tend not to upload; split them into files of no more than 100 rows each.
  7. Keep only the new columns, put the header row Date,Description,Amount on top, save the sheet as a comma-separated CSV, and compare the dates, the direction of the amounts and the number of rows with your statement in Wave's import preview.

Or use the converter

Load the file, choose the Royal Bank of Canada (RBC) profile in the bank list and the target Wave, read the preview, then download. The conversion runs locally in your browser: the file is not uploaded, and only the licence key is sent for unlocking.

Paid profile. The free manual column mapper works for any bank, this one included, but the free version writes only the first 25 converted rows of a file. The 9 USD one-time licence adds the ready-made Royal Bank of Canada (RBC) profile (one of the 35 paid profiles) and removes the 25-row limit. The column table on this page is free to read and can be used to fill in the manual mapper.

Open the converter Licence terms

Where this layout comes from

No bank supplied or approved this layout. It was copied on 5 October 2026 from a public open-source importer file kept by volunteers: firefly-iii/import-configurations, file ca/rbc/default.json

Also read: firefly-iii/import-configurations, file ca/rbc/readme.md

The lines used from the source: "headers": true, "date": "n/j/Y", roles: _ignore, account-number, date_transaction, _ignore, description, description, amount, _ignore ; readme: "The date of transactions is expected in the n/j/Y format (month/day/year)."

The Wave rules come from the vendor's own help pages: support.waveapps.com/hc/en-us/articles/208621626-Upload-a-bank-or-credit-card-statement-in-csv-format (named as text, not linked), support.waveapps.com/hc/en-us/articles/208622596 (named as text, not linked). The official page refuses automated fetches (HTTP 403 or a script-only page), so the rules were read from web search excerpts of that same official URL on the checked date. Re-check in a browser before relying on a detail.

Bank formats change. Banks alter their CSV exports without notice and vendors change their import rules, so this mapping can be out of date. If the preview looks wrong, use the manual column mapper.

Related pages

Royal Bank of Canada (RBC) to other apps

The Royal Bank of Canada (RBC) guides for YNAB, QuickBooks Online and Xero, in the bank list

Other Canada exports to Wave

All banks and apps