Product map
Product & integrations map · v2 · 6 October 2026

The academy layer that plugs into everything.

Pista Academy OS runs the academy: students, groups, coaches, plans, payments and messages. It does not try to replace the club's booking app, POS or accounting. It connects to them. This page maps what Pista does, what it connects to in Europe, the Americas, the Middle East and Asia (checked against each vendor's own docs, October 2026), what it costs to build with AI, and the decisions only you can make.

Product Pista Academy OSOwner Alvaro (independent of Setpoint)Pilot 5 academies, worldwideBrand Pista Brand Guidelines v2
In one minute

What, why, how, how long.

If you only read one block, read this one.

What

A standalone SaaS that runs padel academies: groups and levels, monthly plans, coach hours, attendance, renewals, payments, LINE/WhatsApp messages, and AI agents that run on the academy's own Claude or ChatGPT.

Why it can win

Booking platforms keep academies closed: Playtomic's API is read-only, CourtReserve opens its API only on a $369/month plan, and no Asian platform has one. The open tools (Mindbody, Glofox) are built for gyms; the padel-native ones are European and closed. Nobody owns "academy", anywhere.

How

An academy core plus connectors, and an open API with signed webhooks. Version 1 connects Xendit, Stripe, LINE, WhatsApp, Setpoint, TPS, Playtomic (read), Loyverse, FlowAccount, Xero, iCal and CSV.

How long

About 620 AI build hours in 10 phases, roughly 16–20 weeks with your review. Phase 0 (foundations) is already started. Payment and LINE/WhatsApp approvals run in parallel and take 2–6 weeks.

First step

Settle the name, tell Nestor, and line up five founding academies (proposed: three in Asia, two in Spain) to run Pista in parallel for a month before selling to anyone.

01 · A separate product

Yours, built clean.

The AcademyOS work from September assumed we would extract Setpoint's academy module. Now that Pista is your own product, that plan no longer holds. Setpoint is Nestor's code. Building on it would make Pista his product too, or start a dispute.

Clean room: no Setpoint code, schema or private docs

Pista is written from scratch. What carries over is what you own: the academy rules from running PTP (plans, proration, pause, renewals, coach hours), the AcademyOS product definitions, and the research. Keep a short record of where each idea came from.

Setpoint becomes one connector, like Playtomic

Clubs on Setpoint (PTP today) connect through Setpoint's public API with a key the club gives us. Pista never needs Setpoint, and never reads Setpoint's database directly.

Tell Nestor before you build, not after

He builds PTP's software and he will notice. Say it plainly: PTP stays on Setpoint, Pista is a separate business, and Pista will integrate with Setpoint like any partner. A surprise here costs more than the conversation.

Stop running two academy builds at full speed

The Setpoint plan (ptp-academy-plan) is about 250 hours. Finish only what November billing needs, then pause the rest. Every hour that goes into Setpoint's academy module is an hour Pista competes against.

02 · What Pista does

Thirteen modules, each fixing a pain we already know.

The pains come from running PTP in Bangkok and Bali and from the AcademyOS audit. They are not re-derived here. Each module says what it does and why it exists.

