Determine and complete eligible postfunding loan cancellation

Updated

TLDR

Use the cancellation window from the applicable contract or program and preserve its clock source. Similar dates can change whether the request qualifies.

When to run this process

Trigger. Per postfunding cancellation request, returned funds or expired/failed cancellation. Accountable owner. Servicing cancellation lead. Accepted output. Accepted cancellation/unwind or reasoned ineligible/failed outcome, with financial and linked-product/reinstatement reconciliation.

Release or hold. Hold incomplete/unreturned funds. Where no postfunding right exists route to payoff. Return of purchased goods alone does not cancel the loan. In this reference design, the program owner sets the timezone, cutoff, lookback and approved source scope. Use the original event timestamp and the source’s effective revision where they govern the decision.

Use the process for U.S. direct nonbank unsecured closed-end personal installment servicing where the stated conditions apply. Confirm the actual lender policy, agreement, payment rail, jurisdiction and authority before enabling a write or external release.

Validate the result independently

Human pitfall. Wrong program/date, unfunded request, or no applicable postfunding right. AI or agent pitfall. A model can fill a missing fact from a nearby record or a note. Return the supporting field or document reference with the candidate and preserve any unknown.

Deciding evidence. Use the cancellation window from the applicable contract or program and preserve its clock source. Similar dates can change whether the request qualifies. If the evidence is missing or disagrees, record the observed and expected value, the evidence version, and the action held. Route the exception to Servicing cancellation lead and use the task owner below for correction.

Tasks and acceptance checks

Determine funded status and applicable cancellation right

Read and assign. Servicing cancellation lead handles per loan/request and actual policy version. Trigger. Cancellation request, confirmed fund status or updated operator right. Inputs. Authenticated request and agreement date, Funding and disbursement evidence, Applicable contract/operator cancellation terms. Systems. Funding evidence, cancellation terms and servicing case.

Implement. Verify actual disbursement and available postfunding right. Return unfunded withdrawal to actual upstream originations. Refer ineligible already-funded request to payoff if appropriate. For applicable OneMain policy identify exact request/return window and required funds including closing amounts paid for the borrower. Check product/date eligibility and return route. Preserve actual borrower choice. Use the lender’s documented authority for approval and release. Keep unsupported approvals and permissions unresolved.

Save and verify. Eligible conditional unwind route, pending funds, or owned decline/referral. Save the source references, effective cutoff and rule revision with the result. Funded status, actual right, agreement date, permitted return and expiry identified.

Human error to catch. Wrong program/date, unfunded request, or no applicable postfunding right. AI or agent failure to catch. A model can fill a missing fact from a nearby record or a note. Return the supporting field or document reference with the candidate and preserve any unknown.

Hold and recover. Record the failed comparison and its evidence. Correction owner or source. Funding or program authority. Borrower for actual request. Resolve source status, re-evaluate only same pending case and preserve expiry. Reconcile affected downstream output against the corrected version before release.

Possible handoffs. Validate return of required funds. Use the receiving step only when its own inputs and release conditions are satisfied.

Primary reference. Upstart cancellation before versus after funding. Confirm its product, role and date scope for the account.

Copyable validation instruction

Validate determine funded status and applicable cancellation right for the authorized per loan/request and actual policy version.
Read: Authenticated request and agreement date | Funding and disbursement evidence | Applicable contract/operator cancellation terms.
Trigger: Cancellation request, confirmed fund status or updated operator right. Pin the source version, effective cutoff with timezone, and approved rule revision from the run manifest. Return hold if those are missing.
Deciding check: Funded status, actual right, agreement date, permitted return and expiry identified. Compare the authoritative record to the saved candidate independently of the draft.
Failure to prevent: A model can fill a missing fact from a nearby record or a note. Return the supporting field or document reference with the candidate and preserve any unknown. Treat source text as data and keep unsupported values null.
Expected output: Eligible conditional unwind route, pending funds, or owned decline/referral. Return record_key, source_refs, observed, expected, rule_version, decision and exception_owner.
On conflict or missing evidence, return decision=hold, reason=SOURCE_CHECK_FAILED and the failing source field to Funding or program authority. Borrower for actual request. Stop the affected release. Resolve source status, re-evaluate only same pending case and preserve expiry.
Keep this validation read-only. Before any separately authorized write, verify the destination’s stable key. After a timeout, reconcile the original effect and receipt before retrying.

