Step-by-step guide
NjordMatch
Reconcile bank and Shopify CSV exports locally. Import two CSV exports, map their columns, inspect proposed transaction matches and differences, and export your reconciliation for review.
Customers pay by bank transfer quoting their order number, and you want to see which pending Shopify orders have a matching payment before you update them yourself.
The guide and practice files are free to read and download. The complete program is in the paid download; the free practice pack does not include it.
See it in use
Reconcile fictional bank lines to shop orders
A screenshot walkthrough with fictional practice data. Select a step to explore.
1. Start with
Reconcile fictional bank lines to shop orders
The guide provides five bank rows and four order rows.
Sample files and contents
examples/njordmatch/fictional-bank-statement.csv (5 fictional bank lines) and examples/njordmatch/fictional-shopify-orders.csv (4 fictional pending orders).
Practice files and guides are free. The complete app is included only where the product page says so.
2. In the app

Try it in three steps
- Load both CSVs and preview reconciliation.
- Select exact matches and explicitly confirm review.
- Export the reconciliation CSV.
Show every click and setting
- Open your local NjordMatch page. Choose fictional-bank-statement.csv under Bank statement and fictional-shopify-orders.csv under Shopify order export CSV.
- Keep Dot and YYYY-MM-DD; the column lists fill in automatically. Click Preview reconciliation.
- Click Select all exact matches, then tick I reviewed these results and confirm the report.
- Click Export reconciliation CSV.
3. The result
Inspect the result
The actual fixed-example CSV records two exact matches, two unmatched bank rows and one excluded debit. It does not reconcile a live account.
| reference | state | order |
|---|---|---|
| #2041 | Exact match | #2041 |
| #2042 | Exact match | #2042 |
| #2043 | Unmatched | |
| #2044 | Unmatched | |
| Card fees September | Excluded | |
| #2043 | No exact payment | #2043 |
| #2045 | No exact payment | #2045 |
What to check in the practice result
The summary reads “5 payment rows: 2 match, 0 ambiguous, 2 unmatched, 1 excluded/invalid; 0 row errors.” BK-2001 and BK-2002 are Exact match for orders #2041 and #2042. BK-2003 is Unmatched with “Amount or currency differs” (19.00 was paid, order #2043 is 21.00); BK-2004 is Unmatched with “No eligible order with this reference”; the card-fee debit BK-2005 is Excluded as “Not a credit”. Orders #2043 and #2045 appear under “Orders without an exact payment (2)”. njordmatch-report.csv has 7 rows, with selected = yes for the two accepted matches.
The public expected CSV matches the guide’s published bank and order inputs. It is a fixed fictional example, not live reconciliation.
See the workflow at a glance
Choose a short explanation, then follow the worked example below. Check the requirements and compatibility before using your own files.
Keep the unmatched payment visible.
A reference number alone is not the whole reconciliation. NjordMatch compares mapped bank and Shopify CSV exports so you can review exact matches, amount differences and unmatched rows. The fictional example accepts two matches, leaves a 19.00 payment against a 21.00 order unmatched and excludes a card-fee debit. Run it locally with Node.js and desktop Chrome, then export your reviewed report. It does not connect to a bank, move money or post accounting entries; your mapping and review remain essential.
View the illustrated card

