← Knowledge library

RCM & insurance

Attest a charge, prepare an insured visit and build the guarded local claim

Follow exact wide controls and independent records through performed charge, provisional pricing, immutable API commitment and a saved claim whose remaining checks stay visible.

18 min read · Source baseline f6e9f05f

Verification and applicability

Exact current wide root/Clinic UI observations, normal supported API commitment and independent stored-record verification

Check your installed version, permissions and local configuration.

Before you begin

1. Confirm the episode and its starting prerequisites

Open the intended encounter Revenue Cycle page. Match patient, facility, account, payer route and charge total before writing. This example explicitly says FICTIONAL CANONICAL LOCAL BUILD — NO REAL PATIENT and no real payer. Bound; financial integration pending does not mean the episode is cleared. The IT fixture is a teaching prerequisite, not a UI configuration activation procedure.

Distinct Clinic training patient/account and fictional local payer are explicit.200SAR charge exists, claimed/allowed/paid are0 before normal actions. Canonical coverage Bound; financial integration pending is not financial clearance. Front and Middle Office are blocked.1234
Identify the expressly fictional canonical training episode · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. Distinct Clinic training patient/account and fictional local payer are explicit.200SAR charge exists, claimed/allowed/paid are0 before normal actions. Canonical coverage Bound; financial integration pending is not financial clearance. Front and Middle Office are blocked.

  1. Fictional patient: No real patient data is used.
  2. No real payer: The fixture route is local only.
  3. Binding is not clearance: The current label explicitly retains financial integration pending.
  4. Select an actual charge: Attestation is a distinct operation after fixture initialization.

2. Attest only the performed charge with exact time and unit

In Performed-charge attestation select the intended billable charge. Enter the actual service time and mapped unit, then choose Attest. Here the fictional consultation was1 each at18Oct2026 21:58 Asia/Riyadh, equivalent to18:58UTC. On save the selector disappears because no unattested charges remain. Independent records retain one named performed capture, gross200SAR and late-charge state unknown. No booking, clinical order, coverage or tax fact is substituted.

The actual selected fictional charge is quantity1 KB-CANONICAL-CONSULT. The operator entered18Oct2026 09:58PM in Asia/Riyadh and mapped unit each, then used Attest. This prepared frame is not the saved result.1234
Enter actual service time and mapped unit before attesting · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. The actual selected fictional charge is quantity1 KB-CANONICAL-CONSULT. The operator entered18Oct2026 09:58PM in Asia/Riyadh and mapped unit each, then used Attest. This prepared frame is not the saved result.

  1. Selected charge: Read description, quantity and local code before acting.
  2. Performed local time: 21:58 Riyadh equals18:58UTC, not the time of a booking.
  3. Mapped billing unit: The exact unit is each.
  4. Attest: Normal UI action records the performed fact; it does not verify coverage.
After normal UI attestation the charge selector is replaced by No unattested billable charges loaded. Independent DB confirms one capture at18:58Z, quantity1 each, gross200SAR, is_late_charge unknown and the existing root actor. It does not change clinical orders or establish coverage.1234
Verify the saved performed-charge fact · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. After normal UI attestation the charge selector is replaced by No unattested billable charges loaded. Independent DB confirms one capture at18:58Z, quantity1 each, gross200SAR, is_late_charge unknown and the existing root actor. It does not change clinical orders or establish coverage.

  1. No unattested charge remains: Verify persistence independently, not just absence from a list.
  2. Estimate not presented: Attestation does not present a financial estimate.
  3. One captured charge: Charge integrity is a separate dimension.
  4. Readiness still0: No payer or tax clearance is inferred.

3. Prepare using the approved expiry and read the provisional result

Enter the approved hold expiry in the displayed browser timezone, then choose Prepare insured visit. This historical example used18Oct2026 23:00 Asia/Riyadh, equivalent to20:00UTC; choose a currently valid approved instant in actual operation. The saved result is gross200, allowed150, patient30 and insurer120SAR, one priced line and exact fingerprint. Generic hold language does not prove a reservation: this example has no configured limit references and its independent reservation arrays are empty. Invoice, claim and submission remain separately blocked.