ModuleWhat it doesWhy (the pain)Version
Students & familiesOne record per student per academy: level, plan, parent contact, notes, consent, LINE/WhatsApp link.Today student data sits in Sheets, the booking app and WhatsApp, and none of them match.v1
Groups & levelsGroups with level, slot, coach and court; seats, waitlist, move-up suggestions, a skills checklist per level.Groups of 2 that should be 4, students stuck at one level, placement done from memory.v1
Schedule & courtsWeek grid by court. Checks against bookings from the club's booking system before saving. Lessons are pushed to the system, or listed on a checklist when it has no write API.Lessons double-booked against the club's own court bookings; coaches turning up to a taken court.v1
Plans & billingMonthly plans, class packs, drop-ins, privates. Proration for mid-month joiners, pause rules, invoices on the 25th, renewals on the 1st, reminders, dunning.Renewals chased by hand every month; lessons used up but never charged; Setpoint payments that never reach the POS.v1
Money ledgerAn append-only record of every charge, payment, refund and credit, matched to the payment provider, with daily reconciliation.Today nobody can say who trained without paying, or who paid without training.v1
CoachesAvailability, assignments, hours worked, pay rules, a coach app for check-in and notes. Coaches never see payment status.Coach hours rebuilt from Slack every month; no per-coach reporting anywhere.v1
MessagesLINE and WhatsApp templates sent in the club's name: reminders, renewal links, class changes, monthly progress.Staff paste the same reminder 40 times a month; parents miss changes.v1
ProgressThe coach records a voice note, AI drafts it into a progress note, and the coach approves it. Optional video highlights from connected cameras.Parents and adults pay for improvement they can't see; "deliver what we sell" (privates and video reviews) goes untracked.v2
LocationsOne academy, several clubs: courts, coaches and groups belong to a location; switch between them or see all; numbers per location and together.Growing academies run 2–5 sites and today keep a separate spreadsheet per club.v1
Club calendarThe whole club in one time grid: academy classes plus rentals, open matches, leagues and tournaments read from the booking app, with occupancy and free slots.Lessons get planned blind to the rest of the club; free courts are found by phone.v1
Ask PistaA small assistant inside the product that answers questions about the academy's own data and opens the right screen, running on the academy's own AI.Owners shouldn't need to learn reports to know who hasn't paid or which group is too small.v1
AgentsReady-made and custom AI agents (renewals, slips, at-risk, progress, groups, month-end, leads) plus a chat connector for the academy's own Claude or ChatGPT.The admin work that still eats the week after everything else is automated: chasing, checking, writing.v1
Numbers8 KPIs posted on the 8th: active students, renewal rate, fill rate, revenue per court hour, at-risk count, coach hours, unpaid, trials converted.The month closes without anyone knowing if the academy grew.v1
03 · How it connects

A core, connectors, and an open door.

The core owns the academy data and the money ledger. Connectors talk to each outside system in whatever way that system allows. The open door (API, webhooks, Zapier, iCal, CSV) lets anyone else build on Pista without asking us.

Live

Two-way API. We read and write in real time. Example: Xendit, LINE, Loyverse.

Read

We read on a schedule. No writes allowed. Example: Playtomic, polled every 5 minutes.

Feed

A file or calendar link. iCal or CSV, imported on a schedule or on upload.

Inbound

They push to us. A partner calls our API or sends us webhooks.

Manual

No API exists. Pista lists what staff need to copy over and marks it done. We never pretend to be connected.

Rule kept from AcademyOS: no tables or columns named after one platform (no playtomic_* fields). Every connector maps into the same model, so adding the twentieth connector touches no core code.

04 · Integration map

Every region, connected by the club itself.

67 integrations across six regions, researched from vendor documentation in October 2026. The rule: if a club can't switch it on alone in minutes, it is labelled, planned and never sold as ready. Generated from data/integrations.json, the same file the website reads.

Worldwide

12 of 12 connected by the club itself.

IntegrationTypeWho switches it onHowWhenNote
Agents on your own API keyAIClub connects itPaste an Anthropic, OpenAI, Gemini or OpenRouter key; set a monthly capv1Pista never pays for AI
Claude / ChatGPT connector (MCP)AIClub connects itOwner adds Pista as a connector in their own Claude or ChatGPTv1Runs on the owner's subscription; plan support UNVERIFIED
XeroAccountingClub connects itConnect Xero (OAuth)v1Free up to 5 clubs, then from A$35/mo for Pista
Playtomic (read-only)BookingClub connects itClub creates API credentials in Playtomic Managerv1Champion/Master plans only; read-only; no webhooks
Google CalendarCalendarClub connects itConnect Google (OAuth)v1Pista must pass Google sensitive-scope verification before 100 users
iCal feedsCalendarClub connects itEvery coach and student gets a self-updating calendar linkv1Zero approval
Spreadsheet / CSV importDataClub connects itUpload, map columns, preview, importv1Also every booking app's export
EmailMessagesClub connects itBuilt inv1Club's own domain optional (SPF/DKIM)
WhatsApp BusinessMessagesClub connects itClub pastes its own token today; one-click Embedded Signup once Pista is a Meta Tech Providerv1Tech Provider review: weeks; build on Embedded Signup v4
Pista API + signed webhooksOpenClub connects itScoped API keys and OAuth from Settings → Developersv1Our own open door; documented in OpenAPI
Zapier & MakeOpenClub connects itPrivate Pista app, joined by invite linkv1Public listing later (Zapier review)
Microsoft 365CalendarClub connects itConnect Microsoft (OAuth)v2Publisher verification recommended

