SimetrikDocs
ReferenceAdvanced reconciliation

adv-recon

Subcommands of simetrik adv-recon.

simetrik adv-recon list

List advanced reconciliations in the workspace (filter with --search).

Lists the advanced reconciliations in your workspace. An advanced reconciliation is a Simetrik resource that matches two sides (A and B) through one or more sweeps; this command queries the resource catalog filtered to that resource type and returns each one with its ID and name.

Use it to find the adv_recon_id you need for adv-recon describe, adv-recon execute, or adv-recon sweep-create. Narrow the results by name with --search and cap them with --limit (default 50). For the full configuration of a single one, follow up with adv-recon describe.

See also: adv-recon describe, adv-recon create. Requires CLI access to the workspace. See permissions.

Flags

  • -s, --search <query> — Search by name
  • -l, --limit <n> — Max results
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon list
simetrik adv-recon list --search nomina --limit 20
simetrik adv-recon list --format json

Exit codes

CodeMeaning
0Advanced reconciliations listed
1Server rejected the request
2Invalid input — non-numeric --limit
4Authentication required — run simetrik login

simetrik adv-recon create

Create an advanced reconciliation

Creates an advanced reconciliation — a Simetrik resource that holds the reconcilable groups (the sides) you later match with sweeps. The --groups flag is required and takes a JSON array describing each side; the command posts name plus reconcilable_groups to build the shell.

Reach for this to start a new matching workflow that needs the advanced engine (segmentation, multi-sweep, M:1/M:M cardinalities, compensation). It only creates the container — afterward define matching with adv-recon sweep-create, optionally scope with adv-recon segmentation, choose output columns with adv-recon column-select, then run it with adv-recon execute. The --folder flag places it in a folder. Output defaults to JSON; capture the returned ID for the follow-up commands.

See also: adv-recon update, adv-recon sweep-create, adv-recon execute. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • name — Advanced reconciliation name

Flags

  • --groups <json> — JSON array of reconcilable groups
  • -d, --description <text> — Description
  • --folder <id> — Folder ID
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon create "Nomina vs Banco" --groups '[{"name":"A","resource_id":101},{"name":"B","resource_id":202}]'
simetrik adv-recon create "Pagos PSP" --groups '[{"name":"PSP","resource_id":55}]' --folder 12 --description "Conciliacion mensual"

Exit codes

CodeMeaning
0Advanced reconciliation created
1Server rejected the request
2Invalid input — missing name, or malformed --groups JSON
4Authentication required — run simetrik login

simetrik adv-recon update

Update an advanced reconciliation's name or description (metadata only).

Updates an advanced reconciliation's metadata — its name and/or description. It's a partial update: pass only the flags you want to change (--name, --description) and the rest stay as they are. The first argument is the numeric adv_recon_id.

This does not touch the sides, sweeps, segmentation, or output columns. To change matching rules use adv-recon sweep-update; to inspect the current configuration use adv-recon describe.

See also: adv-recon create, adv-recon describe, adv-recon sweep-update. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • adv_recon_id — Advanced reconciliation ID

Flags

  • --name <n> — New name
  • -d, --description <text> — New description
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon update 4501 --name "Nomina vs Banco (2026)"
simetrik adv-recon update 4501 --description "Conciliacion mensual revisada"

Exit codes

CodeMeaning
0Advanced reconciliation updated
1Server rejected the request
2Invalid input — non-numeric adv_recon_id
4Authentication required — run simetrik login

simetrik adv-recon describe

Show an advanced reconciliation's full configuration: sides, sweeps, segmentation, and output columns.

Returns the full configuration of one advanced reconciliation by its resource_id — its sides, sweeps, segmentation, selected output columns, and current state. This is the read-only counterpart to the mutating commands: use it to confirm what's configured before you change or run anything.

Use adv-recon list when you only need to find an ID by name; use describe once you have the ID and need the detail (for example, to read the sweep and column IDs that adv-recon sweep-create or adv-recon column-select require). Output defaults to JSON.

See also: adv-recon list, adv-recon execute. Requires CLI access to the workspace. See permissions.

Arguments

  • resource_id — Resource ID