The operator entered18Oct2026 11:00PM in browser timezone Asia/Riyadh and selected Prepare insured visit. This equals20:00UTC. The prior eligibility failures remain local validation records, not payer responses. The first incomplete IT fixture was refused for an empty benefit selector; that refusal and authorized fixture completion are retained in separate evidence.1234
Enter the approved local expiry before preparation · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. The operator entered18Oct2026 11:00PM in browser timezone Asia/Riyadh and selected Prepare insured visit. This equals20:00UTC. The prior eligibility failures remain local validation records, not payer responses. The first incomplete IT fixture was refused for an empty benefit selector; that refusal and authorized fixture completion are retained in separate evidence.

  1. Approved hold expiry: Use a timezone-aware approved instant; do not copy this expired training time into a later visit.
  2. Browser timezone: This frame explicitly shows Asia/Riyadh.
  3. Prepare insured visit: A successful result remains provisional.
  4. Local failed eligibility: Do not describe validation_failed as negative payer coverage.
Normal UI preparation saved one immutable snapshot:200gross,150allowed,30patient and120insurerSAR, one line, expiry20:00Z. It retains the explicit invoice/claim/submission disclaimer. Independent DB has empty reservation arrays: this specific example has no limit references or accumulator hold, despite generic panel language.1234
Read the persisted provisional amounts and expiry · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. Normal UI preparation saved one immutable snapshot:200gross,150allowed,30patient and120insurerSAR, one line, expiry20:00Z. It retains the explicit invoice/claim/submission disclaimer. Independent DB has empty reservation arrays: this specific example has no limit references or accumulator hold, despite generic panel language.

  1. Balanced provisional shares: 150 allowed equals30 patient plus120 insurer.
  2. Exact expiry and digest: Read the preparation expiry and evidence fingerprint.
  3. Provisional result: The toast explicitly leaves invoice and claim blocked.
  4. Riyadh timezone: The displayed11PM is20:00UTC.

4. Hand the unchanged preparation to the supported commitment API

The current page has no commitment button. An authorized integration uses the normal scoped commit-insured-visit API described in the companion guide. Building before commitment was refused with the canonical exactly-once requirement; the historical screenshot did not retain the toast, so it is not presented as visual refusal evidence. The actual API returned committed_awaiting_tax_and_claim. A repeat with the same key returned the same record; another key was refused. The page continues to show Provisional for the preparation because commitment is a separate persisted handoff.

Normal UI preparation saved one immutable snapshot:200gross,150allowed,30patient and120insurerSAR, one line, expiry20:00Z. It retains the explicit invoice/claim/submission disclaimer. Independent DB has empty reservation arrays: this specific example has no limit references or accumulator hold, despite generic panel language.1234
Read the persisted provisional amounts and expiry · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. Normal UI preparation saved one immutable snapshot:200gross,150allowed,30patient and120insurerSAR, one line, expiry20:00Z. It retains the explicit invoice/claim/submission disclaimer. Independent DB has empty reservation arrays: this specific example has no limit references or accumulator hold, despite generic panel language.

  1. Balanced provisional shares: 150 allowed equals30 patient plus120 insurer.
  2. Exact expiry and digest: Read the preparation expiry and evidence fingerprint.
  3. Provisional result: The toast explicitly leaves invoice and claim blocked.
  4. Riyadh timezone: The displayed11PM is20:00UTC.

5. Build the local draft and verify what changed

After the supported commitment, choose Build claim on the episode page. The normal action created exactly one initial claim linked to that commitment, MRCM-13F98CE7-01, with one150SAR line. Charge total remains200; claimed and allowed become150; the draft is not paid or submitted. Readiness remains0 and Queue NPHIES claim stays disabled. Independent records confirm one preparation, one commitment and one initial claim; do not repeatedly build to clear blockers.

