Reconcio

Results & differences file

Every metric on the results screen and the exact structure of the differences CSV you can download.

Results screen
Results screen

Convergence

Convergence is the share of keys that matched completely, out of all keys found in either file:

convergence = matched / (matched + mismatched + only_in_a + only_in_b)

It is a quick health check of the period. If convergence is below 70%, Reconcio adds a recommendation: most often the key columns don't identify the same records in both files, or a condition is set on the wrong pair of columns.

Row counters

The counters cover every key of both files:

FieldMeaning
matched_rows_countThe key is in both files once, and every condition passed.
mismatched_rows_countThe key is in both files, but at least one condition failed, or the key appears more than once.
missed_rows_count_in_file_aThe key is only in file B.
missed_rows_count_in_file_bThe key is only in file A.
duplicate_key_rows_countKeys that appear more than once in one of the files. They are never counted as matched: they are included in the mismatched or missing rows.
Why duplicates are never matched: if the ledger has two postings of 50 for a key and the PSP has one payment of 100, comparing “any row” would give a random result. Reconcio reports such keys instead of guessing.

Totals of amounts

For numeric compared columns, Reconcio shows the totals in each file and their difference, separately for integer and decimal columns. Numbers are 64-bit, so the totals are exact to the cent.

Totals of numeric columns
Totals of numeric columns
FieldMeaning
column_nameColumn name (as in file A)
total_aSum of the column in file A
total_bSum of the column in file B
differencetotal_a − total_b
difference_percentThe difference as a percentage of total_a
matching_rateShare of rows where the values are equal, from 0 to 1

Key statistics

The quality of a reconciliation depends on the key. These statistics show duplicates, empty values and how well the key identifies records.

FieldMeaning
column_nameKey column
matching_rateShare of key values found in both files, from 0 to 1
duplicates_in_a, duplicates_in_bRepeated key values in file A and file B
nulls_in_a, nulls_in_bEmpty key values — such rows can't be matched
effectivenessHow well the column works as an identifier, from 0 to 1

Column statistics

FieldMeaning
column_nameCompared column
matching_rateShare of rows where the values agree, from 0 to 1
nulls_in_a, nulls_in_bEmpty values in file A and file B
both_nullRows where both values are empty — they count as equal
mismatch_countRows where both values are present and differ
has_issues, has_nullsFlags that highlight the column on the results screen

Recommendations

Each recommendation has a type and details with the data it refers to.

TypeWhen
low_convergenceConvergence is below 70%.
missing_rowsSome keys are only in one file. Details: the file and the number of rows.
duplicates_in_columnA key column has repeated values. Details: the file, the column and the number of duplicates.
numeric_column_differenceThe totals of a numeric column differ between the files.

Differences file

The differences file is a CSV with one row per key. It contains the values from both files side by side and the result of every check, so you can see exactly what differs and send the file to whoever has to investigate.

The columns come in this order:

  1. System fields: all_rule_checks (1 — the key matched completely, 0 — it didn't), absent_in_file_a andabsent_in_file_b (1 — the key is missing from that file),rows_in_file_a and rows_in_file_b (how many rows each file had for the key).
  2. Key columns, without a prefix, named as in file A.
  3. Values for every compared column:file_a_<Column> and file_b_<Column>. A value is empty if the key is missing from that file.
  4. Checks for every compared column, named after the condition: eq_<Column>, gt_,gte_, lt_, lte_,ignore_. 1 — the condition passed, 0 — it failed or the key is missing from one of the files.
Text values are compared without regard to letter case: ABC and abc are equal. Two empty values count as equal for EQ, GTE and LTE.
The differences file is kept for the retention period of your installation; its expiry is diff_file_expired_at in the API and is shown on the results screen. Download the file before then.

Example

Key InvoiceId; EQ on Amount andCurrency; GTE on Quantity. The columns of the file:

# System fields (always first)
all_rule_checks    1 = the key matched completely
absent_in_file_a   1 = the key is only in file B
absent_in_file_b   1 = the key is only in file A
rows_in_file_a     rows with this key in file A
rows_in_file_b     rows with this key in file B
# Key column (no prefix)
InvoiceId
# Values from both files, for every compared column
file_a_Amount      file_b_Amount
file_a_Currency    file_b_Currency
file_a_Quantity    file_b_Quantity
# Check results, for every compared column
eq_Amount  eq_Currency  gte_Quantity

Some rows:

all_rule_checks,absent_in_file_a,absent_in_file_b,rows_in_file_a,rows_in_file_b,InvoiceId,file_a_Amount,file_b_Amount,file_a_Currency,file_b_Currency,file_a_Quantity,file_b_Quantity,eq_Amount,eq_Currency,gte_Quantity
1,0,0,1,1,INV-015,200.00,200.00,EUR,EUR,4,3,1,1,1
0,0,0,1,1,INV-003,1000.00,1000.01,EUR,EUR,5,5,0,1,1
0,0,0,1,1,INV-007,500.00,500.00,EUR,GBP,3,3,1,0,1
0,0,0,2,1,INV-042,50.00,100.00,EUR,EUR,1,1,0,1,1
0,1,0,0,1,INV-089,,750.00,,EUR,,2,0,0,0
0,0,1,1,0,INV-210,450.00,,EUR,,1,,0,0,0
  • INV-015 — matched completely (4 ≥ 3 passes GTE).
  • INV-003 — the amount differs by one cent.
  • INV-007 — the currency differs.
  • INV-042 — two rows in file A for one row in file B: never matched, whatever the values.
  • INV-089 — only in file B.
  • INV-210 — only in file A.

Useful filters in a spreadsheet or SQL:

-- only mismatched keys (present in both files)
all_rule_checks = 0 AND absent_in_file_a = 0 AND absent_in_file_b = 0
-- keys only in one file
absent_in_file_a = 1 OR absent_in_file_b = 1
-- keys that appear more than once
rows_in_file_a > 1 OR rows_in_file_b > 1

Statuses

StatusMeaning
uploadedFiles received, processing hasn't started.
convertingFiles are being converted for comparison (for example, XLSX to CSV).
analyzingReading the files, detecting column types, preparing suggestions.
awaiting_user_configWaiting for you to choose the key and compared columns.
reconcilingThe comparison is running.
completedDone: results, differences file and report are available.
failedAn error occurred; the message is in the error field.

Can't find an answer? Write to support@reconcio.pro