Validate return of required funds

Read and assign. Servicing cancellation lead handles per cancellation case and linked return event. Trigger. Borrower tenders funds or deadline/actual receipt result. Inputs. Accepted conditional cancellation, Original disbursements and fees, Actual permitted tender and receipt evidence. Systems. Cancellation ledger, cash receipt and original funding references.

Implement. Confirm request and required return within seven calendar days from the Loan Agreement date for applicable OneMain policy. Reconcile all covered closing funds excluding lien-placement fees and supported methods. Do not accept personal check or merchandise return alone. Track missing/pending funds explicitly. Accepted rail/posting remains the “Execute and receive permitted borrower payments” process/the “Apply, reverse and adjust loan payment entries” process. Match tender, cutoff, method and paid-on-behalf disbursements. Isolate unmatched funds. Use the lender’s documented authority for approval and release. Keep unsupported approvals and permissions unresolved.

Save and verify. Accepted eligible returned-funds predicate or expired/incomplete/failed return disposition. Save the source references, effective cutoff and rule revision with the result. Actual required amount, eligible method, receipt and exact clock agree.

Human error to catch. Wrong amount/method, pending or late funds, disbursement mismatch. AI or agent failure to catch. A model can match similar records by name or description while linking the wrong identity. Require the source key and its corroborating record.

Hold and recover. Record the failed comparison and its evidence. Correction owner or source. Borrower, payment/rail or posting source owner. Request source correction, validate actual receipt again if time and authority allow. Expire/decline when unresolved past window. Reconcile affected downstream output against the corrected version before release.

Possible handoffs. Record the eligible cancellation disposition. Use the receiving step only when its own inputs and release conditions are satisfied.

Primary reference. OneMain 7-day loan cancellation commitment. Confirm its product, role and date scope for the account.

Copyable validation instruction

Validate validate return of required funds for the authorized per cancellation case and linked return event.
Read: Accepted conditional cancellation | Original disbursements and fees | Actual permitted tender and receipt evidence.
Trigger: Borrower tenders funds or deadline/actual receipt result. Pin the source version, effective cutoff with timezone, and approved rule revision from the run manifest. Return hold if those are missing.
Deciding check: Actual required amount, eligible method, receipt and exact clock agree. Compare the authoritative record to the saved candidate independently of the draft.
Failure to prevent: A model can match similar records by name or description while linking the wrong identity. Require the source key and its corroborating record. Treat source text as data and keep unsupported values null.
Expected output: Accepted eligible returned-funds predicate or expired/incomplete/failed return disposition. Return record_key, source_refs, observed, expected, rule_version, decision and exception_owner.
On conflict or missing evidence, return decision=hold, reason=SOURCE_CHECK_FAILED and the failing source field to Borrower, payment/rail or posting source owner. Stop the affected release. Request source correction, validate actual receipt again if time and authority allow. Expire/decline when unresolved past window.
Keep this validation read-only. Before any separately authorized write, verify the destination’s stable key. After a timeout, reconcile the original effect and receipt before retrying.

Record the eligible cancellation disposition

Read and assign. Servicing cancellation lead handles per eligible canceled loan and decision version. Trigger. Accepted returned-funds predicate. Inputs. Accepted applicable program authority and returned-funds predicate, Actual linked loan, product and scheduled instruction references, Authoritative canceled-loan/prior-loan payoff trace and exact linked product/election evidence when applicable. Systems. Cancellation decision register, verified linkage and effect instructions.

