mirror of
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools.git
synced 2026-06-17 23:09:35 +00:00
4.8 KiB
4.8 KiB
Dealix — Revenue Readiness Plan
End-to-end path: lead → quote → invoice → payment → CRM → fulfillment → renewal.
1) Pricing Path
| Plan | Price (SAR) | Billing | Lead cap |
|---|---|---|---|
| Pilot | 1 | 7-day one-time | 50 |
| Starter | 999 | monthly | 500 |
| Growth | 2,999 | monthly | 2,500 |
| Scale | 7,999 | monthly | unlimited |
ARPU (40/30/10 mix Starter/Growth/Scale): 2,099 SAR Annual value per customer: ~25,200 SAR (excl. churn)
2) Quote Path
- Prospect books demo via Calendly
- Post-demo: Sami sends quote via
docs/sales-kit/dealix_pilot_agreement.md(template) - Customer signs (DocuSign or WhatsApp confirmation for pilot)
- Move to invoice step
3) Invoice Path (Moyasar Invoices API)
Implementation: dealix/payments/moyasar.py::create_invoice()
# Production usage
async def issue_invoice(customer_email: str, amount_sar: int, plan: str):
client = MoyasarClient()
inv = await client.create_invoice(
amount=amount_sar * 100, # halalas
currency="SAR",
description=f"Dealix {plan} — شهر واحد",
callback_url="https://dealix.sa/payment/callback",
metadata={"customer": customer_email, "plan": plan}
)
# Send inv['url'] via WhatsApp + email
return inv['url']
Flow:
- Sales confirms deal
issue_invoice(...)→ Moyasar hosted invoice URL- URL sent via WhatsApp + email
- Customer pays → Moyasar webhook fires →
api/routers/webhooks.py - Handler verifies signature → updates lead.status = "paid"
- Posthog event fired:
payment_completed - Sentry breadcrumb logged
4) Payment Path
- Gateway: Moyasar (Saudi-licensed, SAMA-regulated)
- Webhook:
/api/webhooks/moyasar— signature verified withX-Moyasar-Signature - Retry: via existing DLQ (
dealix/reliability/dlq.py) — 3 retries, exponential backoff - Reconciliation: daily via
cron/reconcile_payments.py(P1 — needs scheduling)
5) Booking Path
- Tool: Calendly (free → Premium if need webhooks)
- Flow: prospect picks slot → Calendly confirm email → webhook (P1) → lead.stage=demo_booked
- Reminders: Calendly native (24h + 1h)
6) CRM Path
- Current CRM: internal DB via
api/routers/leads.py - Stages: new → qualified → demo_booked → proposal_sent → paid → onboarding → active → renewal_due → churned
- Fields: name, email, phone_e164, company, plan, invoice_id, payment_status, created_at, last_contact_at, owner
- Sync to HubSpot: P2 (not needed now)
7) ZATCA E-Invoice Readiness
Trigger: When annual revenue crosses the e-invoice mandate threshold (per ZATCA phased rollout).
Plan:
- Phase 1 (now): Moyasar Invoices — simplified tax invoice sufficient for early pilots
- Phase 2 (when mandated): integrate with ZATCA Fatoora platform
- Generate XML (UBL 2.1) per ZATCA spec
- Sign with ZATCA cert
- Submit to reporting/clearance endpoint
- Store cleared invoice + QR code
- Owner: Sami + external accountant
- Estimated effort: 2–3 weeks dev + certification
8) Proof Path (case studies)
- First 3 pilots = case study candidates
- Collect: before/after metrics, quote, logo permission
- Publish:
landing/case-studies/*.html(P2) - Video testimonial: within 30 days of go-live
9) Follow-up Path
| Day | Channel | Content |
|---|---|---|
| 0 | Welcome + onboarding link | |
| 1 | Full feature walkthrough video | |
| 3 | "Any questions?" | |
| 7 | First week report | |
| 14 | Mid-pilot check-in | |
| 25 | Upgrade offer (end of pilot) | |
| 30 | Close: paid or churned |
10) Renewal Path
- Day -7: email "renewal coming up"
- Day -3: WhatsApp "confirm?"
- Day 0: auto-invoice (once subscription infra built, P2)
- Day +7: if unpaid → grace period ends, archive
11) What's ready vs what's not
| Item | Code ready | Tested E2E | In production |
|---|---|---|---|
| Moyasar Invoice create | ✅ | ❌ | ❌ |
| Moyasar webhook | ✅ | ❌ | ❌ |
| Lead status update | ✅ | ❌ | ❌ |
| PostHog events | ✅ | 🟡 partial | 🟡 |
| Calendly booking | ✅ (link) | ✅ | ✅ |
| Calendly → CRM sync | ❌ | ❌ | ❌ |
| ZATCA e-invoice | ❌ | ❌ | ❌ |
| Reconciliation cron | ❌ | ❌ | ❌ |
| Renewal automation | ❌ | ❌ | ❌ |
Verdict: revenue infrastructure is 70% coded, 10% tested, 0% battle-proven. Must run 1 SAR test before claiming ready.
12) Definition of "Revenue Ready"
All must be true:
- Moyasar secret rotated
- 1 SAR test invoice issued
- 1 SAR test payment completed
- Webhook fired and verified
- Lead DB updated to
paid - PostHog
payment_completedevent visible - Sentry breadcrumb recorded
- Sami received email + WhatsApp confirmation
- Invoice retrievable via
fetch_invoice(id) - Reconciliation manually verifiable