Mode
Scenario director

Customer payment is captured

The guest payer completed checkout; merchant, support, webhook, and backoffice pages now share the captured payment.

captured
Merchant launchlive enabled
Collection pageready
Payment lifecyclecaptured
Customer accountguest
Business flowpaid
Scenario readiness gate

Is the end-to-end demo complete?

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_001
demo ready
Collection / paymentplink_school_2026pay_scenario_001
Receipt / statementrcpt_scenario_001set_2026_06_15_iqd
Gate statusdemo_readyEvery row has route, owner, acceptance, and evidence.
Product / access controlCustomer and operator entry is separatedreq_entry_decision

Customer can pay as guest; merchant and Epara teams sign in by role.

/loginrole_journey_school_2026_001verified
Merchant owner + onboardingMerchant is live before real customer money can movereq_merchant_launch

KYB, pricing, payout destination, methods, and live approval are visible.

/onboardingmerchant_activation_demo_market_2026verified
Merchant ownerMerchant creates and operates the tahsil pagereq_collection_builder

Builder shows payer intake, batch import, share artifacts, reminders, and after-payment automation.

/payment-links/newready_school_link_2026verified
Customer / checkoutCustomer payment screens are mappedreq_customer_payment

Guest card, OTP, retry, expired, cancelled, receipt, refund receipt, and wallet claim have money-impact rules.

/pay/school-feepayment_screen_map_school_2026_001verified
SupportCustomer receipt and support path are safereq_receipt_support

Receipt, refund request, dispute prep, no-capture explanation, and support intake stay customer-safe.

/receipt/rcpt_scenario_001cust_action_school_2026_001verified
Merchant owner + developerMerchant sees payment object and integration proofreq_merchant_payment_detail

Payment detail links checkout, receipt, webhook, ledger, statement, and fulfillment evidence.

/payments/pay_scenario_001int_handoff_school_2026_001verified
Epara operationsOperations clears the money movementreq_operations_backoffice

Provider capture, webhook, receipt support, collection origin, reconciliation, and payout handoff are visible.

/operationsop_decision_school_2026_001verified
Backoffice reviewerBackoffice sees internal evidence before actingreq_backoffice_review

Risk, method rail, evidence pack, operator actions, and customer-facing screen boundaries are visible.

/backoffice/scenario-paymentevpack_operator_actionsverified
Epara company ownerCompany owner separates revenue from liabilitiesreq_company_owner_finance

GMV, platform fee, provider cost, reserve liability, merchant payable, and net contribution are separated.

/backoffice/revenuerev_school_2026_001verified
Frontend quality gateCore role windows pass responsive smokereq_responsive_quality

Mobile and desktop role surfaces have required evidence, no generic empty state, and no body overflow.

/scenariobusiness scenario role surfaces keep shared payment evidenceverified

Readiness checklist

Requirement IDRequirementOwnerRouteAcceptanceEvidenceStatus
req_entry_decisionCustomer and operator entry is separatedProduct / access control/loginCustomer can pay as guest; merchant and Epara teams sign in by role.role_journey_school_2026_001verified
req_merchant_launchMerchant is live before real customer money can moveMerchant owner + onboarding/onboardingKYB, pricing, payout destination, methods, and live approval are visible.merchant_activation_demo_market_2026verified
req_collection_builderMerchant creates and operates the tahsil pageMerchant owner/payment-links/newBuilder shows payer intake, batch import, share artifacts, reminders, and after-payment automation.ready_school_link_2026verified
req_customer_paymentCustomer payment screens are mappedCustomer / checkout/pay/school-feeGuest card, OTP, retry, expired, cancelled, receipt, refund receipt, and wallet claim have money-impact rules.payment_screen_map_school_2026_001verified
req_receipt_supportCustomer receipt and support path are safeSupport/receipt/rcpt_scenario_001Receipt, refund request, dispute prep, no-capture explanation, and support intake stay customer-safe.cust_action_school_2026_001verified
req_merchant_payment_detailMerchant sees payment object and integration proofMerchant owner + developer/payments/pay_scenario_001Payment detail links checkout, receipt, webhook, ledger, statement, and fulfillment evidence.int_handoff_school_2026_001verified
req_operations_backofficeOperations clears the money movementEpara operations/operationsProvider capture, webhook, receipt support, collection origin, reconciliation, and payout handoff are visible.op_decision_school_2026_001verified
req_backoffice_reviewBackoffice sees internal evidence before actingBackoffice reviewer/backoffice/scenario-paymentRisk, method rail, evidence pack, operator actions, and customer-facing screen boundaries are visible.evpack_operator_actionsverified
req_company_owner_financeCompany owner separates revenue from liabilitiesEpara company owner/backoffice/revenueGMV, platform fee, provider cost, reserve liability, merchant payable, and net contribution are separated.rev_school_2026_001verified
req_responsive_qualityCore role windows pass responsive smokeFrontend quality gate/scenarioMobile and desktop role surfaces have required evidence, no generic empty state, and no body overflow.business scenario role surfaces keep shared payment evidenceverified
Role journey map