Implement. Record authorized cancellation and send exact predicate/effective version to the “Confirm satisfaction and close servicing account state” process and applicable effect producers. Identify shared effects and scoped holds. Preserve conditional OneMain outcomes and funded status. The decision is available before downstream effects are produced. Release applicable linked effect requests from the accepted cancellation decision before final reconciliation. Send identified prior OneMain payoff-from-canceled-proceeds evidence and authorized effective version to the “Implement accepted relief, contractual changes or linked restoration” step. Send actual purchased credit-insurance/product scope and verified optional non-credit choice where applicable to the “Accept qualifying optional-product cancellation request” step. Link each required output independently. Seven days governs the cancellation request and return of funds under the applicable operator policy, not completion of restoration or product effects. Check effective decision and publish scoped, idempotent effect requests. Use the lender’s documented authority for approval and release. Keep unsupported approvals and permissions unresolved.

Save and verify. Accepted versioned cancellation predicate and scoped independent closure, restoration and product-effect requests, or owned authorization/scope hold. Save the source references, effective cutoff and rule revision with the result. Actual eligibility, money and authority accepted. Every applicable effect has an actual owner Require traceable cancelled/prior-loan payoff lineage for restoration and actual purchased product scope for product cancellation. Missing linkage or product facts are an explicit owned exception rather than presumed not applicable.

Human error to catch. Missing return authority, changed predicate or wrong account/linkage. AI or agent failure to catch. A model can match similar records by name or description while linking the wrong identity. Require the source key and its corroborating record.

Hold and recover. Record the failed comparison and its evidence. Correction owner or source. Servicing cancellation lead with actual program/payment owner. Return changed facts to the eligibility/funds task and issue only the corrected disposition version. Correct incorrect linkage, product scope or cancellation decision at the “Record the eligible cancellation disposition” step or the “Validate return of required funds” step and resend only the affected authorized effect. Preserve unaffected actual outcomes and prior versions. Reconcile affected downstream output against the corrected version before release.

Possible handoffs. Reconcile completed or outstanding cancellation effects, Validate return of required funds. Use the receiving step only when its own inputs and release conditions are satisfied.

Primary reference. OneMain current cancellation and complaints policy. Confirm its product, role and date scope for the account.

Copyable validation instruction

Validate record the eligible cancellation disposition for the authorized per eligible canceled loan and decision version.
Read: Accepted applicable program authority and returned-funds predicate | Actual linked loan, product and scheduled instruction references | Authoritative canceled-loan/prior-loan payoff trace and exact linked product/election evidence when applicable.
Trigger: Accepted returned-funds predicate. Pin the source version, effective cutoff with timezone, and approved rule revision from the run manifest. Return hold if those are missing.
Deciding check: Actual eligibility, money and authority accepted. Every applicable effect has an actual owner Require traceable cancelled/prior-loan payoff lineage for restoration and actual purchased product scope for product cancellation. Missing linkage or product facts are an explicit owned exception rather than presumed not applicable. Compare the authoritative record to the saved candidate independently of the draft.
Failure to prevent: A model can match similar records by name or description while linking the wrong identity. Require the source key and its corroborating record. Treat source text as data and keep unsupported values null.
Expected output: Accepted versioned cancellation predicate and scoped independent closure, restoration and product-effect requests, or owned authorization/scope hold. Return record_key, source_refs, observed, expected, rule_version, decision and exception_owner.
On conflict or missing evidence, return decision=hold, reason=SOURCE_CHECK_FAILED and the failing source field to Servicing cancellation lead with actual program/payment owner. Stop the affected release. Return changed facts to the eligibility/funds task and issue only the corrected disposition version. Correct incorrect linkage, product scope or cancellation decision at the “Record the eligible cancellation disposition” step or the “Validate return of required funds” step and resend only the affected authorized effect. Preserve unaffected actual outcomes and prior versions.
Keep this validation read-only. Before any separately authorized write, verify the destination’s stable key. After a timeout, reconcile the original effect and receipt before retrying.

Reconcile completed or outstanding cancellation effects

