SheTalks

SheTalks: A Trusted Women's Wellness Platform for Mobile and Web

Wellness
Software DevelopmentAI Transformation

The challenge: confidential support women can trust

Women looking for emotional support often face stigma, few confidential listeners, and scattered tools for booking and paying for sessions. SheTalks needed one closed platform that solved all three, without becoming a generic social network. The brief came down to five requirements: keep the community women-focused and verified; offer structured access through availability, booking and credits; schedule correctly across time zones; take payments on mobile app stores and web; give the SheTalks team tools to approve companions, review IDs and manage accounts.

Our solution: four apps and one Backend, built around trust

We built SheTalks as six cooperating codebases: customer and companion apps in Flutter, matching Next.js web apps, a shared Flutter package, and one FastAPI backend that serves all four apps. Every journey follows the same five steps.

Verified onboarding

Women-eligibility confirmation, a government ID check (AI first pass with Google Gemini, then operator review) and a short onboarding survey.

Companion discovery

Browse and filter companions by expertise, language, rating and availability.

Chat and sessions

A realtime inbox, interactive chat cards that lead straight to booking, and Zego voice or video calls.

Credits and plans

Subscription plans and message top-ups through in-app purchase on mobile and Cashfree checkout on the web.

Operator control

Companion approvals, an ID review queue, credit grants, plan management, recordings and account deletion requests.

shetalks-solution image

What we built for each type of user

The platform serves three roles, each with its own app experience on mobile and web.

For customers

  • Email or Google sign-in, with optional one-time-code login
  • ID-verified, women-focused onboarding
  • Companion browsing, filters and recommendations
  • Book, cancel or reschedule sessions, then leave feedback
  • Private chat with attachments and in-chat booking
  • Plans and message credits on app stores and web

For companions

  • Self-registration with email verification and approval
  • Weekly availability, date overrides and leave requests
  • Booking calendar with one-tap session join
  • Chat inbox and in-call controls, including picture-in-picture on mobile
  • Profile with expertise, languages, time zone and audio intro

For the SheTalks team

  • Companion approval workflow
  • AI-assisted ID verification queue with manual decisions
  • Customer directory, notes and credit grants
  • Plan and top-up pack management
  • Session recording playback and account deletion queue

Architecture at a glance

All four apps talk to one FastAPI backend over HTTPS, plus a WebSocket channel for realtime chat. PostgreSQL holds bookings, credits and payment records; Redis handles login codes and chat fan-out; RabbitMQ carries push notifications. A separate background worker runs reminders, notification delivery and call clean-up, so scaling the API never duplicates scheduled jobs.

Mobile

Flutter (iOS and Android)

Web

Next.js, React and Tailwind CSS progressive web apps

Backend

Python, FastAPI, SQLAlchemy

Data

PostgreSQL, Redis, RabbitMQ

Realtime and calls

WebSockets, Zego voice and video

Payments

Apple In-App Purchase, Google Play Billing, Cashfree

AI

Google Gemini for ID document review

Cloud

AWS SES, S3 and CloudFront; Firebase Cloud Messaging

shetalks-architecture

Seven engineering decisions that kept SheTalks correct

The hardest problems on SheTalks were about correctness under real-world failure: time zones, duplicate payments, dropped calls and missed notifications.

  1. 01

    UTC on the wire, local time at the edges

    Customers and companions in different zones saw the wrong slots when apps converted times naively. We store every booking in UTC, keep each user's IANA time zone, and use one shared clock in every app.

  2. 02

    Every payment grants credits exactly once

    A customer's return to the app and the gateway's webhook can both report the same payment. Grants are idempotent, backed by unique order and transaction IDs and automated duplicate-delivery tests.

  3. 03

    Store receipts are verified on the server

    Receipts sent by an app can be forged, so Apple and Google purchases are checked server-side before any credit or plan is granted.

  4. 04

    Scheduled work runs on a dedicated worker

    Running schedulers inside every API process would send duplicate reminders. A single background worker owns all scheduled jobs, so the API scales freely.

  5. 05

    Notifications go through a transactional outbox

    Each notification is written in the same database transaction as the event that caused it, then delivered after commit, so none are lost when a request fails.

  6. 06

    Calls are tracked by connected time

    People drop and rejoin calls, so we record actual connected seconds, close bookings on schedule, and sweep orphaned call rooms and recordings.

  7. 07

    Risky features ship behind flags

    Web payments, push notifications, call recording and two-step login can each be switched on per environment and rolled back without a deploy.

The Story Behind SheTalks: From Vision to Platform

Discover how DEQX built SheTalks, connecting women with wellness companions through seamless bookings, private chats, and live voice and video sessions.

What we delivered

We delivered a complete multi-app platform, backed by a broad automated test suite and a deliberate split of payments across mobile and web.

4

apps on iOS, Android and web, from 1 shared Backend

3

user roles: customers, companions and operators

3

payment channels: Apple, Google Play and Cashfree

160+

automated test files across backend, mobile and web

63

versioned database migrations

About this case study

This case study is based on DEQX's review of the SheTalks code, tests and engineering documentation in October 2026. Every feature described is implemented in the codebase, and SheTalks has not shared user or revenue figures, so we report engineering outcomes only. Reviewed by the DEQX product and engineering team.

Frequently asked questions

What is SheTalks?

SheTalks is a women-focused wellness platform where customers connect with wellness companions through private chat and bookable voice or video sessions. Access is gated by women-eligibility confirmation and ID verification, and it runs on iOS, Android and the web.

What did DEQX build for SheTalks?

DEQX built the full platform: a Flutter customer app, a Flutter companion and operator app, two matching Next.js web apps, a shared Flutter package, and one FastAPI backend with a background worker that serves them all.

Which technologies power SheTalks?

The apps use Flutter and Next.js. The backend runs on Python and FastAPI with PostgreSQL, Redis and RabbitMQ. Zego powers voice and video calls, Google Gemini assists ID checks, and AWS handles email and file storage.

How does SheTalks verify users and companions?

Customers confirm women eligibility and upload a government ID, which Google Gemini reviews first; an operator decides cases the AI can't settle. Companions verify their email and wait for operator approval before they can take sessions.

How do bookings and video sessions work?

Customers pick a slot from a companion's availability and book it with credits, then join a Zego voice or video call from the app. Cancelling at least two hours ahead refunds all credits, and at least one hour ahead refunds half.

How does SheTalks take payments on mobile and web?

Mobile apps sell plans and message credits through Apple In-App Purchase and Google Play Billing, as the app stores require. Web users pay through Cashfree checkout. Every purchase is verified on the server before credits are granted.

How does the platform avoid duplicate charges or credits?

Payment grants are idempotent: if the app and the payment gateway both report the same payment, credits are added only once. Unique order and transaction IDs enforce this, and automated tests cover duplicate verification and webhook delivery.

How does SheTalks handle users in different time zones?

All bookings are stored in UTC, and each customer and companion has a saved time zone. A shared clock library in every app converts times for display, so both sides see the same session at their correct local time.

What was the hardest part of building SheTalks?

Keeping bookings and payments correct when things go wrong: users in different time zones, payments reported twice by the app and the gateway, and calls that drop and rejoin. We solved these with UTC storage, idempotent payment grants and connected-time call tracking.

Building a platform with bookings, payments and live calls?

Let's talk