Who sees the school-fee payment, and why?

The same customer payment moves through merchant collection, receipt, support, operations, finance, and platform-owner windows without mixing permissions.

role_journey_school_2026_001
mapped
Customer entryGuest checkoutNo account required to pay or view receipt proof.
Merchant entryDashboard loginOwner/team manage collection, payment, reports, and payout status.
Epara entryRole-based backofficeSupport, risk, operations, finance, and checker roles are separated.
Customer1 roles
Public customer

Customer / parent payer

ready
EntryGuest hosted checkout
LoginNo
Primary view/pay/school-fee

If the payer needs help, support opens the same receipt and payment evidence.

Can
  • Pay by card, wallet, or local method
  • Authenticate issuer OTP
Cannot
  • See merchant balance or payout
  • Create refunds
Merchant2 roles
Merchant dashboard

Merchant owner

live ready
EntryDashboard login
LoginYes
Primary view/payment-links/new

After payment capture, owner hands finance to settlement and support to receipt/refund cases.

Can
  • Create and publish collection pages
  • Invite merchant team members
Cannot
  • Approve own high-risk refunds
  • Change provider settlement files
Merchant dashboard

Merchant finance manager

controlled
EntryScoped merchant team login
LoginYes

Finance reads the ledger outcome but cannot mutate money movements directly.

Can
  • Explain gross, fee, reserve, net
  • Download statement evidence
Cannot
  • Create payment links
  • Approve refunds
Epara4 roles
Internal operator

Epara support specialist

assigned
EntryRole-based backoffice login
LoginYes

Support can create the case; privileged checker or risk completes controlled decisions.

Can
  • Explain receipt and payment status
  • Create refund request
Cannot
  • Self-approve restricted refund
  • Change ledger lines
Internal operator

Epara operations analyst

queued
EntryOperations queue login
LoginYes

Operations clears the rails evidence before finance and support rely on the record.

Can
  • Mark provider reference reviewed
  • Investigate reconciliation differences
Cannot
  • Create merchant collection pages
  • Answer customer support as merchant
Executive / platform finance

Epara company owner

revenue recognized
EntryInternal owner dashboard
LoginYes

Company owner reads contribution margin after finance and operations prove the statement.

Can
  • Read company revenue from the same payment scenario
  • Compare pricing to provider cost
Cannot
  • Count merchant reserve as revenue
  • Rewrite captured payment facts
Internal control

Privileged operator

controlled
EntryElevated role with audit trail
LoginYes

Privileged operator is the control point, not the owner of every business workflow.

Can
  • Approve restricted refund after maker request
  • Approve sensitive access action
Cannot
  • Create and approve the same refund as one actor
  • Delete financial history
Manager window review

Which manager owns each window?

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_001
mapped
Collectionplink_school_2026pay_scenario_001
Receipt / statementrcpt_scenario_001set_2026_06_15_iqd
Payoutpo_school_2026_001Manager views stay separated from money authority.
Customer / parent payerPublic hosted checkoutmgr_customer_entry

Can 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 first
Merchant ownerCollection page and payment objectmgr_merchant_owner

Did 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 ready
Merchant finance managerStatement, balance, and payoutmgr_merchant_finance

What 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 ready
Merchant developerDeveloper and webhook workbenchmgr_merchant_developer

Can 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_001fulfilled
Epara support specialistSupport casemgr_support

What 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_001assigned
Epara operations analystOperations clearancemgr_operations

Are 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 cleared
Epara risk analystRisk and dispute deskmgr_risk

Should 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 required
Epara finance operatorReconciliation and payout releasemgr_epara_finance

