← Knowledge library

RCM & insurance

Follow cash before advice, fees, disputed suspense and reversals

Use actual queue and ledger readbacks plus the supported API handoff, preserving original rows and the difference between local cash position, reported advice and real evidence.

22 min read · Source baseline f6e9f05f

Verification and applicability

Normal local finance APIs, actual wide original-version UI, independent stored source rows/conservation views and prepared accounting payload

Check your installed version, permissions and local configuration.

Before you begin

1. Read exactly what each queue counts

Open Revenue Cycle → Remittance. The original pinned screen lists unmatched advice lines and advice-linked receipts without payment notices. It does not expose a separate unmatched-cash collection, so0 unnotified receipts does not mean no cash is held. Our normal import retained a fictional100 receipt; normal settle with allocations=[] then created one100 cash-suspense row with no advice or claim, but the old suspense response still omitted it. The independent stored record is the evidence for that path. This is a known original-version UI/API gap, not a reason to attach cash to an arbitrary advice.

Actual original screen after importing a fictional100 receipt shows0 advice lines and0 advice-linked unnotified receipts. These counts do not state total cash or unmatched cash: the pinned response omits a separate unmatched-cash collection. A later normal settle with empty allocations persisted100 cash suspense, still absent from this old collection.12345
Read original-version queue scope before advice · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual original screen after importing a fictional100 receipt shows0 advice lines and0 advice-linked unnotified receipts. These counts do not state total cash or unmatched cash: the pinned response omits a separate unmatched-cash collection. A later normal settle with empty allocations persisted100 cash suspense, still absent from this old collection.

  1. Advice lines0: No advice imported yet.
  2. Unnotified0: Only advice-linked receipts; not proof cash is0.
  3. Unconfigured owners: No completed suspense governance is claimed.
  4. Cash before advice concept: Actual unmatched-cash read surface is missing in this pinned version.
  5. Compensating entry: No allocation deletion or balancing plug.

2. Import the exact receipt and let unallocated cash remain suspense

An authorized integration POSTs /api/v1/facility/{facilityId}/rcm/finance/cash-receipt/ with bank_account, bank_reference, statement_reference, value_date, posting_date, amount, currency and counterparty_name, then uses settle/ with explicit config_package, bank_transaction and allocations. Without an actual claim/advice attribution, an empty allocation list places the undistributed100 in cash suspense; it is not claim revenue. The receipt has unknown return status and is not treasury-confirmed. Verify the returned ID and stored allocation before retrying an ambiguous request. This current UI has no import/settle authoring form.

Actual original screen after importing a fictional100 receipt shows0 advice lines and0 advice-linked unnotified receipts. These counts do not state total cash or unmatched cash: the pinned response omits a separate unmatched-cash collection. A later normal settle with empty allocations persisted100 cash suspense, still absent from this old collection.12345
Read original-version queue scope before advice · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual original screen after importing a fictional100 receipt shows0 advice lines and0 advice-linked unnotified receipts. These counts do not state total cash or unmatched cash: the pinned response omits a separate unmatched-cash collection. A later normal settle with empty allocations persisted100 cash suspense, still absent from this old collection.

  1. Advice lines0: No advice imported yet.
  2. Unnotified0: Only advice-linked receipts; not proof cash is0.
  3. Unconfigured owners: No completed suspense governance is claimed.
  4. Cash before advice concept: Actual unmatched-cash read surface is missing in this pinned version.
  5. Compensating entry: No allocation deletion or balancing plug.

3. Reconcile unmatched and disputed advice without guessing claims

The normal reconcile/ request supplied a distinct fictional advice150 with two lines:80 reported paid+20 adjustment unmatched, and50 disputed. No claim-match rule was configured in this endpoint, so both became advice suspense with exact explanations. The actual first response was201; exact duplicate returned200 with the same advice, and a changed header151 under the same identity refused400. The actual queue shows100 and50. Four parties and named adjustment fields remain unknown because this normal view does not bind them; a transmitted issuer is not automatically the contractual debtor. No actual payer response, claim match, clinical denial or patient debt is represented.

Actual intermediate local stage: two advice suspense lines100 and50, and one advice-linked unnotified allocated80 receipt. Its separately stored5 fee and15 deduction total the100 fake receipt without a claim target. No treasury confirmation, payment notice, patient debt or real money is established.1234567
Read unmatched/disputed advice separately from unnotified allocation · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual intermediate local stage: two advice suspense lines100 and50, and one advice-linked unnotified allocated80 receipt. Its separately stored5 fee and15 deduction total the100 fake receipt without a claim target. No treasury confirmation, payment notice, patient debt or real money is established.

  1. Two advice lines: One unmatched100; one disputed50.
  2. Unmatched100: No configured claim-match rule; never guess.
  3. Disputed50: Held separately; not a clinical denial.
  4. One unnotified receipt: Advice-linked allocation only.
  5. Allocated80: Fee5 and deduction15 are separate stored fields.
  6. Confirm statement line: Requires exact real evidence in operation; no confirmation performed in this exercise.
  7. Owners unknown: Unresolved governance stays visible.