Europe

10 of 17 connected by the club itself.

IntegrationTypeWho switches it onHowWhenNote
Fatture in CloudAccountingClub connects itClub pastes token or connects (OAuth)v1Italy; also handles SdI
HoldedAccountingClub connects itClub pastes token or connects (OAuth)v1Spain
SumUpPOSClub connects itConnect SumUp (OAuth)v1Everywhere in Europe
StripePaymentsClub connects itHosted onboarding in minutesv1Cards, SEPA Direct Debit, Bizum, iDEAL/Wero, Bancontact, Klarna
MoneybirdAccountingClub connects itClub pastes token or connects (OAuth)v2Netherlands
lexoffice · sevDeskAccountingClub connects itClub pastes token or connects (OAuth)v2Germany; UNVERIFIED
SMS (Twilio)MessagesClub connects itBuilt inv2Spain requires a registered sender alias
SquarePOSClub connects itConnect Square (OAuth)v2UK · IE · FR · ES
MolliePaymentsClub connects itConnect Mollie (OAuth)v2NL · BE favourite
SatispayPaymentsClub connects itClub keylaterItaly
Fortnox · Visma · Exact · Pennylane · DATEVAccountingNeeds approvalPartner agreementsv2Sweden, NL/BE, France, Germany
MATCHi · MatchpointBookingNeeds approvalPartner API (Matchable proves the route)v2Nordics, UK, Spain
Fiscal invoices (Verifactu, SdI, France 2026/27, DE 2027/28, PT)ComplianceNeeds approvalPista issues receipts; invoices go to the club's certified accounting toolruleAvoids certifying in every country
Zettle · LightspeedPOSNeeds approvalPartner programmeslater
GoCardlessPaymentsNeeds approvalPartner app certificationv2UK Bacs + SEPA Direct Debit
Redsys · Swish · AdyenPaymentsNeeds approvalBank contracts or saleslaterUse Stripe for Bizum; Swish via PSP
Eversports · Taykus · Doinsport · ClubSpark · Padel MatesBookingNo APICSV or checklist—

North America

7 of 11 connected by the club itself.

IntegrationTypeWho switches it onHowWhenNote
QuickBooks OnlineAccountingClub connects itConnect QuickBooks (OAuth)v1Intuit production review once; free Builder tier
CourtReserveBookingClub connects itClub creates an API keyv1Advance plan and up (~$369/mo); no webhooks
Waivers & parental consentLegalClub connects itBuilt in (clickwrap; COPPA parent accounts)v1Dropbox Sign optional
StripePaymentsClub connects itHosted onboarding in minutesv1Cards, ACH bank debit, Apple Pay, Google Pay; Stripe Tax
PlaybypointBookingClub connects itClub sets up webhooksv2Public API status UNVERIFIED
Shopify POSPOSClub connects itCustom app per storelater
SquarePaymentsClub connects itConnect Square (OAuth)v2Payments, subscriptions and POS in one
SMS (10DLC)MessagesNeeds approvalPista registers as a platform; one brand per clubv1Critical path: carrier review takes days to weeks
Mindbody · Club AutomationBookingNeeds approvalPartner review (days–weeks)later
Clover · Toast · PayPal platformPaymentsNeeds approvalApp-market or partner approvallater
DUPR · UTR · World Padel RatingRatingsNeeds approvalPartner programmesv2Ratings shown next to Pista's own level

