Settings
Route: /admin/settings
Files:
ayts-admin/app/(admin)/settings/page.tsxayts-admin/app/admin/settings/page.tsx
Auth required: Admin
Purpose
Platform-level configuration that affects all users and vendors.
Settings Sections
Platform Info
- Site name (default: "AYTS")
- Contact email
- Support phone number
- Platform logo
Business Rules
- Commission rate (default: 3%)
- Maximum delivery radius (km)
- Minimum order amount (₱)
- Delivery fee structure
Notifications
- Email notifications enabled/disabled
- SMS notifications enabled/disabled
- Push notifications enabled/disabled
Maintenance Mode
- Toggle maintenance mode (shows splash to customers)
- Maintenance message
Payment Configuration
- COD enabled/disabled
- GCash enabled/disabled
- Maya enabled/disabled
Data Fetching
// Get settings
GET /api/admin/settings
// Update settings
PATCH /api/admin/settings
{ siteName, contactEmail, commissionRate, ... }
Settings API not implemented
GET /api/admin/settings currently returns 404 Not Found. The route is defined but the underlying handler and database table (platform_settings) may not exist yet.
Implementation Status
| Setting | Status |
|---|---|
| Settings page UI | ✅ Exists |
| GET /api/admin/settings | ❌ Returns 404 |
| PATCH /api/admin/settings | ❌ Not verified |
| platform_settings DB table | ⚠️ Needs verification |
How to Fix
- Verify or create a
platform_settingstable in Supabase - Implement the route handler in
ayts-api/src/routes/admin.ts - Return a single settings row (upsert pattern)
CREATE TABLE platform_settings (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
site_name TEXT DEFAULT 'AYTS',
contact_email TEXT,
commission_rate DECIMAL(5,4) DEFAULT 0.03,
cod_enabled BOOLEAN DEFAULT true,
gcash_enabled BOOLEAN DEFAULT true,
maya_enabled BOOLEAN DEFAULT true,
maintenance_mode BOOLEAN DEFAULT false,
maintenance_message TEXT,
updated_at TIMESTAMPTZ DEFAULT now()
);