After normal API commitment and actual UI Build claim, the episode shows charge200, claimed150, allowed150 and paid0SAR. Independent DB confirms one initial claim linked to the one commitment. Front and Middle Office remain blocked and Queue NPHIES claim is disabled. No tax or payer decision is implied.12345
Separate charge totals from the locally built claim · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. After normal API commitment and actual UI Build claim, the episode shows charge200, claimed150, allowed150 and paid0SAR. Independent DB confirms one initial claim linked to the one commitment. Front and Middle Office remain blocked and Queue NPHIES claim is disabled. No tax or payer decision is implied.

  1. Build claim: The normal action created a local draft after commitment.
  2. Queue disabled: No ready claim is available.
  3. Claimed150: This differs from original charge200.
  4. Paid0 ledger column: No payer payment or bank cash is established.
  5. Readiness0: A saved draft does not clear the episode.
One current claim MRCM-13F98CE7-01 contains one150SAR line with draft_tax_pending and8 clean-claim edits. The panel above still shows estimate Not Presented and eligibility Failed/authorization Not Requested. This is local construction only; claim submitted_at independently remainsNULL.1234
Verify the created draft and count its edits · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. One current claim MRCM-13F98CE7-01 contains one150SAR line with draft_tax_pending and8 clean-claim edits. The panel above still shows estimate Not Presented and eligibility Failed/authorization Not Requested. This is local construction only; claim submitted_at independently remainsNULL.

  1. Exact claim identity: Open this exact claim, not an older fixture.
  2. Draft tax pending: This is not ready, queued, accepted or adjudicated.
  3. Eight clean-claim edits: Investigate each edit in the workbench.
  4. Eligibility and authorization: Failure and not-requested remain distinct facts.

6. Investigate every saved edit rather than treating creation as clearance

The episode shows five blockers; open Revenue Cycle → Claims, match the exact claim and choose Open to see all eight. They are canonical tax pending, incomplete policy hierarchy, eligibility unverified, estimate not presented, coding incomplete, diagnosis missing, estimate unresolved and SBS-first coding required. The fictional ownURN code cannot satisfy licensed external SBS requirements. Resolve each through its separately supported source and operational workflow; do not relabel mock evidence as legal or payer approval.

The episode displays tax pending, incomplete policy hierarchy, unverified eligibility, unpresented estimate and incomplete coding, alongside the one150SAR draft. The workbench additionally retains diagnosis missing, estimate unresolved and SBS-first coding required. Seeded ownURN vocabulary does not satisfy external SBS coding.12345
Read the five episode-level blockers without hiding them · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. The episode displays tax pending, incomplete policy hierarchy, unverified eligibility, unpresented estimate and incomplete coding, alongside the one150SAR draft. The workbench additionally retains diagnosis missing, estimate unresolved and SBS-first coding required. Seeded ownURN vocabulary does not satisfy external SBS coding.

  1. Canonical tax pending: Requires its own legal immutable decision.
  2. Policy/class incomplete: Canonical binding does not populate every legacy hierarchy field.
  3. Eligibility unverified: No payer evidence was created.
  4. Estimate unpresented: Preparation is not estimate presentation.
  5. Coding incomplete: Clinical coding/CDI remains a separate workflow.
The current Claims list shows one initial professional claim, no local invoice, processing draft_tax_pending, adjudication unstated and not submitted. The row links to the exact saved claim. Numeric legacy ledger columns do not encode whether a financial fact was established.12345
Find and open the exact persisted claim · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. The current Claims list shows one initial professional claim, no local invoice, processing draft_tax_pending, adjudication unstated and not submitted. The row links to the exact saved claim. Numeric legacy ledger columns do not encode whether a financial fact was established.

  1. Initial claim identity: Match the case and claim number.
  2. Processing status: Draft tax pending is a local state.
  3. Not submitted: No external exchange is implied.
  4. Open: Open this record for validation and line provenance.
  5. Unstated ledger columns: Do not treat default0 as established bank or payer value.