Middle East

4 of 8 connected by the club itself.

IntegrationTypeWho switches it onHowWhenNote
MoyasarPaymentsClub connects itClub pastes its keysv2Saudi Arabia; mada, Apple Pay; card tokens for monthly plans
PayTabsPaymentsClub connects itClub copies server key + profile IDv2KSA · UAE
Tap PaymentsPaymentsClub connects itClub generates a keyv2All GCC
TelrPaymentsClub connects itClub copies store ID + auth keyv2UAE · KSA
UAE e-invoicingComplianceNeeds approvalIntegrate an accredited Peppol providerbefore 2027Smaller businesses from Jul 2027
ZATCA e-invoicing (KSA)ComplianceNeeds approvalPartner a certified provider (e.g. Wafeq, Qoyod)before KSAEvery VAT-registered club in scope since Jun 2026
Stripe UAE (platform) · Checkout.com · HyperPay · Tabby/TamaraPaymentsNeeds approvalSales or merchant agreementslater
Malaeb · Padel Mates · local appsBookingNo APICSV or checklist—

Asia

12 of 17 connected by the club itself.

IntegrationTypeWho switches it onHowWhenNote
SetpointBookingClub connects itClub issues an API keyv1Scope of writes UNVERIFIED
LINE Official AccountMessagesClub connects itClub pastes its channel token and secretv1Thailand's main channel; replies free
LoyversePOSClub connects itClub creates an access token (free, all plans)v1Webhooks included
Bank transfer + slipPaymentsClub connects itBuilt in: student uploads slip, desk confirmsv1How most Asian academies get paid
HitPayPaymentsClub connects itClub pastes API key + saltv1SG · MY · PH; GIRO in SG
MidtransPaymentsClub connects itClub pastes its server keyv1Indonesia; GoPay tokenisation
OmisePaymentsClub connects itClub pastes its keysv1TH · JP; Thai bank direct debit
PayMongoPaymentsClub connects itClub pastes its keysv1Philippines
Stripe (SG · MY · HK)PaymentsClub connects itHosted onboarding in minutesv1Cards, PayNow
XenditPaymentsClub connects itClub pastes its secret key (Settings → Developers)v1TH · ID · PH · MY · VN; QR can't auto-charge
Accurate OnlineAccountingClub connects itConnect (OAuth)v2Indonesia
The Padel SocietyBookingFirst-partyFirst-party partnerv1Classes published to players
FlowAccount · PEAK · JurnalAccountingNeeds approvalDeveloper applicationv2Thailand / Indonesia
LINE MINI App (verified)MessagesNeeds approvalCertified-provider reviewv2Unverified MINI Apps are self-serve since Mar 2026
Zalo OAMessagesNeeds approvalOA verification (~7 working days)laterVietnam
Stripe Thailand · 2C2PPaymentsNeeds approvalSales-ledlaterThai Stripe platforms need Stripe sales
AYO · Courtsite · Hudle · PlayoBookingNo APICSV export or checklist—No public APIs

Latin America

1 of 2 connected by the club itself.

IntegrationTypeWho switches it onHowWhenNote
Mercado PagoPaymentsClub connects itConnect Mercado Pago (OAuth)v2Mexico, Argentina; marketplace split
CFDI (MX) · ARCA (AR)ComplianceNeeds approvalVia an invoicing API (e.g. Facturapi) / tax delegationv2

One-time steps Pista must complete

These set the launch calendar, so they start in week one.