Flags

  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon describe 4501
simetrik adv-recon describe 4501 --format table

Exit codes

CodeMeaning
0Configuration returned
1Server rejected the request
2Invalid input — non-numeric resource_id
4Authentication required — run simetrik login

simetrik adv-recon execute

Execute an advanced reconciliation

Runs an advanced reconciliation: it queues the matching job that applies the configured sweeps to the current data on both sides. By default it returns immediately with an event ID. Pass --wait to poll until the task finishes (every 5 seconds, up to --timeout seconds, default 120); under --wait a failed task exits 1 and a poll that runs out of time exits 3.

Use --reprocess to re-run over existing loaded data, and --new-version to produce a new version of the output rather than overwriting. Execution produces results in a draft state — to persist them run adv-recon confirm afterward. Configure the matching with adv-recon sweep-create before the first execute.

See also: adv-recon confirm, adv-recon sweep-create, adv-recon describe. Requires reconciliations · execute. See permissions.

Arguments

  • adv_recon_id — Advanced reconciliation ID

Flags

  • --reprocess — Reprocess existing data
  • --new-version — Create new version
  • -w, --wait — Wait for completion
  • -t, --timeout <n> — Timeout in seconds
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon execute 4501
simetrik adv-recon execute 4501 --reprocess --wait
simetrik adv-recon execute 4501 --new-version --wait --timeout 300

Exit codes

CodeMeaning
0Execution started, or completed when --wait succeeds
1Server rejected the request, or the task finished in a failed state under --wait
2Invalid input — non-numeric adv_recon_id or --timeout
3Timeout — --wait exceeded --timeout before the task finished
4Authentication required — run simetrik login

simetrik adv-recon confirm

Confirm an advanced reconciliation (persist changes)

Persists the result of an advanced reconciliation run — it commits the matches produced by adv-recon execute so they become the official, saved outcome rather than a draft. Like execute, it returns an event ID immediately unless you pass --wait, which polls every 5 seconds up to --timeout seconds (default 120); a failed task exits 1 and a timed-out poll exits 3.

Run this after you've executed and reviewed the draft results. The pairing is deliberate: execute computes, confirm saves. If you re-run execute without confirming, the prior draft is replaced.

See also: adv-recon execute, adv-recon describe. Requires reconciliations · execute. See permissions.

Arguments

  • adv_recon_id — Advanced reconciliation ID

Flags

  • -w, --wait — Wait for completion
  • -t, --timeout <n> — Timeout in seconds
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon confirm 4501
simetrik adv-recon confirm 4501 --wait --timeout 300

Exit codes

CodeMeaning
0Confirmation started, or completed when --wait succeeds
1Server rejected the request, or the task finished in a failed state under --wait
2Invalid input — non-numeric adv_recon_id or --timeout
3Timeout — --wait exceeded --timeout before the task finished
4Authentication required — run simetrik login

simetrik adv-recon column-select

Select columns to propagate into the reconciliation output

Chooses which columns from each side propagate into the reconciliation's output table. Pass --side-a and/or --side-b as JSON arrays of column IDs to select specific columns, or pass --all to take every non-system column from both sides at once.

Use this once the sides are wired up and you've decided what the result should carry forward — it shapes the output, not the matching. To find the column IDs, inspect the sides with adv-recon describe. Matching rules themselves live in adv-recon sweep-create, not here.

See also: adv-recon sweep-create, adv-recon describe. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • adv_recon_id — Advanced reconciliation ID

Flags

  • --side-a <json> — JSON array of column IDs for side A
  • --side-b <json> — JSON array of column IDs for side B
  • --all — Select ALL non-system columns from both sides
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon column-select 4501 --all
simetrik adv-recon column-select 4501 --side-a '[1001,1002]' --side-b '[2001]'

Exit codes

CodeMeaning
0Column selection saved
1Server rejected the request
2Invalid input — non-numeric adv_recon_id, or malformed --side-a/--side-b JSON
4Authentication required — run simetrik login

simetrik adv-recon sweep-create

Create a sweep (rule block) for an advanced reconciliation