Actual pre-reversal expanded advice shows reported150 and bank100 in separate local ledgers, each originally distributed exactly. Four party references and five named advice adjustments remain unknown; the separately stored other_identified_fee5 is not a stated NPHIES fee. Draft account beneficiary is unknown and dual control incomplete.1234567
Open both ledgers and retain all unknown party/amount axes · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual pre-reversal expanded advice shows reported150 and bank100 in separate local ledgers, each originally distributed exactly. Four party references and five named advice adjustments remain unknown; the separately stored other_identified_fee5 is not a stated NPHIES fee. Draft account beneficiary is unknown and dual control incomplete.

  1. Exact advice: Use Show both ledgers for this identity.
  2. External payment identity: Explicitly fictional no payer payment.
  3. Debtor unknown: Issuer, sender, debtor and payee are separate facts.
  4. Advice150: Reported ledger, not actual cash.
  5. Cash100: Separate fake receipt distributed80+5+15.
  6. NPHIES fee unknown: Do not relabel other identified fee as NPHIES fee.
  7. Beneficiary unknown: Draft fixture does not verify an actual bank account.

4. Keep fee and deduction distinct from allocated payment

A second separate fictional100 receipt was imported for the fee/return exercise. Its normal settlement saved allocated_amount80, fee_amount5 with fee_kind=other_identified_fee, deduction_amount15 with an explicit fictional deduction reason, and no claim target. These sum100; they were not netted into a claim payment or classified as a clinical denial. Missing fee kind refused400. A later overlong invented fee label produced an unparsed response; independent stored-record inspection confirmed zero allocations for that receipt before using the valid enum in a separate supported request. Do not copy invented enum labels, re-import the advice or blindly repeat a mutation with an unknown outcome. The five named advice adjustments shown on screen still remain unknown; the5 other-identified fee does not establish a NPHIES fee.

Actual intermediate local stage: two advice suspense lines100 and50, and one advice-linked unnotified allocated80 receipt. Its separately stored5 fee and15 deduction total the100 fake receipt without a claim target. No treasury confirmation, payment notice, patient debt or real money is established.1234567
Read unmatched/disputed advice separately from unnotified allocation · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual intermediate local stage: two advice suspense lines100 and50, and one advice-linked unnotified allocated80 receipt. Its separately stored5 fee and15 deduction total the100 fake receipt without a claim target. No treasury confirmation, payment notice, patient debt or real money is established.

  1. Two advice lines: One unmatched100; one disputed50.
  2. Unmatched100: No configured claim-match rule; never guess.
  3. Disputed50: Held separately; not a clinical denial.
  4. One unnotified receipt: Advice-linked allocation only.
  5. Allocated80: Fee5 and deduction15 are separate stored fields.
  6. Confirm statement line: Requires exact real evidence in operation; no confirmation performed in this exercise.
  7. Owners unknown: Unresolved governance stays visible.
Actual pre-reversal expanded advice shows reported150 and bank100 in separate local ledgers, each originally distributed exactly. Four party references and five named advice adjustments remain unknown; the separately stored other_identified_fee5 is not a stated NPHIES fee. Draft account beneficiary is unknown and dual control incomplete.1234567
Open both ledgers and retain all unknown party/amount axes · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual pre-reversal expanded advice shows reported150 and bank100 in separate local ledgers, each originally distributed exactly. Four party references and five named advice adjustments remain unknown; the separately stored other_identified_fee5 is not a stated NPHIES fee. Draft account beneficiary is unknown and dual control incomplete.

  1. Exact advice: Use Show both ledgers for this identity.
  2. External payment identity: Explicitly fictional no payer payment.
  3. Debtor unknown: Issuer, sender, debtor and payee are separate facts.
  4. Advice150: Reported ledger, not actual cash.
  5. Cash100: Separate fake receipt distributed80+5+15.
  6. NPHIES fee unknown: Do not relabel other identified fee as NPHIES fee.
  7. Beneficiary unknown: Draft fixture does not verify an actual bank account.

5. Record a fictional return and inspect the compensating rows

