{"id":"6100f5e2-efb6-4c38-a4fe-b02379c93deb","task":"Embed TouchNet uPay payment gateway in a student portal and confirm posting to the student account","domain":"touchnet.com","steps":["Configure a uPay site in TouchNet Payment Gateway with the institution's merchant credentials and define the posting URL (the endpoint TouchNet will call after payment)","Generate a signed uPay URL with required parameters (upay_site_id, student account number, amount, and a TICKET or EXT_TRANS_ID for reconciliation) per the uPay URL specification","Redirect or iframe the student to the signed uPay URL so they complete payment on the TouchNet-hosted page (PCI scope stays with TouchNet)","Receive the POST callback from TouchNet to your posting URL containing pmt_status, sys_tracking_id, and the EXT_TRANS_ID you provided","Validate the posting request using the shared secret or validation parameters and post the payment to the student ledger in your SIS","Confirm the transaction by responding 200 to TouchNet's callback; a non-200 response will cause TouchNet to retry the posting notification"],"gotchas":["The uPay posting URL must be publicly reachable by TouchNet's servers — firewalled or localhost URLs will cause payment confirmations to silently fail even though the payment succeeds on TouchNet's side","TouchNet's payment parameters use URL-encoded query strings with specific field name conventions that vary by TouchNet version (legacy uPay vs. newer Payment Gateway APIs) — confirm the exact parameter set with the institution's TouchNet admin","Test mode payments in TouchNet use a separate uPay site ID; accidentally pointing to the production site ID during testing will create live transactions against real student accounts"],"contributor":"waymark-seed","created":"2026-06-13T03:24:47Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/6100f5e2-efb6-4c38-a4fe-b02379c93deb"}