Version: 2.0.0 | Date: 2026-05-05 | Status: Living Document Replaces: PRD versi lama di tiranyx-web/docs/PRD.md (fokus sempit, sudah outdated)
Website tiranyx.co.id saat ini berfungsi sebagai:
- Profil agency digital (portfolio, blog, case studies)
- Showcase produk SaaS (tanpa harga, tanpa pembelian)
- 6 freemium tools (tanpa quota enforcement, tanpa user auth)
- Admin CMS (blog, portfolio, resources, demos)
Gap kritis: Tidak ada sistem pembelian, tidak ada user account, tidak ada dashboard pasca-pembelian. Semua konversi masih via WhatsApp manual.
- Midtrans credit card activation — membutuhkan: produk + harga di website, alur transaksi terdokumentasi, lisensi Kominfo untuk live streaming
- PayPal direct — untuk klien internasional
- Scaling agency — tidak bisa scale manual, perlu self-service
- Competitive pressure — kompetitor mulai tawarkan tools freemium lokal
Dokumen ini mencakup seluruh platform tiranyx.co.id termasuk:
- Public marketing site (existing + extensions)
- User authentication & member dashboard
- Product catalog + e-commerce
- Client portal (OPIX integration)
- Internal admin (extension dari yang ada)
- Payment integration (Midtrans + PayPal)
- Umur: 27 | Kota: Jakarta | Income: Rp 8–15jt/bln
- Job: Manage social media untuk 3–5 klien UMKM
- Pain: Nulis caption itu memakan waktu, hashtag susah nemu yang relevant
- Goal: Hemat 2 jam/hari dari konten routine
- Journey: Google "caption generator gratis Indonesia" → landing di /tools/caption → coba gratis 3x → upgrade Pro
- Willingness to pay: Rp 99rb/bln jika terbukti hemat waktu
- Umur: 34 | Kota: Bandung | Revenue: Rp 2M/bln
- Pain: Tim marketing kecil, tidak punya budget agency besar
- Goal: Laporan performa yang bisa dibaca tanpa jadi data scientist
- Journey: Referral dari kenalan → /products/report-dashboard → demo → beli
- Willingness to pay: Rp 349rb/bln
- Umur: 38 | Kota: Surabaya | Klien: 12 brand
- Pain: Butuh tools yang bisa dipakai tim dan klien, mau branded namanya sendiri
- Goal: White-label social media tool untuk ditawarkan ke kliennya
- Journey: LinkedIn → sales call → /saas/sociostudio → demo → beli bundle
- Willingness to pay: Rp 5–10jt setup + Rp 2jt/bln
- Umur: 45 | Kota: Jakarta | Bisnis: Retail F&B
- Pain: Tidak tahu progress project, harus tanya via WA terus
- Goal: Bisa pantau deliverable dan approve tanpa harus meeting
- Journey: Invitation email dari tim Tiranyx → /client → dashboard project
- Willingness to pay: Sudah bayar retainer, butuh akses portal
- Peran: Project Manager / Content Strategist
- Pain: Tracking order manual di spreadsheet, delivery file lewat email berserakan
- Goal: Satu tempat untuk manage semua order + deliverable + klien
- Journey: /admin → orders → assign → upload deliverable → mark complete
Priority: P0 — Prerequisite untuk semua fitur lain
- Input: nama, email, password, phone (optional), tipe akun (personal default)
- Validasi: email format, password min 8 char + 1 angka
- Flow: Submit → email verifikasi → klik link → akun aktif → redirect /dashboard
- Social login: Google OAuth (nice to have, iter 2)
- Catatan: Pisah total dari admin auth (admin pakai cookie HMAC tersendiri)
- Email + password
- "Remember me" (session 30 hari)
- Forgot password → email reset link (expired 1 jam)
- Rate limiting: max 5 gagal → lockout 15 menit
| Type | Akses | Dibuat oleh |
|---|---|---|
personal |
/dashboard | Self-register |
client |
/client | Internal admin |
internal |
/admin (extended) | Super admin |
- JWT atau signed cookie (consistent dengan arsitektur existing)
- Prefix terpisah dari admin cookie (
trx_uservstrx_admin) - Refresh token untuk session panjang
Priority: P0 — Required untuk Midtrans
- Grid semua produk dengan filter kategori: Tools | SaaS | On-Demand | White-label | AI
- Setiap card: nama, tagline, harga mulai dari Rp X/bln, badge status (Live/Beta/New)
- Sort: Popular | Harga Terendah | Terbaru
- Harga WAJIB ditampilkan (Midtrans requirement)
Setiap produk punya halaman standalone:
- Hero section: nama, tagline, screenshot/demo video
- Features: 3–6 fitur utama dengan icon
- Pricing tiers: Free / Pro / Enterprise (card)
- How it works: 3 langkah simple
- FAQ: 5–10 pertanyaan (dari admin CMS)
- CTA: "Mulai Gratis" / "Beli Sekarang" / "Hubungi Sales"
- Related products (cross-sell)
- Schema.org: Product, FAQPage, BreadcrumbList
Slug mapping:
/products/brand-guidelines → Brand Guideline Builder
/products/sociostudio-lite → SocioStudio Lite
/products/sociostudio-full → SocioStudio Full (SOCIYX)
/products/wa-agency → WA Agency Suite
/products/bot-gateway → Bot Gateway
/products/opix-crm → OPIX Agency CRM
/products/voice-clone → VoiceClone Studio
/products/market-intel → Market Intelligence
/products/content-builder → Content Builder AI
/products/seo-tools → SEO Tools Suite
/products/report-dashboard → Report Dashboard
CRUD untuk semua produk:
- Nama, slug, kategori, deskripsi pendek/panjang
- Pricing tiers (JSON: [{name, price_idr, price_usd, features[], is_popular}])
- Features list (JSON)
- Delivery type: web_access | email | github | manual | api_key
- Status: live | beta | coming_soon | waitlist
- Is published + sort order
- Upload thumbnail/screenshot
- Manage FAQ per produk
Priority: P0
Saat ini tools bebas diakses tanpa login. Setelah iterasi 1:
- Free tier: 5 uses/hari tanpa login, ATAU unlimited jika login (free account)
- Pro tier: Unlimited, fitur tambahan, no rate limit
- Enforcement: middleware cek user session → quota di DB
User pakai tool → Kuota habis → Banner "Kamu sudah pakai 5/5 hari ini"
→ Tombol "Upgrade Pro" → Modal pricing → Checkout Midtrans
→ Payment success → Kuota reset → Lanjut pakai
| Tool | Status | Free Quota | Pro Feature |
|---|---|---|---|
| QR Generator | Live | 5/hari | Custom logo, warna brand, batch |
| UTM Builder | Live | Unlimited | Dashboard analytics, saved links |
| Color Palette | Live | 3 palette/hari | Export SVG/PDF, brand save |
| AI Writer | Live | 3 artikel/hari | Unlimited, SEO scoring, schedule |
| Caption Generator | Live | 3 caption/hari | Unlimited platform, tone setting |
| Hashtag Generator | Live | 1 set/hari | Trending data, competitor analysis |
| Brand Guidelines | bg-maker | N/A (link) | Full builder, export PDF |
| ROI Calculator | Planned | Free | Save + share |
| Social Audit | Planned | 1 audit/bln | Full + auto-update |
| Ads Analyzer | Planned | — | Pro only |
| Competitor Research | Planned | — | Pro only |
- Free: limited quota, basic features
- Pro Tools Rp 99.000/bln — semua tools unlimited
- Pro Tools Yearly Rp 799.000/thn (hemat 33%)
- Per-tool Rp 39.000/bln (untuk yang butuh 1 saja)
Priority: P1
/services/[id] → "Order Service" → Form brief
→ Login/Register → Review order + harga
→ Midtrans checkout → Order confirmed
→ Email konfirmasi → /dashboard/services (status: submitted)
→ Tim internal pick up → status: in_progress
→ Upload deliverable → status: done
→ Customer download → Email notifikasi
Setiap on-demand service punya form brief yang berbeda:
- Market Research: industri, kompetitor, target audience, scope
- Content Batch: platform, jumlah konten, tone, referensi
- Creative Design: jenis design, brand guideline (upload), referensi
- Social Audit: handle sosmed, periode analisis
- Brand Refresh: logo sekarang (upload), arah baru, referensi
- Ads Review: platform, periode, akun ads (read access)
| Service | Timeline | Harga |
|---|---|---|
| Market Research Report | 5–7 hari kerja | Rp 3.000.000 – 15.000.000 |
| Content Batch Writing | 3–5 hari kerja | Rp 1.500.000 – 5.000.000 |
| Creative Design Pack | 3–5 hari kerja | Rp 1.000.000 – 3.000.000 |
| Social Media Audit | 2–3 hari kerja | Rp 2.000.000 – 5.000.000 |
| Brand Identity Refresh | 7–14 hari kerja | Rp 5.000.000 – 15.000.000 |
| Ads Performance Review | 2–3 hari kerja | Rp 1.500.000 – 3.000.000 |
Priority: P1
- Greeting: "Selamat datang, [nama]"
- Active plan badge (Free / Pro / Enterprise)
- Quick stats: tools used today, active orders, downloads ready
- Active subscriptions (card per produk)
- Recent activity feed (last 10 actions)
- Upsell CTA jika masih free
- Grid semua tools yang bisa diakses
- Per card: nama tool, usage hari ini vs quota, tombol "Buka Tool"
- Pro tools: lock icon jika belum subscribe
- Usage history chart (7 hari terakhir)
- Tabel semua order (on-demand services)
- Kolom: No order, Nama service, Status, Tanggal, Harga, Aksi
- Status chip: Submitted | Review | In Progress | Revision | Done | Cancelled
- Filter: status, tanggal
- Detail order: klik → modal atau halaman detail
- Download deliverable: muncul jika status = Done
- Progress tracker visual (stepper)
- Brief yang disubmit (read-only)
- Thread pesan dengan tim (simple chat)
- File attachments (upload by user, download from tim)
- Timeline: submitted → in progress → delivered
- Active subscriptions: produk, plan, billing date, status
- Upgrade/downgrade option
- Cancel (soft cancel: tetap aktif sampai expired)
- Billing history: tabel invoice dengan download PDF
- Digital products yang sudah dibeli/diterima
- Tipe: ZIP file, PDF report, GitHub invite link, License key, Access URL
- Sorted by date, filter by type
- Download counter (tracking)
- Update nama, phone, company, avatar
- Change email (perlu verifikasi ulang)
- Change password
- Notification preferences (email, WA)
- Delete account (soft delete)
Priority: P2
- Akun dibuat oleh internal (bukan self-register)
- Email invite dengan link setup password
- Login page terpisah: /client/login (branded berbeda dari /login personal)
- Active projects dengan progress bar
- Upcoming milestone (3 terdekat)
- Unpaid invoice alert
- Quick links ke deliverable terbaru
- List semua project dengan status
- Detail per project:
- Scope & brief (read-only)
- Timeline/Gantt sederhana
- Milestones dengan status
- PIC dari tim Tiranyx + kontak WA
- % completion
- File yang perlu di-approve
- Tombol: Approve ✓ | Minta Revisi ✗
- Catatan revisi (textarea)
- Version history (v1, v2, dst)
- Download final file
- Invoice pending (belum dibayar) → tombol "Bayar" → Midtrans
- Invoice lunas → download PDF
- History semua invoice
- Data project dari api.ixonomic.com (sudah live)
- SSO atau token-based auth ke Ixonomic
- Tiranyx /client = frontend layer di atas Ixonomic API
Priority: P1
- List semua user (personal + client + internal)
- Filter by type, status
- Create client account (invite by email)
- View user detail: orders, subscriptions, activity
- Suspend / activate / delete
- Incoming service orders
- Assign ke internal user
- Update status
- Upload deliverable files
- Internal notes
- Mark as complete → trigger delivery email
- Active subscriptions per produk
- Expiry dalam 7 hari (alert)
- Manual extend (untuk kasus khusus)
- Revenue summary per periode
- Entries per produk waitlist
- Export CSV
- Send email blast ke waitlist
- Statistik: total, per produk, per minggu
- Revenue: hari ini, bulan ini, MRR, ARR
- Active users: DAU, MAU
- Tool usage: per tool, per hari
- Conversion funnel: visitor → register → first purchase
- Top products by revenue
Priority: P1 (untuk Midtrans requirement juga)
- Landing semua produk dalam riset
- Hero: "Jadilah yang pertama mengakses teknologi terdepan Tiranyx"
- Grid produk: Migancore, Mighan World, SIDIXLab, Ixonomic Coin
- Hero + pitch singkat produk
- Preview: screenshot, video, atau animated mockup
- Early bird benefits (diskon, beta access, badge)
- Counter: "X dari 1000 spot tersedia"
- Form: nama, email, peran (Pengguna / Developer / Partner / Investor)
- Link ke GitHub repo publik jika ada
- FAQ produk (5–8 pertanyaan)
- Status updates (changelog mini)
Produk:
| Slug | Produk | GitHub |
|---|---|---|
| /waitlist/migancore | Migancore ADO AI | tiranyx/migancore |
| /waitlist/mighan-world | Mighan World NPC AI | fahmiwol/mighan-web |
| /waitlist/sidixlab | SIDIXLab Creative AI | fahmiwol/sidix |
| /waitlist/ixonomic-coin | Ixonomic Coin | fahmiwol/mighancoin_token |
Priority: P2
- Penjelasan white-label: "Dapatkan SaaS Tiranyx dengan brand kamu sendiri"
- Grid produk white-label yang tersedia
- Comparison: Build it yourself vs White-label Tiranyx
- Apa yang termasuk dalam bundle
- Requirement teknis (server, domain)
- Setup process (3–5 langkah)
- Pricing: setup fee + monthly license
- Form order → payment → delivery via email + GitHub
Bundles:
/saas/sociostudio → SOCIYX Social Media Platform
/saas/wa-suite → WA Agency Gateway
/saas/bot-platform → Bot Gateway Multi-platform
/saas/opix-crm → OPIX Agency CRM
/saas/voice-clone → VoiceClone Studio
Priority: P0
- Snap.js untuk payment popup (credit card, GoPay, QRIS, VA, Alfamart)
- Server-side: Midtrans Node.js SDK
- API Endpoints:
POST /api/orders/create— buat order + Midtrans transactionPOST /api/payment/midtrans/notification— webhook callbackGET /api/orders/[id]/status— cek status
- Webhook processing:
- Verifikasi signature Midtrans
- Update order status di DB
- Activate subscription/purchase
- Trigger delivery
- Send email konfirmasi
- PayPal Orders API v2
POST /api/payment/paypal/create-orderPOST /api/payment/paypal/capture-order- Currency: USD (convert from IDR at current rate)
- Untuk: international users, SaaS bundles
| Delivery Type | Trigger | Aksi |
|---|---|---|
| Web access | Payment confirmed | Activate user_purchase record |
| Email file | Payment confirmed | Kirim email dengan download link |
| GitHub access | Payment confirmed | GitHub API: invite ke repo sebagai collaborator |
| License key | Payment confirmed | Generate + email license key |
| Manual | Payment confirmed | Notifikasi ke admin, assign manual |
- Homepage LCP < 2.5 detik
- Tool response < 1 detik (AI tool: < 5 detik)
- Dashboard load < 2 detik
- API response < 500ms (p95)
- Setiap halaman produk: unique title, description, OG image
- Schema.org: Product, Service, FAQPage, BreadcrumbList, Organization
- Sitemap auto-generated (sudah ada, extend ke produk baru)
- Canonical URL untuk semua halaman
- Core Web Vitals: semua green di production
- HTTPS enforced (sudah via Nginx)
- Rate limiting: auth endpoints (5 req/min), AI tools (10 req/min)
- Input sanitization: semua form input
- CSRF protection: semua POST endpoints
- Midtrans webhook signature verification
- No sensitive data in client-side code
- WCAG 2.1 AA minimum
- Keyboard navigable
- Screen reader friendly labels
- Color contrast ratio ≥ 4.5:1
- Responsive di semua breakpoint (320px – 1920px)
- Touch targets ≥ 44px
- Dashboard usable di mobile (priority untuk personal dashboard)
- Jangan ubah design system — space/sci-fi dark theme tetap
- Homepage style adalah reference — halaman lain boleh menyesuaikan UX tapi tetap dalam design system yang sama
- Dashboard bisa lebih "software-like" (lebih terang, clean) vs landing pages yang lebih dramatic
- Konsistensi komponen — reuse komponen yang ada, extend jika perlu
- ABRA / Nutrisius — bukan bagian Tiranyx
- Mighan World 3D engine — separate repo, hanya waitlist di tiranyx.co.id
- Ixonomic core banking — separate system, hanya integrasi API
- Mobile app (iOS/Android) — fase 3+
- Marketplace pembeli lain (bukan white-label Tiranyx)
PRD ini adalah living document. Update setiap sprint akhir. Maintained by: Fahmi Ghani + AI Engineering Team