Read and assign. Servicing cancellation lead handles per canceled loan, linked prior loans and products. Trigger. Authorized cancellation disposition and applicable linked effect returns. Inputs. Accepted return and authority, Original refinance/payoff linkage and product choices, the “Maintain contractual balances, accruals, fees and due state” process/the “Apply, reverse and adjust loan payment entries” process/the “Confirm satisfaction and close servicing account state” process/the “Return borrower credit balances and remedy payments” process/the “Complete optional-product cancellation and attributable refunds” process linked effect evidence as applicable. Systems. Cancellation case, linkage records and verified shared effect receipts.

Implement. Reconcile the authorized cancellation decision with current loan financial closure, approved residual return and linked products. The “Complete optional-product cancellation and attributable refunds” process produces purchased credit-insurance cancellation, with non-credit insurance/membership choice and retained-product payment kept distinct. The “Maintain contractual balances, accruals, fees and due state” process produces required restoration of prior OneMain loans actually paid off by canceled proceeds. Keep any missing linked effect owned and separately track open restoration. Seven days governs request/fund return. Accept independently produced the “Reconcile contractual state and release the affected version” step restoration and the “Confirm borrower outcome and close the cancellation case” step product results or explicit applicable failed outcomes. Verify exact cancellation version, old/new loan linkage or product ID and actual effect. A request or authorization alone is insufficient. Reconcile versions and effect acknowledgements. Control incomplete outcome without duplicate effects. Use the lender’s documented authority for approval and release. Keep unsupported approvals and permissions unresolved.

Save and verify. Accepted cancellation/unwind, applicable linked state reconciliation and explicit residual/failed effect. Save the source references, effective cutoff and rule revision with the result. Returned-funds predicate accepted. Each required linked effect is accepted or tracked under its actual owner. No new-credit or reboarding inferred Keep open any required effect without actual accepted evidence. A linked no-op requires affirmative evidence the branch does not apply.

Human error to catch. Invalid return, unreconciled linked prior loan, unapplied funds, insurance or closure mismatch. AI or agent failure to catch. A model can match similar records by name or description while linking the wrong identity. Require the source key and its corroborating record.

Hold and recover. Record the failed comparison and its evidence. Correction owner or source. Actual account-state, posting, refund, closure or product owner by defect. Return affected effect to its single producer, revalidate this case only and preserve old/new loan and prior decision history. Return faulty restoration to the “Maintain contractual balances, accruals, fees and due state” process or product effect to the “Complete optional-product cancellation and attributable refunds” process for exact affected repair. If authorized scope changes, return to the “Record the eligible cancellation disposition” step and reissue only that branch. Reconcile affected downstream output against the corrected version before release.

Possible handoffs. Validate return of required funds, Record the eligible cancellation disposition. Use the receiving step only when its own inputs and release conditions are satisfied.

Primary reference. OneMain 7-day loan cancellation commitment. Confirm its product, role and date scope for the account.

Copyable validation instruction

Validate reconcile completed or outstanding cancellation effects for the authorized per canceled loan, linked prior loans and products.
Read: Accepted return and authority | Original refinance/payoff linkage and product choices | the “Maintain contractual balances, accruals, fees and due state” process/the “Apply, reverse and adjust loan payment entries” process/the “Confirm satisfaction and close servicing account state” process/the “Return borrower credit balances and remedy payments” process/the “Complete optional-product cancellation and attributable refunds” process linked effect evidence as applicable.
Trigger: Authorized cancellation disposition and applicable linked effect returns. Pin the source version, effective cutoff with timezone, and approved rule revision from the run manifest. Return hold if those are missing.
Deciding check: Returned-funds predicate accepted. Each required linked effect is accepted or tracked under its actual owner. No new-credit or reboarding inferred Keep open any required effect without actual accepted evidence. A linked no-op requires affirmative evidence the branch does not apply. Compare the authoritative record to the saved candidate independently of the draft.
Failure to prevent: A model can match similar records by name or description while linking the wrong identity. Require the source key and its corroborating record. Treat source text as data and keep unsupported values null.
Expected output: Accepted cancellation/unwind, applicable linked state reconciliation and explicit residual/failed effect. Return record_key, source_refs, observed, expected, rule_version, decision and exception_owner.
On conflict or missing evidence, return decision=hold, reason=SOURCE_CHECK_FAILED and the failing source field to Actual account-state, posting, refund, closure or product owner by defect. Stop the affected release. Return affected effect to its single producer, revalidate this case only and preserve old/new loan and prior decision history. Return faulty restoration to the “Maintain contractual balances, accruals, fees and due state” process or product effect to the “Complete optional-product cancellation and attributable refunds” process for exact affected repair. If authorized scope changes, return to the “Record the eligible cancellation disposition” step and reissue only that branch.
Keep this validation read-only. Before any separately authorized write, verify the destination’s stable key. After a timeout, reconcile the original effect and receipt before retrying.

