Customer / parent payer
If the payer needs help, support opens the same receipt and payment evidence.
- Pay by card, wallet, or local method
- Authenticate issuer OTP
- See merchant balance or payout
- Create refunds
A role-by-role demo of how a merchant creates a collection page, a customer pays, and Epara teams see the same payment across backoffice, operations, finance, and support.
The guest payer completed checkout; merchant, support, webhook, and backoffice pages now share the captured payment.
This gate proves the guest payer, merchant owner, merchant finance, developer, support, operations, backoffice, and company-owner windows all point to the same school-fee payment.
scenario_readiness_gate_school_2026_001Customer can pay as guest; merchant and Epara teams sign in by role.
/loginrole_journey_school_2026_001verifiedMerchant owner + onboardingMerchant is live before real customer money can movereq_merchant_launchKYB, pricing, payout destination, methods, and live approval are visible.
/onboardingmerchant_activation_demo_market_2026verifiedMerchant ownerMerchant creates and operates the tahsil pagereq_collection_builderBuilder shows payer intake, batch import, share artifacts, reminders, and after-payment automation.
/payment-links/newready_school_link_2026verifiedCustomer / checkoutCustomer payment screens are mappedreq_customer_paymentGuest card, OTP, retry, expired, cancelled, receipt, refund receipt, and wallet claim have money-impact rules.
/pay/school-feepayment_screen_map_school_2026_001verifiedSupportCustomer receipt and support path are safereq_receipt_supportReceipt, refund request, dispute prep, no-capture explanation, and support intake stay customer-safe.
/receipt/rcpt_scenario_001cust_action_school_2026_001verifiedMerchant owner + developerMerchant sees payment object and integration proofreq_merchant_payment_detailPayment detail links checkout, receipt, webhook, ledger, statement, and fulfillment evidence.
/payments/pay_scenario_001int_handoff_school_2026_001verifiedEpara operationsOperations clears the money movementreq_operations_backofficeProvider capture, webhook, receipt support, collection origin, reconciliation, and payout handoff are visible.
/operationsop_decision_school_2026_001verifiedBackoffice reviewerBackoffice sees internal evidence before actingreq_backoffice_reviewRisk, method rail, evidence pack, operator actions, and customer-facing screen boundaries are visible.
/backoffice/scenario-paymentevpack_operator_actionsverifiedEpara company ownerCompany owner separates revenue from liabilitiesreq_company_owner_financeGMV, platform fee, provider cost, reserve liability, merchant payable, and net contribution are separated.
/backoffice/revenuerev_school_2026_001verifiedFrontend quality gateCore role windows pass responsive smokereq_responsive_qualityMobile and desktop role surfaces have required evidence, no generic empty state, and no body overflow.
/scenariobusiness scenario role surfaces keep shared payment evidenceverified| Requirement ID | Requirement | Owner | Route | Acceptance | Evidence | Status |
|---|---|---|---|---|---|---|
| req_entry_decision | Customer and operator entry is separated | Product / access control | /login | Customer can pay as guest; merchant and Epara teams sign in by role. | role_journey_school_2026_001 | verified |
| req_merchant_launch | Merchant is live before real customer money can move | Merchant owner + onboarding | /onboarding | KYB, pricing, payout destination, methods, and live approval are visible. | merchant_activation_demo_market_2026 | verified |
| req_collection_builder | Merchant creates and operates the tahsil page | Merchant owner | /payment-links/new | Builder shows payer intake, batch import, share artifacts, reminders, and after-payment automation. | ready_school_link_2026 | verified |
| req_customer_payment | Customer payment screens are mapped | Customer / checkout | /pay/school-fee | Guest card, OTP, retry, expired, cancelled, receipt, refund receipt, and wallet claim have money-impact rules. | payment_screen_map_school_2026_001 | verified |
| req_receipt_support | Customer receipt and support path are safe | Support | /receipt/rcpt_scenario_001 | Receipt, refund request, dispute prep, no-capture explanation, and support intake stay customer-safe. | cust_action_school_2026_001 | verified |
| req_merchant_payment_detail | Merchant sees payment object and integration proof | Merchant owner + developer | /payments/pay_scenario_001 | Payment detail links checkout, receipt, webhook, ledger, statement, and fulfillment evidence. | int_handoff_school_2026_001 | verified |
| req_operations_backoffice | Operations clears the money movement | Epara operations | /operations | Provider capture, webhook, receipt support, collection origin, reconciliation, and payout handoff are visible. | op_decision_school_2026_001 | verified |
| req_backoffice_review | Backoffice sees internal evidence before acting | Backoffice reviewer | /backoffice/scenario-payment | Risk, method rail, evidence pack, operator actions, and customer-facing screen boundaries are visible. | evpack_operator_actions | verified |
| req_company_owner_finance | Company owner separates revenue from liabilities | Epara company owner | /backoffice/revenue | GMV, platform fee, provider cost, reserve liability, merchant payable, and net contribution are separated. | rev_school_2026_001 | verified |
| req_responsive_quality | Core role windows pass responsive smoke | Frontend quality gate | /scenario | Mobile and desktop role surfaces have required evidence, no generic empty state, and no body overflow. | business scenario role surfaces keep shared payment evidence | verified |
The same customer payment moves through merchant collection, receipt, support, operations, finance, and platform-owner windows without mixing permissions.
role_journey_school_2026_001If the payer needs help, support opens the same receipt and payment evidence.
After payment capture, owner hands finance to settlement and support to receipt/refund cases.
Finance reads the ledger outcome but cannot mutate money movements directly.
Support can create the case; privileged checker or risk completes controlled decisions.
Operations clears the rails evidence before finance and support rely on the record.
Company owner reads contribution margin after finance and operations prove the statement.
Privileged operator is the control point, not the owner of every business workflow.
The same school-fee payment is reviewed by customer, merchant, support, operations, risk, finance, company-owner, and checker windows without mixing authority.
manager_window_review_school_2026_001Can I pay without creating an account?
Sees: Amount, reference, OTP/retry/no-capture paths, receipt proofCan: Pay, authenticate, retry, claim receiptCannot: See merchant balance or approve refundscs_school_2026_001payment_screen_map_school_2026_001guest firstMerchant ownerCollection page and payment objectmgr_merchant_ownerDid my tahsil page collect the school fee?
Sees: Payer ledger, captured payment, receipt, webhook, remindersCan: Create/share collection page, send reminders, view paymentCannot: Approve restricted refund or provider settlementpay_scenario_001trace_publish_school_link_2026live readyMerchant finance managerStatement, balance, and payoutmgr_merchant_financeWhat is gross, fee, reserve, net, and payout?
Sees: Merchant balance, reserve hold, statement export, payout ETACan: Export statement and explain payout readinessCannot: Change ledger postings or provider filesset_2026_06_15_iqdreporting_school_2026_001statement readyMerchant developerDeveloper and webhook workbenchmgr_merchant_developerCan my system trust and fulfill the payment event?
Sees: API key scope, request logs, signed webhook, fulfillment referenceCan: Verify webhook and trace checkout/session logsCannot: See raw card data or approve money movementevt_payment_captured_001int_handoff_school_2026_001fulfilledEpara support specialistSupport casemgr_supportWhat answer is safe for the customer?
Sees: Receipt, refund eligibility, no-capture outcomes, customer intakeCan: Explain status, create support/refund intake, attach evidenceCannot: Self-approve refund or edit ledgerrefreq_school_2026_001tkt_school_parent_receipt_001assignedEpara operations analystOperations clearancemgr_operationsAre provider capture, webhook, receipt, and reconciliation clear?
Sees: Provider capture, webhook outbox, collection origin, refund/no-capture screen mapCan: Verify provider capture and escalate rail issuesCannot: Create merchant pages or approve sensitive refundsroute_live_cards_iqdop_decision_school_2026_001ops clearedEpara risk analystRisk and dispute deskmgr_riskShould capture, refund, dispute, or payout be held?
Sees: Risk decision map, authentication, dispute evidence, exposureCan: Request evidence, hold/release risk postureCannot: Rewrite provider outcome or skip checker gaterisk_decision_map_school_2026risk_map_capture_allowreview requiredEpara finance operatorReconciliation and payout releasemgr_epara_financeCan this statement become a provider payout?
Sees: Statement match, treasury handoff, reserve, payout destinationCan: Match statement and track provider-pending payoutCannot: Take customer payment or bypass maker-checker controlspo_school_2026_001recon_run_school_2026_001provider pendingEpara company ownerPlatform revenuemgr_company_ownerWhat did Epara earn, and what is only liability?
Sees: Fee revenue, provider cost, reserve liability, net contributionCan: Read margin and separate GMV from revenueCannot: Count merchant payable or reserve as revenuerev_school_2026_001evpack_revenue_boundaryrevenue recognizedPrivileged checkerApproval controlmgr_privileged_checkerIs this restricted refund allowed after maker request?
Sees: Permission check, maker-checker guard, audit trace, refund receipt pathCan: Approve controlled refund after evidence existsCannot: Create and approve the same refund aloneref_school_2026_001perm_refund_school_2026controlled| Manager ID | Manager | Window | Route | Business question | Money object | Evidence | Status |
|---|---|---|---|---|---|---|---|
| mgr_customer_entry | Customer / parent payer | Public hosted checkout | /pay/school-fee | Can I pay without creating an account? | cs_school_2026_001 | payment_screen_map_school_2026_001 | guest_first |
| mgr_merchant_owner | Merchant owner | Collection page and payment object | /payment-links/plink_school_2026 | Did my tahsil page collect the school fee? | pay_scenario_001 | trace_publish_school_link_2026 | live ready |
| mgr_merchant_finance | Merchant finance manager | Statement, balance, and payout | /reports/statements/set_2026_06_15_iqd | What is gross, fee, reserve, net, and payout? | set_2026_06_15_iqd | reporting_school_2026_001 | statement_ready |
| mgr_merchant_developer | Merchant developer | Developer and webhook workbench | /developer | Can my system trust and fulfill the payment event? | evt_payment_captured_001 | int_handoff_school_2026_001 | fulfilled |
| mgr_support | Epara support specialist | Support case | /support/scenario-payment | What answer is safe for the customer? | refreq_school_2026_001 | tkt_school_parent_receipt_001 | assigned |
| mgr_operations | Epara operations analyst | Operations clearance | /operations | Are provider capture, webhook, receipt, and reconciliation clear? | route_live_cards_iqd | op_decision_school_2026_001 | ops cleared |
| mgr_risk | Epara risk analyst | Risk and dispute desk | /risk | Should capture, refund, dispute, or payout be held? | risk_decision_map_school_2026 | risk_map_capture_allow | review required |
| mgr_epara_finance | Epara finance operator | Reconciliation and payout release | /backoffice/reconciliation/set_2026_06_15_iqd | Can this statement become a provider payout? | po_school_2026_001 | recon_run_school_2026_001 | provider pending |
| mgr_company_owner | Epara company owner | Platform revenue | /backoffice/revenue | What did Epara earn, and what is only liability? | rev_school_2026_001 | evpack_revenue_boundary | revenue recognized |
| mgr_privileged_checker | Privileged checker | Approval control | /backoffice/approvals/refund-school-2026 | Is this restricted refund allowed after maker request? | ref_school_2026_001 | perm_refund_school_2026 | controlled |
The full scenario includes successful checkout, issuer OTP, retry, expired/cancelled no-capture, receipt, refund receipt, and optional wallet claim.
payment_screen_map_school_2026_001| Screen ID | Screen | Audience | Login | Question | Money impact | Evidence | Status |
|---|---|---|---|---|---|---|---|
| screen_collection_page | Hosted collection page | Customer | No | Can I pay the merchant without signing up? | No money moves until the payer confirms a method | plink_school_2026 | ready |
| screen_guest_card | Guest card checkout | Customer | No | Can I use a local card as a guest? | Capture creates receipt, fee, reserve, ledger, and statement evidence | cs_school_2026_001 | captured |
| screen_issuer_otp | Issuer OTP challenge | Customer / issuer | No | What if my issuer asks for OTP? | Capture happens only after authentication succeeds | auth_school_2026_001 | requires_action |
| screen_retry | Failed payment retry | Customer | No | Can I try another method? | Failed attempt creates no receipt, fee, reserve, or payout | att_school_failed_001 | failed |
| screen_expired | Expired checkout | Customer / support | No | Did money move after timeout? | No capture and no refund work | cs_school_2026_expired_001 | expired |
| screen_cancelled | Cancelled checkout | Customer / support | No | What if I cancel before paying? | No customer money moved | cs_school_2026_cancelled_001 | cancelled |
| screen_receipt | Customer receipt | Customer / support | No | How do I prove I paid? | Read-only proof after capture | EP-RCPT-2026-00041 | issued |
| screen_refund_receipt | Refund receipt | Customer / support | No | What happens after a refund is approved? | Partial refund posts only after maker-checker approval | EP-RFND-2026-00041 | issued |
| screen_wallet_claim | Optional wallet claim | Customer | Optional | Can I save receipt history later? | Wallet claim does not change the original payment record | con_guest_parent_school_001 | optional active |
The main scenario console summarizes the local browser state shared by customer, merchant, support, operations, and finance surfaces.
action_ledger_school_2026_001 / evidence_pack_school_2026_001Demo action state is local to this browser, but every row keeps the same payment, evidence pack, and money-boundary language.
One fixed payment travels through customer checkout, merchant dashboard, balance, payout readiness, webhook, ledger, backoffice, and operations review.
Dashboard login. Login required: Yes. After payment capture, owner hands finance to settlement and support to receipt/refund cases.
Customer can pay without signing up. Epara Wallet sign-in is optional when the customer wants saved methods or wallet balance.
Merchant owner signs in, completes KYB/live readiness in Go Live, creates the collection page, and watches the payment object.
Risk, operations, support, finance, and developer teams see the same payment through controlled internal views.
Reference SCH-2026-00041 is locked before payment so the receipt, ledger, and fulfillment can be explained later.