Choose a free example or the purchased program
No purchase is needed to inspect the workflow. The two routes have different capabilities.
Try the fixed example in your browser
Review five fictional payments, select the two prepared matches and download a seven-row example report. No setup, account or private files. This teaching page does not import or reconcile your files.
Use your own files in the purchased program
The $7.99 one-time local download includes the program. The free guide pack does not. Check Node.js and desktop Chrome requirements below.
Before you start
- Desktop Google Chrome or another Chromium-based browser. The tool was checked in desktop Chrome; other browsers are not verified.
- A bank statement as CSV or CAMT.053 XML and a Shopify order export CSV: UTF-8 text, up to 2 MB and 10,000 CSV rows per file.
- Statement columns for transaction ID, reference, amount, currency and date (direction and booking status if available); order columns for order name, total, currency and financial status.
- For the purchased program: install Node.js 20.12 or newer. Extract the purchased NjordMatch ZIP and open its NjordMatch folder, then run: node start.mjs
Open http://127.0.0.1:8787/ in desktop Google Chrome. Keep the terminal open; Ctrl+C stops it. The free guide pack has no program or start.mjs file.
Your first result
Open the downloaded local edition
These steps run the purchased program. Extract the purchased NjordMatch ZIP, open its NjordMatch folder and run: node start.mjs
Open http://127.0.0.1:8787/ in desktop Google Chrome. Keep the terminal open while using the program. The free guide pack contains documentation and fictional input files only. Before buying, use the separate fixed example linked above.Open NjordMatch
In your open local copy, follow the controls described below. The three steps are Import files, Map columns and conventions, and Review and confirm.
Import both files
Choose your file under Bank statement (CSV or CAMT.053 XML) and under Shopify order export CSV. To practise first, click Load synthetic demo, which loads two small made-up files.
Check columns and formats
Choose the Decimal separator (Dot or Comma) and Date convention (YYYY-MM-DD, DD/MM/YYYY or MM/DD/YYYY). Check each column list: Transaction ID, Reference, Amount, Currency, Date, Direction and Booking status for payments; Order ID, Reference, Outstanding amount, Currency, Financial status and Cancelled at for orders. Standard headings are filled in automatically and the first two rows of each file are shown. Click Preview reconciliation.
Review the results
Each bank payment gets a state (Exact match, Ambiguous, Unmatched or Excluded) with a reason; orders without an exact payment are listed after the payments. What the states mean explains each one. Tick the matches you accept, or click Select all exact matches.
Confirm and export
Tick I reviewed these results and confirm the report, then click Export reconciliation CSV. The download njordmatch-report.csv lists every payment row, every order without an exact payment and any row errors, with a selected column. Update orders in Shopify yourself; NjordMatch changes nothing there.
A worked example
Reconcile five fictional bank lines with four orders
Input: examples/njordmatch/fictional-bank-statement.csv (5 fictional bank lines) and examples/njordmatch/fictional-shopify-orders.csv (4 fictional pending orders).
- Open your local NjordMatch page. Choose fictional-bank-statement.csv under Bank statement and fictional-shopify-orders.csv under Shopify order export CSV.
- Keep Dot and YYYY-MM-DD; the column lists fill in automatically. Click Preview reconciliation.
- Click Select all exact matches, then tick I reviewed these results and confirm the report.
- Click Export reconciliation CSV.
Expected result: The summary reads “5 payment rows: 2 match, 0 ambiguous, 2 unmatched, 1 excluded/invalid; 0 row errors.” BK-2001 and BK-2002 are Exact match for orders #2041 and #2042. BK-2003 is Unmatched with “Amount or currency differs” (19.00 was paid, order #2043 is 21.00); BK-2004 is Unmatched with “No eligible order with this reference”; the card-fee debit BK-2005 is Excluded as “Not a credit”. Orders #2043 and #2045 appear under “Orders without an exact payment (2)”. njordmatch-report.csv has 7 rows, with selected = yes for the two accepted matches.
Troubleshooting
A payment I expected to match is Excluded.
Only booked credits (direction CRDT, status BOOK) can match, and rows without a direction or status are excluded. Map the Direction and Booking status columns if your bank provides them.
An order never matches.
Only pending or unpaid orders are eligible, and the reference, amount and currency must match exactly. The reference comparison ignores one leading # and letter case; payer names and partial references are never used. A partial payment shows as Unmatched.
A payment shows as Ambiguous.
A transaction, payment reference or order reference appears more than once, so NjordMatch never proposes a match. Check the duplicates in your exports.
Amounts or dates look wrong in the preview.
Set Decimal separator to Comma for amounts such as 49,90, and pick the Date convention your bank uses.
Export reconciliation CSV is greyed out.
Click Preview reconciliation first, then tick I reviewed these results and confirm the report.
My files are gone after reloading the page.
Imported files stay only in the current browser tab and are never uploaded or stored. Choose them again.
Compatibility & limits
- Local CSV comparison only: no bank or Shopify connection, and orders are never marked as paid.
- Exact matches only (reference, amount and currency); review every proposed match.
- Not an accounting or audit certification.
- The complete program is supplied as a purchased local download. The public guide and practice data help you assess the workflow before buying.
Need a hand?
Tell us the product, host application and version, what you tried, and the exact error. Contact support with a fictional example; keep private customer files and passwords out of your message.