StepWhat it unlocksTypical timeWhen
WhatsApp: Meta Tech ProviderBusiness verification + app review, then one-click Embedded Signup (v4) for every club2–6 weeksBefore launch
Google Calendar verificationSensitive-scope OAuth review; needed past 100 users3–5 days, sometimes weeksBefore launch
US texting (A2P 10DLC)Pista registers as a platform; one brand + campaign per clubDays to weeks per clubBefore US pilots
Stripe Connect platformSelf-serve from a Singapore, EU or US entity; Thailand and UAE need Stripe salesMinutes (self-serve markets)With the company
Xero and QuickBooks appsRegister apps; Xero free to 5 clubs then paid; Intuit production reviewInstant to ~2 weeksPhase 4
LINE provider · Zapier/Make private appCreate onceInstantPhase 3–5
PartnershipsMATCHi, GoCardless, Fortnox/Visma, Exact, Pennylane, Mindbody, DUPR/UTR, Playtomic ConnectWeeks to monthsStart talks early
E-invoicing partnersSaudi ZATCA and UAE accredited providers; Mexico CFDI invoicing APIWeeksBefore those markets
05 · Agents

Bring your own AI. We bring the academy.

Every academy can use AI agents inside Pista, and Pista never pays for the AI. The academy connects the Claude, ChatGPT or other model it already pays for. Pista supplies the data, the actions and the safety rules.

Chat with your academy, from your own Claude or ChatGPT

Pista publishes a connector (an MCP server, the open standard Claude and ChatGPT use to plug in apps). The owner adds it once, then asks in plain words: "who is overdue this month?", "move Mai to B3 from November", "draft the November renewal messages". It runs on the owner's own subscription, so Pista's AI cost is zero. Which Claude and ChatGPT plans allow custom connectors: UNVERIFIED, check before building.

Limit: a personal subscription only works while someone is chatting. It can't run jobs on a schedule.

Agents that work on their own

For jobs that run without anyone watching, the academy pastes an API key (Anthropic, OpenAI, Google Gemini or OpenRouter). The key is stored encrypted per academy and is never visible again, and each academy sets a monthly spending cap. The academy pays its provider directly.

Why it works: AI spend scales with each academy's own use, never with Pista's margin.

Ready-made agentWhen it runsWhat it doesDefault
Renewal chaser25th, then 1st, 3rd, 7thWrites each student's renewal message in their language, with the amount and pay link, and follows up when someone hasn't paid.Draft, you approve
Slip checkerWhen a slip is uploadedReads the bank-transfer slip image, checks the amount, date and account against the invoice, and marks it ready to confirm or flags it.Draft, you approve
At-risk watcherEvery eveningSpots students who missed 2 classes in 15 days or stopped booking, and tells the coach with a suggested message.Auto (internal only)
Progress notesAfter each classTurns a coach's voice note into a short progress note for the student, in their language.Coach approves
Group balancerThe 20th of each monthProposes merges and moves for groups below 3 players or above level fit, using attendance and level.Draft, you approve
Month-end reportThe 8thWrites the eight numbers in plain words: what grew, what slipped, and three things to do.Auto
Lead follow-upNew trial requestAnswers the enquiry, offers the next trial slots and books the one they pick.Draft, you approve

Building an agent takes five fields

When (a schedule or an event such as "payment overdue"), what to do (plain instructions), which Pista actions it may use (read only, or named write actions), approval (draft or auto), report to (Today list, LINE, WhatsApp, email). Every template is just these five fields filled in, so a copy can be edited in a minute.

Agents never move money

No agent can charge, refund or change a price. Sending a message or changing data starts as a draft until the owner switches that agent to auto. Every agent action goes into the audit log with the prompt and the result.

Any model, one rule set

The agent runner talks to providers through one interface, so an academy can switch from Claude to GPT to Gemini without rebuilding its agents. The same Pista actions power the chat connector, the agents and the public API, so there is one place to secure.

06 · What each region changes

One product, local everywhere.

From the October 2026 research. These rules shape the core (billing, messaging, data, receipts), not just the connectors.

Europe: direct debit, consent and receipts

Monthly plans run on SEPA Direct Debit or saved cards: the first charge is authenticated once (SCA), later months are merchant-initiated. GDPR: EU hosting, a data processing agreement with every club, parent consent under the national age (13–16). Fiscal invoicing differs per country (Verifactu in Spain from 2027, SdI in Italy, France 2026/27, Germany 2027/28, Portugal certified software), so Pista issues receipts and hands invoices to the club's certified accounting tool.

