Booking Flow
Select Lawyer
Navigate to a lawyer’s profile or click “Agendar” from search results. You’ll see:
- Lawyer’s photo, name, and PJUD verification badge
- Specialties displayed as badges
- Bio snippet
Choose Duration
Select consultation length from 4 options:
| Duration | Price Calculation |
|---|---|
| 30 min | 50% of hourly rate |
| 60 min | 100% of hourly rate (base) |
| 90 min | 150% of hourly rate |
| 120 min | 200% of hourly rate |
Longer consultations provide more time for complex legal matters and are charged proportionally.
Pick a Date
Choose from available dates in the next 30 days:
- Excluded days: Sundays and Chilean public holidays
- Lawyer availability: Only dates where the lawyer has configured availability
- 3-column grid: Shows day of week, date, and month
Select Time Slot
After selecting a date, available time slots appear:Default Hours
- Monday-Friday: 9:00 AM - 6:00 PM
- Saturday: 9:00 AM - 2:00 PM
- Available slots: White background, clickable
- Booked slots: Gray background, disabled
- Selected slot: Blue background
For same-day bookings, only slots at least 15 minutes in the future are available.
Review Summary
Before proceeding to payment, review:
- Date: Full date in Spanish format
- Time: Selected time slot
- Duration: Consultation length in minutes
- Lawyer fees: Base consultation price
- Service fee: 10% platform charge
- Total: Final amount in CLP
Availability System
Lawyer-Controlled Availability
Lawyers configure their weekly availability in the dashboard:Real-Time Availability Check
The system checks multiple factors before showing a time slot:- Lawyer Schedule
- Existing Bookings
- Collision Detection
- Same-Day Cutoff
Compares selected date against the lawyer’s configured availability JSON. Only hours marked as available are shown.
Pre-Checkout Modal
For users not logged in, a modal collects essential information: Required Fields- Full Name: Client’s complete name
- Email: Valid email address (validated with regex)
- Lawyer name
- Duration in minutes
- Total price in CLP
- Refund guarantee if lawyer doesn’t attend
Payment Processing
Creating the Booking
Both authenticated and guest users follow the same API flow:Analytics Tracking
The system tracks multiple events:- booking_start: When booking page loads
- time_selected: When user picks a time slot
- lead_created: When booking is created (before payment)
- begin_checkout: When redirecting to MercadoPago
MercadoPago Redirect
After booking creation, clients are redirected to MercadoPago:Price Breakdown
The booking summary shows transparent pricing: Example: 60-minute consultation with lawyer charging $50,000 CLP/hour| Item | Amount |
|---|---|
| Lawyer fees | $50,000 |
| Service fee (10%) | $5,000 |
| Total | $55,000 |
The 10% service fee covers platform maintenance, payment processing, and customer support.
Loading States
Skeleton Screens
While loading lawyer data, skeleton screens show:- Lawyer info card placeholder
- Duration selection placeholders (4 options)
- Date picker grid (6 cells)
- Time picker grid (6 cells)
Time Slots Loading
When changing dates or duration:- Spinner shown in time picker area
- Existing slots remain visible but disabled
- New slots loaded asynchronously
Error Handling
- Lawyer Not Found
- No Available Slots
- Booking Creation Failed
- Missing Email (Authenticated Users)
If lawyer ID is invalid or lawyer is deleted:Automatically redirects to search page.
Mobile Responsiveness
- Duration cards: 2 columns on mobile, 4 on desktop
- Date picker: 3 columns always (compact)
- Time picker: 2 columns always
- Pre-checkout modal: Full-screen on mobile, centered dialog on desktop
Next Steps
After clicking “Continuar al pago” or “Confirmar y pagar asesoría”:Payment
Complete payment through MercadoPago
Confirmation
Receive email confirmation and calendar invite