Adds a sweep — a block of matching rules — to an advanced reconciliation. Each sweep runs in --position order and matches rows of side A against side B per its --rules. --name is required; --cross-type sets the cardinality or nature (ONE_TO_ONE default, ONE_TO_MANY, MANY_TO_ONE, MANY_TO_MANY, RECONCILIATION as an alias for one-to-one, or COMPENSATION for same-side A-A/B-B).

The shape rules are enforced client-side, so a bad combination fails fast with exit 2: any non-one-to-one, non-compensation cardinality requires --sweep-groups (criteria and aggregate columns); --cross-type=COMPENSATION requires exactly two --compensation-groups entries each with source_side of A or B, and rejects --segmentation-a/--segmentation-b mixed with them. Sweeps default to creating a new version (--new-version); pass --no-new-version to amend the current one. Set up segmentation first with adv-recon segmentation if you plan to scope a sweep with --segmentation-a/--segmentation-b.

See also: adv-recon sweep-update, adv-recon segmentation, adv-recon compensation-create, adv-recon execute. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • adv_recon_id — Advanced reconciliation ID

Flags

  • -n, --name <n> — Sweep name
  • --position <n> — Position
  • --robustness <json> — Robustness thresholds as JSON array of 2 floats
  • --cross-type <s> — Match cardinality or nature: ONE_TO_ONE, ONE_TO_MANY, MANY_TO_ONE, MANY_TO_MANY, RECONCILIATION (alias for ONE_TO_ONE), COMPENSATION (same-side A-A or B-B).
  • --rules <json> — JSON array of matching rules
  • --sweep-groups <json> — JSON array of sweep group definitions (enables M:1 / 1:M / M:M). Each entry: {"prefix_side":"A"|"B","criteria_columns":[<id>],"aggregate_columns":[{"column":<id>,"function":"SUM"}]}
  • --segmentation-a <value> — Side A criteria-column value that scopes this sweep (e.g. "1.Accepted y Refunded - Confirmed"). Requires adv-recon segmentation to have set a criteria column on Side A first. Ignored for compensation sweeps.
  • --segmentation-b <value> — Side B criteria-column value that scopes this sweep (e.g. "PAYMENT"). Requires adv-recon segmentation to have set a criteria column on Side B first. Ignored for compensation sweeps.
  • --compensation-groups <json> — JSON array of compensation group definitions (one per side). Each entry: {"prefix_side":"A"|"B","source_side":"A"|"B","name":"PAYMENT","criteria_column_id":<id>,"due_column_id":<id|null>,"group_values":["PAYMENT"]}. source_side picks which rec_group of the adv_recon feeds the side (B-B compensation uses source_side="B" on both entries). Required when --cross-type=COMPENSATION.
  • --new-version — Create new version
  • --no-new-version — Do not create new version
  • -d, --description <text> — Description
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon sweep-create 4501 --name "Exact match" --rules '[{"column_a":1001,"column_b":2001,"operator":"EQUALS"}]'
simetrik adv-recon sweep-create 4501 --name "Sum to one" --cross-type MANY_TO_ONE --sweep-groups '[{"prefix_side":"A","criteria_columns":[1001],"aggregate_columns":[{"column":1002,"function":"SUM"}]}]' --rules '[{"column_a":1003,"column_b":2001,"operator":"EQUALS"}]'
simetrik adv-recon sweep-create 4501 --name "Comp A-A" --cross-type COMPENSATION --compensation-groups '[{"prefix_side":"A","source_side":"A","name":"PAYMENT","criteria_column_id":1001,"due_column_id":null,"group_values":["PAYMENT"]},{"prefix_side":"B","source_side":"A","name":"REFUND","criteria_column_id":1001,"due_column_id":null,"group_values":["REFUND"]}]'

Exit codes

CodeMeaning
0Sweep created
1Server rejected the request
2Invalid input — missing --name, malformed JSON, unknown --cross-type, or required groups missing for the chosen cardinality
4Authentication required — run simetrik login

simetrik adv-recon sweep-update

Update a sweep's configuration

Updates an existing sweep by its numeric sweep_id. It's a partial update — pass only the fields you want to change: --name, --position (its order in the sweep chain), --robustness (a JSON array of thresholds), --cross-type, or --description.