North America: SMS, subscriptions law, kids' data

Texting is the channel and must be registered (A2P 10DLC) before launch, with consent stored per student and STOP honoured. Subscriptions follow California's auto-renewal rules nationwide: clear consent, reminders, online cancellation as easy as signing up. Under-13s only through a parent account (COPPA 2026). Coaching is usually tax-exempt but Pista's own fee is taxable in about 20 states, so use Stripe Tax.

Middle East: right-to-left, mada, e-invoicing

Full Arabic right-to-left layouts, Hijri dates in Saudi Arabia, bilingual receipts. Cards and mada through regional providers the club connects itself (Moyasar, Tap, PayTabs, Telr). Saudi ZATCA e-invoicing applies to every VAT-registered club since June 2026, and the UAE follows in 2027, so partner with a certified provider rather than certifying Pista.

Asia: QR can't auto-charge, slips are real

PromptPay, QRIS and PayNow need the student to approve every payment, so monthly plans use saved cards, bank direct debit or linked wallets, and Pista sends links and follows up for everyone else. Bank transfer with a slip is a first-class payment. LINE in Thailand, Zalo in Vietnam, WhatsApp elsewhere.

Latin America: Mercado Pago and stamped invoices

Mercado Pago connects by OAuth with marketplace splits. Mexico's CFDI and Argentina's ARCA invoices go through an invoicing API. WhatsApp is the channel.

07 · Market & competitors

A fast-growing sport, with no academy software of its own.

Padel is one of the fastest-growing sports in the world, and almost every club runs an academy. A product that serves academies has to win many small clubs, so it must be cheap to sell, quick to set up and local everywhere.

58,334padel courts worldwide at the end of 2025, 19.4M players (Playtomic & PwC Global Padel Report 2026)
~20,900padel clubs worldwide (same report); FIP counts 24,600 (Dec 2025)
4,600courts in Asia incl. the Middle East, +20% on 2024 (FIP, Nov 2025)
91,000courts forecast for 2028 (Playtomic & PwC, 2026)
CompetitorPadel-nativeWhereOpen (API / webhooks)PriceOur angle
Playtomic AcademyYesGlobalRead-only, Champion+ onlyChampion plan and upWorks only if the whole club is on Playtomic. Pista works with any booking system and with local payments.
TieManagerTennis/padelPortugal, SpainAPI add-on €30/mo€63–113/moEuropean, no LINE, no Thai or Indonesian payment methods.
MatchableRacket sportsNordics, EuropeNo public API1.8% per bookingTied to MATCHi; per-booking fee grows with the academy.
Mindbody · Glofox · TeamUpNo (fitness)GlobalYesFrom ~US$119/moNo levels, court-linked groups or coach rotations; priced for gyms.
AcademyPRO and similarNoAsiaNoLowGeneric class tools: closed, and no padel.
CourtReserve · PlaybypointRacket clubsUSACourtReserve: API on $369+/mo plan; Playbypoint: webhooksFrom $199/moCourt software first; academies are a tab. Pista connects to both.
Eversports · Doinsport · ClubSparkPartlyDE/AT · FR · UKPartner only or noneVariesNational players, closed. Pista is open and multi-country.
AYO · Hudle (booking giants)Multi-sportID · INNon/aThe real threat: they could add an academy module for 1,000+ venues. Pista should aim to be their academy partner.

Where the room is: an academy product that doesn't care which booking app the club uses, handles PromptPay, QRIS and bank slips natively, talks over LINE and WhatsApp, and is open by default. Plan for tennis and pickleball academies from day one. The data model is the same, and pickleball is growing across the same cities.

08 · Pricing

Priced by active students.

Coaches are unlimited, so academies never hide staff to save money. Prices are in US dollars and shown in local currency. Set against TieManager (€63–113), TeamUp (from US$119 for 100 customers) and Matchable (1.8% of every booking).

Starter

$39 / month

Up to 40 active students, one site.

  • All v1 modules
  • LINE or WhatsApp
  • One payment connector
Growth · most academies

$99 / month