The authorized local returned-payment/ request named the exact second bank_transaction, config_package and fictional reason. It flagged only that mock receipt returned and appended one cash counterentry of-80 allocated,-5 fee,-15 deduction referencing the original. Repeating the request returned already_returned=true and did not reverse again; reverse/ on the original cash allocation also returned already_reversed=true. No actual bank returned money and no treasury confirmation was made. Re-read original and counterentry identities, signed amounts and reasons instead of deleting or editing the original ledger row.

Actual post-return/reversal queue shows one remaining disputed50 advice line and0 live advice-linked unnotified receipts. Independent records retain original100 advice allocation plus its-100 correction and the original80+5+15 cash row plus exact negative counterentry. The separate100 unmatched cash remains stored and is not represented by the old0 unnotified count.12345
Verify remaining disputed advice after preserved counterentries · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual post-return/reversal queue shows one remaining disputed50 advice line and0 live advice-linked unnotified receipts. Independent records retain original100 advice allocation plus its-100 correction and the original80+5+15 cash row plus exact negative counterentry. The separate100 unmatched cash remains stored and is not represented by the old0 unnotified count.

  1. One remaining line: Disputed50 remains unresolved.
  2. Exact50 position: A correction did not clear unrelated disputed advice.
  3. Unnotified0: Returned advice-linked position nets0; not total cash0.
  4. Owners unknown: Remaining suspense still needs a responsible owner.
  5. Returned-payment concept: The recordkeeping action created counterentries; no actual bank return was represented.

6. Reverse one advice allocation without clearing unrelated disputed suspense

A normal reverse/ with ledger=advice, the original100 allocation, config_package and explicit fictional correction reason appended one-100 counterentry. Exact original80paid+20adjustment was retained; repeated reverse returned already_reversed=true. The50 disputed line remained open, which the actual queue now shows. Returned cash and corrected advice are separate actions; neither establishes a payer correction, legal financial concession, patient debt or external acknowledgement. No payment notice was created.

Actual post-return/reversal queue shows one remaining disputed50 advice line and0 live advice-linked unnotified receipts. Independent records retain original100 advice allocation plus its-100 correction and the original80+5+15 cash row plus exact negative counterentry. The separate100 unmatched cash remains stored and is not represented by the old0 unnotified count.12345
Verify remaining disputed advice after preserved counterentries · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual post-return/reversal queue shows one remaining disputed50 advice line and0 live advice-linked unnotified receipts. Independent records retain original100 advice allocation plus its-100 correction and the original80+5+15 cash row plus exact negative counterentry. The separate100 unmatched cash remains stored and is not represented by the old0 unnotified count.

  1. One remaining line: Disputed50 remains unresolved.
  2. Exact50 position: A correction did not clear unrelated disputed advice.
  3. Unnotified0: Returned advice-linked position nets0; not total cash0.
  4. Owners unknown: Remaining suspense still needs a responsible owner.
  5. Returned-payment concept: The recordkeeping action created counterentries; no actual bank return was represented.

7. Separate live position from original-distribution conservation

After these counterentries the actual pinned detail shows advice150/live50/gap100 and bank100/live0/gap100 with variance labels. Its balance-identities serializer compares original header/credit against signed live positions. Independent unmanaged AdviceConservation and CashConservation views instead verify original non-reversal distributions, each with variance0. Preserve both observations: the current labels are a known display discrepancy after reversals, not a broken distribution requiring an extra bank transaction, write-off or balancing plug. The unmatched100 first receipt remains separate and the disputed50 still needs review.

Actual pinned screen after counterentries displays advice150/live50/gap100 and bank100/live0/gap100. Its labels mix live positions with original header/credit. Independent unmanaged database conservation views show0 variance for all original distributions. Preserve these observed labels as a known display discrepancy; do not add balancing entries to make them green.123456
Distinguish displayed live positions from original-distribution conservation · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual original wide Chrome capture, original pinned local Clinic. Actual pinned screen after counterentries displays advice150/live50/gap100 and bank100/live0/gap100. Its labels mix live positions with original header/credit. Independent unmanaged database conservation views show0 variance for all original distributions. Preserve these observed labels as a known display discrepancy; do not add balancing entries to make them green.

  1. Advice live50: After the100 advice counterentry.
  2. Displayed gap100: Original header minus live position; not the original-distribution invariant.
  3. Cash live0: 80+5+15 and exact negatives net0.
  4. Displayed cash gap100: Original credit remains100; local returned flag is separate.
  5. Original-version label: Database conservation views are0; no plug or fake receipt.
  6. Dual control incomplete: No real account approval or evidence invented.

Source evidence

References are pinned to the private MANSOQ source repository. Repository access is required to open these links.