Can 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 pending
Epara company ownerPlatform revenuemgr_company_owner

What 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 recognized
Privileged checkerApproval controlmgr_privileged_checker

Is 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 window coverage

Manager IDManagerWindowRouteBusiness questionMoney objectEvidenceStatus
mgr_customer_entryCustomer / parent payerPublic hosted checkout/pay/school-feeCan I pay without creating an account?cs_school_2026_001payment_screen_map_school_2026_001guest_first
mgr_merchant_ownerMerchant ownerCollection page and payment object/payment-links/plink_school_2026Did my tahsil page collect the school fee?pay_scenario_001trace_publish_school_link_2026live ready
mgr_merchant_financeMerchant finance managerStatement, balance, and payout/reports/statements/set_2026_06_15_iqdWhat is gross, fee, reserve, net, and payout?set_2026_06_15_iqdreporting_school_2026_001statement_ready
mgr_merchant_developerMerchant developerDeveloper and webhook workbench/developerCan my system trust and fulfill the payment event?evt_payment_captured_001int_handoff_school_2026_001fulfilled
mgr_supportEpara support specialistSupport case/support/scenario-paymentWhat answer is safe for the customer?refreq_school_2026_001tkt_school_parent_receipt_001assigned
mgr_operationsEpara operations analystOperations clearance/operationsAre provider capture, webhook, receipt, and reconciliation clear?route_live_cards_iqdop_decision_school_2026_001ops cleared
mgr_riskEpara risk analystRisk and dispute desk/riskShould capture, refund, dispute, or payout be held?risk_decision_map_school_2026risk_map_capture_allowreview required
mgr_epara_financeEpara finance operatorReconciliation and payout release/backoffice/reconciliation/set_2026_06_15_iqdCan this statement become a provider payout?po_school_2026_001recon_run_school_2026_001provider pending
mgr_company_ownerEpara company ownerPlatform revenue/backoffice/revenueWhat did Epara earn, and what is only liability?rev_school_2026_001evpack_revenue_boundaryrevenue recognized
mgr_privileged_checkerPrivileged checkerApproval control/backoffice/approvals/refund-school-2026Is this restricted refund allowed after maker request?ref_school_2026_001perm_refund_school_2026controlled
Payment screen map

What payment screens does the demo cover?

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
ready
Entry ruleguest_firstHosted checkout: no account / Wallet and receipt history: optional
Collectionplink_school_2026cs_school_2026_001
Payment / receiptpay_scenario_001rcpt_scenario_001

Payment screen coverage

Screen IDScreenAudienceLoginQuestionMoney impactEvidenceStatus
screen_collection_pageHosted collection pageCustomerNoCan I pay the merchant without signing up?No money moves until the payer confirms a methodplink_school_2026ready
screen_guest_cardGuest card checkoutCustomerNoCan I use a local card as a guest?Capture creates receipt, fee, reserve, ledger, and statement evidencecs_school_2026_001captured
screen_issuer_otpIssuer OTP challengeCustomer / issuerNoWhat if my issuer asks for OTP?Capture happens only after authentication succeedsauth_school_2026_001requires_action
screen_retryFailed payment retryCustomerNoCan I try another method?Failed attempt creates no receipt, fee, reserve, or payoutatt_school_failed_001failed
screen_expiredExpired checkoutCustomer / supportNoDid money move after timeout?No capture and no refund workcs_school_2026_expired_001expired
screen_cancelledCancelled checkoutCustomer / supportNoWhat if I cancel before paying?No customer money movedcs_school_2026_cancelled_001cancelled
screen_receiptCustomer receiptCustomer / supportNoHow do I prove I paid?Read-only proof after captureEP-RCPT-2026-00041issued
screen_refund_receiptRefund receiptCustomer / supportNoWhat happens after a refund is approved?Partial refund posts only after maker-checker approvalEP-RFND-2026-00041issued
screen_wallet_claimOptional wallet claimCustomerOptionalCan I save receipt history later?Wallet claim does not change the original payment recordcon_guest_parent_school_001optional active
Scenario action ledger

What has happened in the demo?

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_001
loading
Payment stagecapturedpay_scenario_001
Customer requestcust_action_resend_receiptcust_action_school_2026_001
Merchant actions0merchant_action_console_school_2026
Operator / method0 / 1operator_action_console_school_2026

Demo action state is local to this browser, but every row keeps the same payment, evidence pack, and money-boundary language.