Up to 150 active students.

  • All connectors
  • API and webhooks
  • Coach pay reports
Pro

$199 / month

Up to 400 students, several sites.

  • Multi-site and roles
  • Priority support
  • Custom domain portal

Optional: Pista Payments takes 0.5% on top of the provider's fee through the Xendit split, and only when the club chooses it. Trial: 3 days with guided setup, no card needed (your rule from AcademyOS). These are starting defaults for the pilot, not market-tested prices. Re-check them after the first 5 paying clubs.

09 · Build plan

About 620 AI build hours.

AI build hours mean Claude building while you review and decide. Approvals from outside (payment KYC, LINE and WhatsApp business verification, Playtomic credentials, legal) run in parallel and are the real calendar risk. Start them in week one.

0

Foundations

Academies as tenants with row-level security, logins (email, Google, LINE), roles, audit log, Singapore hosting, backups, the design system from the brand guideline.

45 hweek 1–2
1

Academy core

Students and families, groups and levels, the week grid by court, attendance, coaches and hours. Importer for Sheets and CSV.

110 hweek 2–5
2

Plans & money

Plans, packs, drop-ins, proration, pause; invoices, reminders, follow-ups; money ledger and daily reconciliation; Xendit, Stripe, bank-slip flow.

90 hweek 5–8
3

Messages & student portal

LINE Official Account and LIFF portal, WhatsApp templates, email; the club's name on everything; Thai and Bahasa.

45 hweek 7–9
4

Connectors v1

Setpoint, TPS, Playtomic (read), iCal both ways, Loyverse, FlowAccount, Xero, the manual checklist mode.

85 hweek 8–11
5

Open door

Public REST API, OAuth and scoped keys, signed webhooks with retries, developer docs on the Night theme, rate limits.

55 hweek 10–12
6

Coach app

Phone web app that works offline: today's classes, check-in, voice notes, availability, hours. Readable in the sun.

45 hweek 11–13
7

Ready to sell

Self-serve signup, 3-screen setup, trial, Pista's own billing of clubs, help centre, status page, website in the Stage style.

45 hweek 13–15
8

Agents

Pista actions as one tool set; MCP connector for Claude and ChatGPT; agent runner with encrypted keys and spending caps; the 5-field agent builder; 7 templates; agent audit trail.

60 hweek 14–17
9

Security & pilot

Isolation tests between academies, an external penetration test, PDPA export and deletion, then one PTP site run in parallel for a full month-end.

40 hweek 17–20
Total, version 1 ready for the first external club≈ 620 h · 16–20 weeks

Stack, in one line each. TypeScript everywhere, so one language serves app, connectors and API. Postgres in Singapore (Supabase), so row-level security keeps academies apart. Cloudflare Workers and Queues for connectors and webhooks, which are cheap and retry on their own. Money is written to an append-only ledger and is never edited in place. These hours are estimates from the scope above, not quotes. The pilot month is the real test.

10 · Your decisions

Nine calls, each with a default.

If you don't object, the default stands and the work follows it.

#DecisionDefaultWhy
1NameDecide before launch: a padel club called Pista just opened in BangkokNot a legal problem, but clubs are the buyers and may read it as that club's software. Keep it and talk to the club, or rename (about 1 hour: the logo is generated from code). Then register the domains and run trademark searches in the EU, US and Asia.
2Tell NestorThis week, in personPTP depends on Setpoint and on him. He should hear it from you first.
3Setpoint academy planFinish only what November billing needs, pause the restAvoids paying twice for the same product and a conflict of interest.
4CompanyPilot under an existing entity; Singapore Pte Ltd before the first external paying clubStripe Connect and investors are simpler from Singapore, and Xendit covers TH and ID either way. Confirm with an accountant.
5Pilot sitePTP Bali, one month in parallel with SetpointIt mixes Setpoint, Playtomic and TPS bookings, so it tests the connectors properly. It's also smaller than Bangkok if something breaks.
6Payment railXendit (TH and ID) plus Stripe (SG)The only combination with sub-accounts, fee splits and recurring charges in all three markets.
7SportsPadel first, data model ready for tennis and pickleballThree times the market for almost no extra build.
8Pricing$39 / $99 / $199 by active students, coaches unlimitedSimple, cheaper than the European tools, and easy to sell to small clubs.
9Where the docs liveThis map + the brand guideline, updated in placeOne source of truth, the way the PTP plan works.
11 · Risks

