Refund request resolution
Confirm a refund is requested, check the request is complete, then recommend a decision under your policy.
Scenario paths
Pick a predefined path to highlight it through the chain. No model is called; outcomes are illustrative.
- Steps
- Endpoints
- Prepare refund for approval
- Explain the policy
- Ask for the missing details
- Billing specialist review
- Back to support triage
What each endpoint means
Prepare refund for approval · Automated
Code checks amount limits and earlier refunds. Amounts above your limit wait for a person to approve.
Explain the policy · Stop
Reply from a reviewed template, offer alternatives such as a plan change, and include how to appeal.
Ask for the missing details · Automated
Send the template for what is missing. The flow runs again when the customer replies.
Billing specialist review · Human review
A person decides, with the classifier answers attached as context.
Back to support triage · Handoff
Not a refund request; handled as an ordinary support message.
Continues in Support inbox triage
Steps
Confirm the customer is asking for money back.
- Refund requestedRefund information check
- UnclearBilling specialist review
- No refund requestBack to support triage
Question, inputs and notes
Asks:Does the customer ask for money back, a refund, a reversed charge, or a credit for a payment?
Receives
- Inputmessage
- Refund information checkChoice
Make sure the charge and the reason are known before deciding.
- CompleteRefund policy eligibility
- Ask which chargeAsk for the reasonAsk for detailsAsk for the missing details
- Needs a personBilling specialist review
Question, inputs and notes
Asks:What, if anything, is missing from this refund request that `policy_requirements` needs before a decision can be made?
Receives
- Inputmessage
- Inputaccount_charges
- From step 1Confirmed refund request
Branches
- Complete: Code attaches the matched charge and computes days since purchase.
Recommend a decision under the written policy.
- EligiblePrepare refund for approval
- Not eligibleExplain the policy
- Exception reviewNeeds a personBilling specialist review
Question, inputs and notes
Asks:Under `policy`, how should this refund request be decided?
Receives
- Inputrefund_policy
- Inputdays_since_purchase
- From step 2Matched charge and stated reason
About this chain
Goal and input
Ask customers only for what is missing, apply the policy consistently, and keep every money-moving action behind code checks and approval.
The message, the customer's charges and values computed in code, and the policy text.
- message
- The customer's message.
- account_charges
- Recent charges, looked up in code.
- refund_policy
- The refund policy, as written.
- days_since_purchase
- Computed in code for the matched charge.
How it runs
- Charge lookup, day counts and amount limits are computed in code and passed in the state. The classifiers never decide amounts.
- Every path that could move money ends at a code check or a person. None of them issues a refund on a model answer alone.
Sources (4)
Primary documentation this chain builds on.
- SourcedTypeSafe docs · DocumentationSystem One
- SourcedTypeSafe docs · PatternRouting by probability
- SourcedTypeSafe docs · DocumentationModel jaggedness
- SourcedHugging Face · Model cardKev-4B model card