End-to-end demo

Demo Market creates a collection page and receives a payment

One fixed payment travels through customer checkout, merchant dashboard, balance, payout readiness, webhook, ledger, backoffice, and operations review.

Role lens

Viewing the demo as Merchant owner

Dashboard login. Login required: Yes. After payment capture, owner hands finance to settlement and support to receipt/refund cases.

live ready
Can do
  • Create and publish collection pages
  • Invite merchant team members
  • View captured payments
  • Review dispute evidence request
Cannot do
  • Approve own high-risk refunds
  • Change provider settlement files
  • Override Epara risk decisions
Sees in this business flow
  • Application and onboarding
  • Collection page builder
  • Payment object
  • Team and settings
Customer entryGuest checkout first

Customer can pay without signing up. Epara Wallet sign-in is optional when the customer wants saved methods or wallet balance.

Merchant entryDashboard login required

Merchant owner signs in, completes KYB/live readiness in Go Live, creates the collection page, and watches the payment object.

Epara entryBackoffice by role

Risk, operations, support, finance, and developer teams see the same payment through controlled internal views.

Merchant creates pagePayment Link + Hosted Checkout
Customer paysGuest card or wallet checkout
Backoffice sees itLedger, webhook, provider route
Operations clearsSettlement and support evidence
Customer window

Hosted collection page

completed
School Fee Collection125,000 IQD

Reference SCH-2026-00041 is locked before payment so the receipt, ledger, and fulfillment can be explained later.

Card Paymentcaptured
Epara Walletready
ZainCash local methodready
Open public checkoutOTP challengeRetry failureExpired sessionCancelled checkoutOpen receipt
PL-SCHOOL-2026Public checkout URL is live
Merchant owner

Merchant collection builder and payment object

live
Collection pageSchool Fee Collectionplink_school_2026
Checkout statuscompletedShareable URL created
Paymentcapturedpay_scenario_001
Receiptrcpt_scenario_001Customer and merchant copy available
Company owner

Company owner revenue view

revenue recognized
Customer volume167,000 IQDGMV processed for the merchant, not Epara revenue
Epara fee revenue3,340 IQDprice_demo_market_iq_2026
Reserve liability8,350 IQDHeld for risk release, not income
Net contribution2,000 IQDrev_school_2026_001
In-person counter

Terminal / POS card-present payment

captured
Counter amount42,000 IQDpay_pos_scenario_001
ReaderCounter Reader 01Baghdad main counter / online
Customer entryNFC wallet tokenTap card or NFC wallet, no Epara signup required
AuthorizationAUTH-POS-7421batch_counter_2026_06_15
Merchant finance

Balance, fees, and next payout

matched
Gross paid125,000 IQD
Platform fee2,500 IQD
Reserve hold6,250 IQD
Available balance54,792,473 IQD
Next payout54,831,533 IQDDaily schedule includes hosted checkout and POS counter payment
Payout IDpo_school_2026_001provider_pending
POS contribution39,060 IQDpay_pos_scenario_001
Payout readinessreadyDestination, risk, and provider checks
Settlement statementset_2026_06_15_iqd10 statement lines matched
Epara backoffice

Risk, ledger, provider route, webhook

review required
Risk decisionallowedLow-risk school fee reference
Provider routeLocal Card Switchroute_live_cards_iqd
Ledger movementmov_payment_capture_001Balanced debit and credit lines
Webhook eventdeliveredpayment.captured to merchant endpoint
Operations team

Provider and reconciliation queue

queued
Collection page publishedMerchant owner created a fixed amount hosted checkout page.
Provider capture settled into ledgerCapture, fee, reserve, receipt, and webhook evidence are visible.
Operations reviewReady for operations review after capture.
Approval control

Maker-checker refund approval

awaiting checker
MakerSupport specialistCreates refund request after customer contact
CheckerPrivileged operatorCannot be the same actor as maker
Permissionrefunds.approveRequired before live money movement
Refund requestrefreq_school_2026_001Partial refund approval is ready
Support and receipt

Customer proof, refund, dispute path

ready
CustomerGuest payeralia.school.parent@example.test
Receiptrcpt_scenario_001Immutable receipt snapshot
Refund available125,000 IQDMaker-checker applies if merchant policy requires approval
Dispute statenot applicableNo chargeback case opened
Developers