Use this to tweak a sweep you already created with adv-recon sweep-create — for example to reorder it or adjust its robustness thresholds — without rebuilding it. Note it does not accept new --rules or group definitions; to change the matching rules themselves, recreate the sweep.

See also: adv-recon sweep-create, adv-recon describe. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • sweep_id — Sweep ID

Flags

  • -n, --name <n> — New name
  • --position <n> — New position
  • --robustness <json> — Robustness thresholds as JSON
  • --cross-type <s> — Match cardinality
  • -d, --description <text> — Description
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon sweep-update 9012 --name "Exact match (rev)"
simetrik adv-recon sweep-update 9012 --position 2 --robustness '[0.95,0.99]'

Exit codes

CodeMeaning
0Sweep updated
1Server rejected the request
2Invalid input — non-numeric sweep_id, or malformed --robustness JSON
4Authentication required — run simetrik login

simetrik adv-recon compensation-create

Create compensation criteria for same-side matching (A-A or B-B)

Defines the criteria for same-side (A-A or B-B) compensation matching on an advanced reconciliation. It pairs two columns on one side (--column-a, --column-b, both required numeric IDs) and sets how their values are compared via --operation (absolute_difference default, sum, or subtraction). --side selects which side the criteria applies to (A default or B).

Use this when amounts must net out within one side rather than across sides — for example matching a charge against its refund. Pass --validation with a --tolerance to allow a numeric margin when comparing. This sets up the criteria; the actual compensation matching runs as a sweep created with adv-recon sweep-create --cross-type COMPENSATION.

See also: adv-recon sweep-create, adv-recon describe. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • adv_recon_id — Advanced reconciliation ID

Flags

  • --column-a <id> — Column A ID
  • --column-b <id> — Column B ID
  • --validation — Enable tolerance validation
  • --tolerance <n> — Tolerance value
  • --operation <s> — Operation type: absolute_difference, sum, subtraction
  • --side <s> — Side: A or B
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon compensation-create 4501 --column-a 1001 --column-b 1002 --side A
simetrik adv-recon compensation-create 4501 --column-a 1001 --column-b 1002 --validation --tolerance 0.01 --operation absolute_difference --side B

Exit codes

CodeMeaning
0Compensation criteria created
1Server rejected the request
2Invalid input — non-numeric adv_recon_id or column IDs, or missing --column-a/--column-b
4Authentication required — run simetrik login

simetrik adv-recon segmentation

Set the segmentation criteria for an advanced reconciliation group. Call this ONCE per side — the criteria columns on A and B must emit identical string literals for same-category pairs to match. The server derives categories from the data at execute time; no explicit category list is required.

Sets (or clears) the segmentation criteria for one side's group of an advanced reconciliation, identified by its config_id. Segmentation splits each side into categories so only same-category rows are compared. Pass --criteria-column with the column ID that emits the category label, or --clear to remove the criteria (sets it to null); you must supply exactly one of the two.

Call this once per side. The criteria columns on A and B must emit identical string literals for rows that belong together — the server derives the category set from the data at execute time, so you don't list categories yourself. The chosen column must live on the group's union resource and be ready and inheritable. Configure segmentation before creating sweeps that scope on it via adv-recon sweep-create --segmentation-a/--segmentation-b.

See also: adv-recon sweep-create, adv-recon describe. Writes require reconciliations · create_edit_configure. See permissions.

Arguments

  • config_id — Segmentation configuration ID

Flags

  • --criteria-column <id> — Column ID to use as segmentation criteria (must be on the group’s union resource, ready, and inheritable)
  • --clear — Clear the segmentation configuration (set criteria_column to null)
  • -f, --format <fmt> — Output format: table|json

Examples

simetrik adv-recon segmentation 7788 --criteria-column 1001
simetrik adv-recon segmentation 7788 --clear

Exit codes

CodeMeaning
0Segmentation criteria set or cleared
1Server rejected the request
2Invalid input — non-numeric config_id, or neither --criteria-column nor --clear given
4Authentication required — run simetrik login

On this page