Inside one ShopeePay account sit a Thai-baht wallet float, a running QR-payment ledger, and an SPayLater installment book — the exact records a finance or product team wants to read, reconcile, or sync into its own systems. ShopeePay is run by SeaMoney, the digital-finance arm of Sea Ltd, and the wallet you see today started life as AirPay before a 2021 rebrand; the Play listing still carries the old package id, com.beeasy.airpay, which is a useful tell when you map its traffic. The job on this page is narrow. Get that account data out, in a clean shape, under the account holder's authorization.
Thailand has just written the rulebook for sharing this kind of data, but for an e-money wallet the regulated pipe is still ahead of schedule rather than live. That shapes the route. The dependable basis right now is the user's own consent, captured and logged, with the build structured so it can ride the Bank of Thailand channel the moment the e-money phase opens.
What the account stores
The app folds a lot of daily spending into one wallet, so the data surfaces are broader than a plain balance check. These are the ones worth modelling for a ShopeePay feed.
| Data domain | Where it shows in the app | Granularity | What an integrator does with it |
|---|---|---|---|
| Wallet balance | Home / wallet header | Single THB value, near real-time (held in satang) | Reconcile the float, trigger top-ups, drive a dashboard |
| QR & merchant payments | Activity / transaction list | Per transaction: merchant, amount, time, method | Expense feeds, settlement matching against a POS |
| SPayLater credit & installments | SPayLater section | Credit limit, plan tenor (up to 12 months), schedule, outstanding, rate | BNPL servicing, affordability and repayment tracking |
| Bill payments & top-ups | Pay flows (utilities, mobile, game credits) | Per item: biller, amount, reference | Reconcile recurring spend, categorize outflows |
| Rewards & Shopee Coins | Rewards / vouchers | Balance plus issuance and redemption events | Sync a loyalty ledger, attribute campaign value |
| Linked funding sources | Wallet settings | Masked bank or card tokens, PromptPay handle | Understand top-up routing, map payout rails |
| Profile & KYC tier | Account settings | Identity tier, phone, verification state | Risk checks, onboarding gates |
Where Thailand's data-sharing rules leave an e-money wallet
The Bank of Thailand enacted its Open Data regulation on 30 October 2025, part of the "Your Data" project, and it explicitly names deposit, loan, and payment information including e-Money and credit cards (per the BOT news release). The catch for a wallet is timing. Providers are to enable sharing by the end of 2026 starting with personal deposit account data, then expand to the other categories across 2027 and 2028. Payment and e-money data sits in that later expansion, not the first wave. So as finalized the regime covers ShopeePay's class of data — it just is not the channel a wallet feed can call today.
That leaves the account holder's consent as the working legal and technical basis now, governed by Thailand's PDPA for how the data is handled. We treat the regulated channel as where this is heading and keep the consent artifacts and field map compatible with it, so the feed is not rebuilt when the e-money phase lands. SeaMoney is, per reporting, the first firm to hold a BOT digital personal-loan licence, which is part of why SPayLater data is structured the way it is.
Routes into ShopeePay data we'd actually run
Consented interface integration (protocol analysis of the app's own traffic)
We capture the authenticated calls the app makes for a consenting account, document the request and response shapes, and rebuild the reads as a clean feed. Reachable: everything the account can see — balance, transaction history, SPayLater plans, rewards. Effort is medium; durability tracks the app's release cadence, so the field map needs a re-check when the client changes. Access is provisioned with you during onboarding, against a consenting account or a test profile.
Bank of Thailand Open Data consent (forward-looking)
Once the e-money phase of the "Your Data" framework is live, the same data moves through a regulated, consent-gated channel with the strongest durability of the three. We build the consent-record handling now so adopting that channel is a switch, not a rewrite.
Native activity export
Where the app surfaces a statement or activity export, that file is a low-effort fallback for historical records — useful for backfill, weaker for live sync because it is point-in-time.
For a team that needs data this quarter, the consented interface route is the one we'd build first, because it reaches the full account today and slots straight onto the regulated channel later; the export is worth wiring only if you need history loaded fast.
A read, sketched
The shapes below are illustrative and get confirmed against the live client during the build. ShopeePay uses a device-bound session with a bearer token refreshed on expiry, and amounts come through in satang, the THB minor unit.
# Auth: device-bound session, bearer token refreshed on expiry.
POST /v1/auth/token/refresh
headers: { x-device-id, x-app-ver }
body: { refresh_token }
-> 200 { access_token, expires_in: 3600 }
401 { code: "SESSION_REBIND" } # device must re-bind
GET /v1/wallet/balance
headers: { authorization: "Bearer " }
-> 200 { currency: "THB", available: 184250, unit: "satang" } # = 1,842.50 THB
GET /v1/spaylater/plans?status=active
-> 200 { credit_limit, plans: [
{ id, principal, tenor_months: 6, rate_apr: 0, next_due, outstanding } ] }
# on 401 SESSION_REBIND -> re-run refresh once, then retry the read;
# persist the cursor so a dropped sync resumes, not restarts.
What lands in your repo
Every engagement ships working code, not a slide deck. For ShopeePay that means:
- An OpenAPI spec for the reads we build — balance, transaction history, SPayLater plans, rewards — with the satang-to-baht handling written in.
- A protocol and auth-flow report covering the device-bound session, the token-refresh chain, and the
SESSION_REBINDpath. - Runnable source for the key endpoints in Python or Node.js, with the cursor-based resume logic.
- Automated tests against recorded fixtures so a release-driven shape change fails loudly.
- Interface docs plus PDPA-aligned notes on consent capture and data retention.
What we plan around on a ShopeePay build
A few things about this specific wallet shape the work, and we account for each rather than hand them to you as conditions.
- Thai-resident binding. ShopeePay stopped accepting foreign users in January 2025 (per a 2026 fintech roundup); accounts are tied to a Thai phone and identity. We provision the build against a consenting Thai-resident account or a test profile, arranged with you during onboarding.
- SPayLater plan maths. Plans run at 0% on promo or as installments up to 12 months, with late interest the app states at 15–25% p.a. We model tenor, schedule and rate precisely so a synced repayment ledger matches the app's own display, promo and standard plans apart.
- Device-bound sessions. Reads ride a session tied to the device, so we design the sync around the refresh cadence and re-check the captured flow after each app release, keeping a dropped sync resumable from its last cursor.
Where teams plug this in
- A merchant reconciling ShopeePay QR settlements against point-of-sale takings at day close.
- A lender surfacing a customer's SPayLater outstanding and tenor for an affordability view, with consent.
- A personal-finance or accounting app importing the wallet ledger and bill-payment records into a unified statement.
- A loyalty platform syncing Shopee Coins issuance and redemption against campaign spend.
Screens we mapped
The published store screenshots, used to anchor the surface map. Click to enlarge.
What we checked, and when
This mapping draws on the app's own store listing and description, the Bank of Thailand's published Open Data regulation and Open Data programme page, and a 2026 fintech market roundup for operator, market-share and the foreign-user change. Reviewed in June 2026 by the OpenBanking Studio integration desk. Primary sources:
- Bank of Thailand — Open Data regulation enacted (30 Oct 2025)
- Bank of Thailand — Open Data / "Your Data" programme
- Fintech News — top e-wallets in Thailand
- ShopeePay — App Store listing
The Thai wallet field, for a unified feed
Teams rarely integrate one wallet alone, so here is the neighbourhood a ShopeePay feed sits in. Names are listed for context, not ranked.
- TrueMoney Wallet — Ascend Money's wallet, the most widely accepted in Thailand; holds balances, transfers and a dense 7-Eleven payment history.
- Rabbit LINE Pay — lives inside LINE, ties payments to BTS SkyTrain transit and LINE Points loyalty.
- GrabPay — wallet behind Grab's ride, food and delivery flows, with rich per-order records.
- K PLUS — Kasikornbank's app, the largest banking-app footprint in Thailand; full deposit and transfer data.
- Pao Tang — Krungthai's government-services wallet, holding state-scheme and benefit payment records.
- SCB Easy — Siam Commercial Bank's mobile banking, with accounts, cards and bill-pay history.
- Dolfin Wallet — Central group's wallet, blending retail spend with payment records.
- Bualuang mBanking — Bangkok Bank's app, deposit accounts and transfers behind a consented channel.
Questions integrators ask about ShopeePay
Can SPayLater installment schedules be pulled, or just the wallet balance?
Both. The SPayLater section carries the credit limit, the plan tenor and the repayment schedule alongside the wallet float, so we map them as separate normalized objects rather than one blob.
Does Thailand's new Open Data rule let us request ShopeePay data through a regulated channel today?
Not yet for a wallet. The Bank of Thailand Open Data regulation, enacted 30 October 2025, names e-Money, but the payment and e-money phase falls in the 2027 to 2028 expansion; the first phase, by end of 2026, is personal deposit data. Today the dependable basis is the account holder's own consent, and we build so the feed can move onto the regulated channel as that phase opens.
ShopeePay stopped accepting foreign users — does that block an integration?
No. Accounts are bound to a Thai phone and identity, so we run the build against a consenting Thai-resident account or a test profile arranged with you during onboarding. The binding changes how we provision access, not whether the data can be reached.
Will the reads keep working after a ShopeePay app update?
The client front end shifts with releases. We capture the protocol against the live app, keep the field map versioned, and re-check it after each release so a sync keeps matching what the user sees in the app.
Starting a build
A ShopeePay feed runs one to two weeks end to end. You can take it as source you own — runnable endpoints, the auth-flow report, automated tests and interface docs, from $300 and billed only after delivery once it works for you — or skip the build entirely and call our hosted endpoints, paying per call with nothing upfront. Tell us the app and what you need from the wallet, and we will scope it: start a ShopeePay integration.
App profile: ShopeePay
ShopeePay is a mobile e-money wallet for Thailand operated by SeaMoney, the financial-services arm of Sea Ltd, and was previously known as AirPay (Play package id com.beeasy.airpay). It supports QR payments at merchants nationwide, mobile top-ups, bill payments, game credits, movie and travel bookings, and online shopping, with rewards and Shopee Coins when paying on Shopee. Its SPayLater feature offers buy-now-pay-later via PromptPay QR at 0% on promotions or installments up to 12 months, with late repayment interest the app states at 15–25% p.a. A 2026 market roundup puts its user base above 30 million and notes it stopped accepting foreign users in January 2025. Reference links: shopeepay.co.th, and the operator at seamoney.com. Figures here are as reported by the cited sources, not independently audited.