What could sink it.

Named now so each one has a plan before it happens.

Spread too thin

Six regions, each with its own payments, channels and tax rules. Plan: pilot in two (Asia and Spain), build every connector behind one interface, and only open a region when its self-serve payment and messaging set is ready.

A platform adds an academy module

Playtomic, AYO or Hudle could build one. Plan: be the open, any-platform option, and partner early with whoever is willing.

Payment approvals take weeks

Xendit KYC, the WhatsApp business check and LINE OA verification are slow. Plan: apply in week one, and bank slips work from day one.

Relationship with Nestor and PTP

Pista competes with Setpoint's academy module. Plan: tell him early, build clean-room, keep PTP on Setpoint until Pista proves itself.

One founder supporting many clubs

Support load can grow faster than revenue. Plan: self-serve setup, help centre, Claude-assisted support inbox, cap the pilot at 5 clubs.

Holding other people's money and data

One leak or wrong charge ends trust. Plan: money never moves without the ledger, isolation tests on every change, an external penetration test before the first outside club.

12 · Sources

Where the facts come from.

Researched 6 October 2026 from vendor documentation. September's booking-platform audit is in the AcademyOS docs (integrations/_research-platform-apis.md).

Xendit xenPlatform, sub-accounts, split payments, subscriptions, direct debit: docs.xendit.co/docs/xenplatform-overview · /sub-accounts · /split-payments · /subscriptions-overview · /scb-direct-debit

Stripe Thailand marketplaces: support.stripe.com/questions/stripe-thailand-support-for-marketplaces · cross-border payouts: docs.stripe.com/connect/cross-border-payouts · PromptPay: docs.stripe.com/payments/promptpay

Omise schedules and Thai direct debit: docs.omise.co/schedules-api · docs.omise.co/direct-debit/thailand

Midtrans GoPay tokenisation: docs.midtrans.com/reference/gopay-tokenization-1 · PayMongo Platforms: developers.paymongo.com/docs/paymongo-platforms · HitPay: docs.hitpayapp.com

Playtomic Club API: third-party.playtomic.io · Playtomic Connect: playtomic.com/connect · MATCHi: docs.matchi.com · Playbypoint: api.playbypoint.dev

Loyverse API: developer.loyverse.com/docs · Odoo JSON-2: odoo.com/documentation/20.0/developer/reference/external_rpc_api.html

FlowAccount developers: flowaccount.com/en/developers · Xero app pricing: developer.xero.com/pricing · Mekari: developers.mekari.com · Accurate: accurate.id/api-integration

LINE Messaging API pricing: developers.line.biz/en/docs/messaging-api/pricing · LINE OA Thailand plans: lineforbusiness.com/th · WhatsApp pricing: developers.facebook.com/documentation/business-messaging/whatsapp/pricing

Malaysia e-invoice threshold RM3M: thestar.com.my (30 Aug 2026) · Philippines EIS deadline: fiscal-requirements.com · Vietnam Decree 70: vietnamnews.vn · Indonesia Coretax: fiscal-requirements.com

FIP Asia report (Nov 2025): padelfip.com/2025/11 · Playtomic Global Padel Report 2026: playtomic.com/global-padel-report · Indonesia courts: databoks.katadata.co.id (Feb 2026)

AYO Indonesia: ayo.co.id · Hudle: hudle.in · SportAI and Hudle Vision: sportai.com/news · PadelLevels: mynewsdesk.com/se/court22

TieManager pricing: tiesports.com/pricing · Matchable: playmore.matchi.com · Glofox webhooks: apidocs-plat.aws.glofox.com · Mindbody API: developers.mindbodyonline.com