Skip to main content

Overview

This guide will walk you through setting up Zenda and creating your first appointment booking. Whether you’re a professional setting up your practice or a patient booking a session, this guide has you covered.
Zenda works on any device—desktop, tablet, or mobile—directly in your web browser with no installation required.

For Mental Health Professionals

1

Create Your Professional Account

Sign up for a Zenda account using your email address. You’ll use Supabase authentication, which provides secure, reliable access to your dashboard.The application uses token-based authentication. After signing in, your session token is stored securely and used for all API requests.
2

Configure Your Schedule

Set up your practice parameters:Session Duration
  • Choose between 15 and 180 minutes per session
  • Common values: 30, 45, or 60 minutes
  • This determines available time slots
Working Hours
  • Define your start and end times (e.g., 9:00 AM to 6:00 PM)
  • Set which days of the week you work
  • Block specific dates for vacation or time off
Session Types
  • Virtual: Online sessions via video call
  • Presencial: In-person at your office (requires office address)
  • Both: Offer both modalities for patient flexibility
Reservation Window
  • Set how far in advance patients can book (1-365 days)
  • Prevents last-minute bookings if desired
// Professional settings structure
interface ProfessionalSettings {
  session_duration: number;        // Minutes per session
  working_days: string[];          // ["monday", "tuesday", ...]
  start_hour: string;              // "09:00"
  end_hour: string;                // "18:00"
  modality: "Virtual" | "Presencial" | "BOTH";
  office_address?: string;         // Required if Presencial or BOTH
  requires_deposit: boolean;       // Require payment to confirm?
  deposit_amount?: number;         // Deposit amount if required
  reservation_window_days: number; // 1-365
}
3

Configure Payment Settings (Optional)

Decide whether to require deposits for appointment confirmation:Option 1: No Deposit Required
  • Set requires_deposit to false
  • Patients can book immediately without payment
  • Good for established patients or practices without payment infrastructure
Option 2: Require Deposit
  • Set requires_deposit to true
  • Set deposit_amount (must be ≥ 1)
  • Patients must pay through Mercado Pago to confirm
  • Reduces no-shows and ensures commitment
See Payment Settings for detailed configuration.
4

Share Your Booking Link

Once configured, share your booking page URL with patients. They’ll be able to:
  • View your real-time availability
  • Select their preferred time slot
  • Choose session type (if you offer both virtual and in-person)
  • Complete payment if required
  • Receive instant confirmation
5

Manage Your Dashboard

Access your professional dashboard to:
  • View all upcoming appointments in calendar or list view
  • See patient information and history
  • Create manual time blocks for administrative tasks
  • Cancel or reschedule appointments
  • Track payment status
Learn more in Professional Dashboard.

For Patients

1

Access the Booking Page

Your mental health professional will provide you with a booking link. Open it in any web browser on your device.
2

Create Your Account

Sign up with your email address to create a patient account. This lets you:
  • Book appointments
  • View your reservation history
  • Manage upcoming sessions
3

Select Your Appointment

Choose your preferred appointment details:Date: Pick from available dates based on the professional’s scheduleTime Slot: Available slots are generated based on:
  • Professional’s working hours
  • Session duration
  • Existing reservations
  • 10-minute buffer between sessions
Session Type: If the professional offers both:
  • Virtual (online session)
  • Presencial (in-person at office)
4

Complete Payment (if required)

If the professional requires a deposit:
  1. Review the deposit amount
  2. Click to proceed to Mercado Pago
  3. Complete payment securely
  4. You’ll be redirected back with confirmation
The reservation is automatically created after successful payment.If no deposit is required, your appointment is confirmed immediately.
5

Receive Confirmation

After booking:
  • Your appointment appears in your reservations list
  • You can view details anytime by logging in
  • Check appointment status, date, time, and type

Common Scenarios

As a Professional: Go to your dashboard, find the reservation, and click to cancel or delete it.As a Patient: Log in to your account, view your reservations, and select the appointment to cancel. Contact your professional directly if you need assistance.
This means the professional’s schedule is fully booked for the displayed dates. Try:
  • Selecting a different date range
  • Checking later in the week or month
  • Contacting the professional directly for urgent needs
When payment is required:
  1. You create a payment preference
  2. Complete payment through Mercado Pago
  3. Mercado Pago sends a webhook notification to Zenda
  4. Zenda automatically creates your reservation
  5. Your appointment is confirmed
The entire process is automated and typically completes in seconds.
Yes! As a professional, you can create manual blocks for:
  • Lunch breaks
  • Administrative time
  • Personal appointments
  • Vacation days
Manual blocks prevent patients from booking those time slots.

Technical Details

For developers integrating with Zenda:
// API Base URL
const API_BASE = process.env.NEXT_PUBLIC_API_URL || "http://localhost:4000";
const API_PREFIX = "/api";

// All endpoints use the /api prefix
const endpoints = {
  reservations: `${API_BASE}${API_PREFIX}/reservations`,
  availability: `${API_BASE}${API_PREFIX}/reservations/availability`,
  professionalSettings: `${API_BASE}${API_PREFIX}/professional-settings`,
  profiles: `${API_BASE}${API_PREFIX}/profiles`,
  payments: `${API_BASE}${API_PREFIX}/payments`,
};
See the API Reference for complete endpoint documentation.

Next Steps

Professional Dashboard

Learn how to manage your practice dashboard

Booking Appointments

Detailed patient booking guide

Payment Integration

Set up Mercado Pago for deposits

Authentication

Understand how Zenda authentication works

Build docs developers (and LLMs) love