All eight persisted clean-claim edits are visible. One line retains the ownURN KB-CONSULT code, original gross200SAR, quantity1 each at09:58PM, allowed150 and patient30 in legacy columns. UI benefit decision says no determination, authorization unresolved and tax determination required. Attachment green badge means0 required/0 supplied, not that a complete real payer document set was reviewed.123456
Inspect all eight edits and the original line facts · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. All eight persisted clean-claim edits are visible. One line retains the ownURN KB-CONSULT code, original gross200SAR, quantity1 each at09:58PM, allowed150 and patient30 in legacy columns. UI benefit decision says no determination, authorization unresolved and tax determination required. Attachment green badge means0 required/0 supplied, not that a complete real payer document set was reviewed.

  1. SBS-first required: Local ownURN must not be relabeled as licensed SBS.
  2. Zero attachments required: Read the count; the green label is not evidence of uploaded documents.
  3. Own local vocabulary: KB-CONSULT remains explicitly fictional.
  4. Original gross200: Keep original charge distinct from allowed150.
  5. No determination shown: The read model does not expose a resolved benefit determination here.
  6. Tax determination required: No legal tax decision was fabricated.

7. Interpret the claim, invoice, adjudication, benefit and attachment facts separately

In the claim workbench read draft_tax_pending, no local invoice, no payer claim reference, not submitted and not adjudicated. Original gross200 and allowed150 are distinct. The current read model displays no benefit determination, unresolved authorization and tax determination required; the preparation record must not be used to silently change those displayed facts. The green attachment label has0 required and0 supporting items, so it cannot establish review of a real payer document set. No external acceptance, adjudication, cash or legal tax decision is established.

The claim workbench shows draft_tax_pending, unstated adjudication, unresolved routing, no payer reference, no local invoice, not submitted and not adjudicated. The top six of eight saved edits are visible; the continuation capture shows the entire validation list. Paid0 is a legacy unstated ledger column, not proof of a payer outcome.12345
Read processing, adjudication and submission separately · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. The claim workbench shows draft_tax_pending, unstated adjudication, unresolved routing, no payer reference, no local invoice, not submitted and not adjudicated. The top six of eight saved edits are visible; the continuation capture shows the entire validation list. Paid0 is a legacy unstated ledger column, not proof of a payer outcome.

  1. Processing only: Draft construction is distinct from submission.
  2. Adjudication unstated: No payer adjudication exists.
  3. Not submitted: Independent DB submitted_at isNULL.
  4. No local invoice: Claim and billing record are separate.
  5. Tax validation: A preview cannot replace the immutable legal tax determination.
All eight persisted clean-claim edits are visible. One line retains the ownURN KB-CONSULT code, original gross200SAR, quantity1 each at09:58PM, allowed150 and patient30 in legacy columns. UI benefit decision says no determination, authorization unresolved and tax determination required. Attachment green badge means0 required/0 supplied, not that a complete real payer document set was reviewed.123456
Inspect all eight edits and the original line facts · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. All eight persisted clean-claim edits are visible. One line retains the ownURN KB-CONSULT code, original gross200SAR, quantity1 each at09:58PM, allowed150 and patient30 in legacy columns. UI benefit decision says no determination, authorization unresolved and tax determination required. Attachment green badge means0 required/0 supplied, not that a complete real payer document set was reviewed.

  1. SBS-first required: Local ownURN must not be relabeled as licensed SBS.
  2. Zero attachments required: Read the count; the green label is not evidence of uploaded documents.
  3. Own local vocabulary: KB-CONSULT remains explicitly fictional.
  4. Original gross200: Keep original charge distinct from allowed150.
  5. No determination shown: The read model does not expose a resolved benefit determination here.
  6. Tax determination required: No legal tax decision was fabricated.

Protected refusal and source-history teaching

The earlier incomplete IT baseline was refused because its benefit selector set was empty. Normal API authoring against the active parent was correctly refused as frozen. IT then completed the separately authorized sandbox fixture with the exact authored ownURN/code/version selector using the existing test-factory initialization convention. This is not an operator activation path and does not demonstrate complete immutable child-selector qualification. The first authored PDF used unsupported half_up allocation; it was retained unchanged. The separately authored and reviewed v2 uses the implemented largest_remainder_2dp method. Both byte identities remain in the private evidence snapshot.

What remains after this local success

