Skip to main content

SERVICE_READINESS — billing-service

Pre-launch readiness checklist. Service ships only when every item is ✅. Owner sign-offs at the bottom.

1. Functional readiness​

#ItemStatus
1.1Folio open / charge / payment / refund / close happy paths green in E2E☐
1.2Multi-currency folio close passes property-based suite☐
1.3Cash drawer open / receipts / initiate-close / close (online) E2E green☐
1.4Two-staff sign-off cryptographic enforcement verified end-to-end☐
1.5Variance-over-threshold flow blocks next session and routes to acknowledge☐
1.6RTL Arabic invoice template + bilingual numerals visually approved☐
1.7Government / corporate / agent / Sharia templates rendered and approved☐
1.8Subscription cycle end-to-end green for at least 3 plans☐
1.9Dunning state machine green: current → grace → past_due → suspended → reactivated☐
1.10Reservation event integration (confirmed, checked-in, checked-out, cancelled) green☐
1.11Payment-gateway event integration (captured, refunded) green☐
1.12Tenant-created event provisions per-tenant schema and initializes subscription☐

2. Non-functional​

#ItemStatus
2.1Folio mutation p95 ≤ 350 ms in load test☐
2.2Invoice generation p95 ≤ 2 s in load test☐
2.3Cash drawer close p95 ≤ 5 s in load test☐
2.4Outbox lag p99 ≤ 30 s under sustained load☐
2.5Cloud Run min replicas configured: api 3, drainer 2☐
2.6Cloud SQL HA + cross-region replica + PITR 7d configured and tested☐
2.7Per-tenant schema migrator job runs cleanly on 100 fixture tenants☐

3. Security & compliance​

#ItemStatus
3.1PCI SAQ A self-assessment completed and reviewed☐
3.2DLP scan passes (no PAN-shaped strings in repo, logs sample, outbox sample)☐
3.3Schema-per-tenant + RLS verified by cross-tenant attack test☐
3.4Step-up token verification + nonce single-use confirmed☐
3.5mTLS in VPC verified for all service-to-service calls☐
3.6Secrets only via Secret Manager + Workload Identity (no env-baked)☐
3.7Audit retention 7 years configured in audit-service for billing topics☐
3.8DSAR / offboarding rehearsal: schema archive + 90-day drop verified☐
3.9Sharia-compliant tenant invariants verified in domain tests + E2E☐

4. Observability​

#ItemStatus
4.1Tracing on all entrypoints; sampling rules deployed☐
4.2Logs emit mandatory fields; PII redaction tested☐
4.3All metrics in OBSERVABILITY §4 emitted in staging☐
4.4All dashboards in OBSERVABILITY §5 created☐
4.5All alerts in OBSERVABILITY §6 wired to PagerDuty / Slack☐
4.6Synthetic monitor running and alerting on failure☐

5. Operational​

#ItemStatus
5.1On-call rotation defined (billing-on-call PagerDuty schedule)☐
5.2Runbook reviewed by all on-call engineers☐
5.3Disaster-recovery drill executed with documented RPO/RTO☐
5.4Cloud Build pipeline green on main; canary auto-rollback validated☐
5.5Cost guardrails set in FinOps dashboard☐

6. Documentation​

#ItemStatus
6.1All 17 service docs (this bundle) reviewed and merged☐
6.2docs/03-microservices/billing-service.md reviewed and merged☐
6.3OpenAPI published and consumed by BFF stubs☐
6.4Event schemas published in the schema registry☐
6.5New ID prefixes (fpm_, frd_, cnt_, set_, cdr_, cds_, dcr_, sub_, sin_, sil_, usg_, pln_, cnl_, ln_) added to NAMING.md☐
6.6New error codes registered in ERROR_CODES.md (BILLING domain extensions)☐

7. Tenant readiness​

#ItemStatus
7.1Tax rules seeded for all GA jurisdictions (AF, PK, SA, AE, TJ, IR)☐
7.2Default plans (STARTER_PER_ROOM, PRO_PER_ROOM, ENTERPRISE_FLAT) registered☐
7.3Invoice template per customer class published per market☐
7.4Cash drawer variance default thresholds set per currency☐
7.5Sharia-compliant flag UI verified in tenant admin☐

8. Sign-offs​

OwnerRoleSign-off
Service owner (Engineering)☐
Domain owner (Finance)☐
Security☐
SRE☐
Compliance☐
Product☐

9. Cross-references​