Skip to main content

Starter Voice Tier — Full Acceptance Spec

non-critical   Property: ChurchWiseAI   Category: Voice Agent Tier: starter-voice Persona: pastor-admin Touchpoint: /admin/[token]

Preconditions

  • Active premium_churches row with plan=starter-voice, status=active or preview
  • church_voice_agents row exists with assigned phone number
  • Logged in as church admin

Steps

#ActionExpected Result
1Open admin dashboardCalls tab visible. Chatbot tab HIDDEN (voice-only tier).
2Check Calls tabPhone number shown, voice agent status shown, call log visible
3Verify chatbot embed code sectionNot present — starter-voice has no chatbot
4Make a test call to the church's assigned numberVoice agent answers, greets with church name, follows HEAR protocol
5Say 'I'd like to submit a prayer request'Agent captures request, confirms receipt, logs to voice_prayer_requests
6Check voice_prayer_requests tableNew row with source=voice, church_id correct
7Check Pro-only voice features (e.g. custom hold music, advanced routing)Locked with upgrade prompt

Known Failure Modes

  • Chatbot tab visible — tier gating broken
  • Voice agent doesn't answer — SIP trunk or dispatch rule misconfigured
  • Prayer request not logged — DB write failure
  • Wrong church greeting — session.py resolve_route() returning wrong church config

References

Notes

Voice agent is multi-tenant (one deployed agent serves all churches). Routing happens in session.py:resolve_route() via phone number lookup. Plan: $49.95/mo + $49.95 setup fee. Annual: setup waived. Full expected output spec: acceptance/starter-voice.md.