The saved result is a guarded local draft, not a ready claim. Tax determination, actual licensed coding, complete coverage bridge, resolved/presented estimate, clinical coding/CDI, actual eligibility evidence, permitted external exchange, business processing, adjudication, ledger posting and bank settlement remain distinct work. Existing legacy25 unavailable-source failures, E20 advice and older failed-build examples remain unchanged.

Troubleshooting

Build claim is available but Queue NPHIES claim is disabled

Inspect exact claim state and all edits. Construction may save draft_tax_pending or validation_failed. Complete the separately evidenced prerequisites; a saved local record does not authorize transmission.

After normal API commitment and actual UI Build claim, the episode shows charge200, claimed150, allowed150 and paid0SAR. Independent DB confirms one initial claim linked to the one commitment. Front and Middle Office remain blocked and Queue NPHIES claim is disabled. No tax or payer decision is implied.12345
Separate charge totals from the locally built claim · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. After normal API commitment and actual UI Build claim, the episode shows charge200, claimed150, allowed150 and paid0SAR. Independent DB confirms one initial claim linked to the one commitment. Front and Middle Office remain blocked and Queue NPHIES claim is disabled. No tax or payer decision is implied.

  1. Build claim: The normal action created a local draft after commitment.
  2. Queue disabled: No ready claim is available.
  3. Claimed150: This differs from original charge200.
  4. Paid0 ledger column: No payer payment or bank cash is established.
  5. Readiness0: A saved draft does not clear the episode.
All eight persisted clean-claim edits are visible. One line retains the ownURN KB-CONSULT code, original gross200SAR, quantity1 each at09:58PM, allowed150 and patient30 in legacy columns. UI benefit decision says no determination, authorization unresolved and tax determination required. Attachment green badge means0 required/0 supplied, not that a complete real payer document set was reviewed.123456
Inspect all eight edits and the original line facts · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. All eight persisted clean-claim edits are visible. One line retains the ownURN KB-CONSULT code, original gross200SAR, quantity1 each at09:58PM, allowed150 and patient30 in legacy columns. UI benefit decision says no determination, authorization unresolved and tax determination required. Attachment green badge means0 required/0 supplied, not that a complete real payer document set was reviewed.

  1. SBS-first required: Local ownURN must not be relabeled as licensed SBS.
  2. Zero attachments required: Read the count; the green label is not evidence of uploaded documents.
  3. Own local vocabulary: KB-CONSULT remains explicitly fictional.
  4. Original gross200: Keep original charge distinct from allowed150.
  5. No determination shown: The read model does not expose a resolved benefit determination here.
  6. Tax determination required: No legal tax decision was fabricated.

The old case built a zero-line failed claim

The separate E23 synthetic example stored validation_failed with authorization pending, missing charge capture, incomplete coding and missing claim lines. Normal queue refused. Complete those underlying facts; the older seeded delivered/rejected example is historical fixture data.

Separate Polyclinic synthetic E23 case: normal Build claim saved MRCM-5C7236DC-02 validation_failed with0lines/0SAR and4 edits. Normal queue API refused clean-claim validation. Older seeded CLM-PCL-E23 rejected/delivered example remains unchanged and is not a new external transaction. E20 remittance was untouched.12345
Preserve the separate legacy failed-build teaching case · 2026-10-18Recorded baseline screen · 1728 × 921
Capture details

Actual current MANSOQ isolated fictional training, original wide Chrome capture. Separate Polyclinic synthetic E23 case: normal Build claim saved MRCM-5C7236DC-02 validation_failed with0lines/0SAR and4 edits. Normal queue API refused clean-claim validation. Older seeded CLM-PCL-E23 rejected/delivered example remains unchanged and is not a new external transaction. E20 remittance was untouched.

  1. New failed build: MRCM-5C7236DC-02 is separate from the older seeded claim.
  2. Validation failed: No ready claim or submission.
  3. Four edits: Authorization pending, missing charges, coding and missing lines.
  4. Older fixture preserved: Do not confuse historical seeded status with this new operation.
  5. No captured charge: Complete the underlying clinical-financial prerequisite.

Source evidence

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