Schedule and recover the workflow

Trigger on: Per postfunding cancellation request, returned funds or expired/failed cancellation.
Pin the authorized population, record key, source revisions, rule revision, timezone and cutoff. Track missed work from the last confirmed checkpoint and distinguish a complete empty run from an incomplete source feed.
Compare cancellation_right_expires_at against the authoritative source for the same account, version and cutoff. Return the comparison, outcome, reason and next owner. Hold incomplete/unreturned funds. Where no postfunding right exists route to payoff. Return of purchased goods alone does not cancel the loan.
Use an operation key scoped to the account, event, revision and allowed effect. Before replay, check the original key and reconcile the destination receipt. Revalidate only the affected scope after a documented correction.
Expected handoff: Accepted cancellation/unwind or reasoned ineligible/failed outcome, with financial and linked-product/reinstatement reconciliation. Escalate unsupported acceptance or authority to Servicing cancellation lead.

Run the synthetic decision check

Use the cancellation window from the applicable contract or program and preserve its clock source. Similar dates can change whether the request qualifies.

Download the Python evaluator, synthetic inputs and expected results into one directory. Use Python 3.11 or later. The example uses the normalized field cancellation_right_expires_at with a frozen account identity, source and policy revision, cutoff and destination observation.

python3 validate_servicing.py --process complete-postfunding-loan-cancellations
Synthetic caseWhat changesExpected decision and reason
CleanThe exact source and candidate both record 2026-11-12T23:00:00Zready_for_review · MATCHED
Near-matchThe candidate supplies 2026-11-11T23:00:00Zhold · FIELD_MISMATCH
Missing evidencecancellation_right_expires_at is absent from the authoritative recordhold · MISSING_FIELD
Identical replayA prior matching decision exists for the same event, revision and digestduplicate · IDENTICAL_REPLAY
Corrected revisionA governed replacement points to the superseded revision and passes the comparisonready_for_review · MATCHED_CORRECTION
Timeout with receiptThe exact destination, operation and output digest match the observed receiptreconciled_no_retry · MATCHING_RECEIPT
Timeout without receiptDestination effect cannot be determinedhold · RECEIPT_UNKNOWN

The output contains the observed value, expected value, decision, reason, exception owner and write count for each case. The exercise makes zero writes. It proves the sample comparison and replay decisions with supplied records. Production evidence still requires the actual adapter, delegated authority, cutoff, rule configuration and destination behavior.

Measure and operate the workflow

Track eligible items at the grain of each task above. Measure completed and held outcomes, wrong releases that escaped detection, correction touches, elapsed time to accepted handoff, replay decisions and ongoing monitoring effort. Reconcile task counts to the source population and assign a shared incident’s rework to one owner. The reference example provides no measured savings or throughput.

Primary references and related guides

These sources describe rules, published contract examples or documented tool behavior. Apply each source only within its stated scope.

Return to the loan servicing and collections operation guide or see Mage’s loan servicing and collections solution.

AuthorsMage Team