> ## Documentation Index
> Fetch the complete documentation index at: https://help.odia.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Settings

> Configure and customize your Odia workspace. Manage categories, destinations, branding, custom fields, integrations, and team access.

## Overview

<Note>
  Odia's settings provide comprehensive control over your workspace configuration. Access and modification capabilities are determined by user roles: Owner, Admin, Supervisor, and User. If it's your first time setting up Odia, follow our <a href="https://help.odia.app/onboarding/admin-setup">Admin Setup Guide</a>.
</Note>

<CardGroup cols={2}>
  <Card title="Initial Setup" icon="rocket" href="#service-configuration">
    Essential first steps:

    * Create service categories
    * Add destinations where you operate
    * Customize branding
    * Configure currencies
  </Card>

  <Card title="Role-Based Access" icon="users-gear" href="#team-access--user-management">
    Four permission levels:

    * Owner (full control)
    * Admin (administrative access)
    * Supervisor (operational access)
    * User (limited access)
  </Card>
</CardGroup>

## What's in Settings?

Settings is where admins configure the foundational elements of your Odia workspace. This includes:

**Service organization:**

* Categories for organizing services (Accommodation, Activities, etc.)
* Destinations where you operate (countries and specific areas)

**Customization:**

* Your company branding and logo
* Custom fields for tracking organization-specific data
* Currencies and date/time formats

**Integrations:**

* Connect WhatsApp for messaging
* Connect inbox for email management
* Connect AXUS for Journey distribution
* Configure purchase order settings

**Team management:**

* User roles and permissions
* Access control

**Who can access:** Settings access varies by section and user role. Most settings require Admin access.

## Service Configuration

Set up the foundational elements for organizing your services.

### Categories

Service categories help you organize and filter your services:

<Tip>
  Service categories make it easier to find your services and add them to Journeys. You can have as many categories as you need, but it's recommended to have at least 10 services per category for effective organization. To create subcategories, use tags - for example, for the "Accommodation" category, create tags like "Hotel" and "Apartment".
</Tip>

<CardGroup cols={2}>
  <Card title="Create Categories" icon="folder-tree">
    **Create categories based on service types:**

    * Accommodation
    * Activities
    * Transportation
    * Dining
    * Tours & Guides
    * Any other service types you offer

    Click "Add Category" to create a new category
  </Card>

  <Card title="Edit Categories" icon="pen-to-square">
    **Update existing categories:**

    * Click <Icon icon="pen-to-square" /> to edit
    * Change category name
    * Upload category icon

    **Note:** You can only delete a category if there are no services associated with it
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Why Categories Matter" defaultOpen={true}>
    **Categories serve multiple purposes:**

    **Service organization:**

    * Group similar services together
    * Filter services in your library
    * Quick navigation and search

    **Supplier management:**

    * Tag suppliers with categories they provide
    * Filter suppliers by category when assigning to services

    **Custom fields:**

    * Create category-specific custom fields
    * Different data for accommodation vs. activities

    **Purchase orders:**

    * Configure mandatory fields per category
    * Accommodation POs can require different fields than activity POs

    **Integration:**

    * Map categories to AXUS reservation types
    * Required for external integrations
  </Accordion>

  <Accordion title="How to Delete Categories" defaultOpen={false}>
    **If you want to delete a category with associated services:**

    <Steps>
      <Step title="Filter Services">
        Go to Services and filter by the category you want to delete
      </Step>

      <Step title="Reassign Services">
        One by one, change the category on each service to a different category
      </Step>

      <Step title="Delete Category">
        Once no services use the category, you can delete it from Settings
      </Step>
    </Steps>

    **Alternative:** Edit the category and rename it if you want all services to belong to the renamed category (keeps service associations intact).
  </Accordion>

  <Accordion title="Category Best Practices" defaultOpen={false}>
    **Effective category organization:**

    **Start with core categories:**

    * Accommodation
    * Activities
    * Transportation
    * Dining
    * Tours & Guides

    **Add categories as needed:**

    * Don't create too many empty categories upfront
    * Add new categories when you have 10+ services for them

    **Use consistent naming:**

    * Plural vs. singular (choose one approach)
    * Clear, descriptive names
    * Avoid overly specific categories

    **Use tags for subcategories:**

    * Don't create "Hotel", "Lodge", "Resort" as separate categories
    * Use "Accommodation" category with "Hotel", "Lodge", "Resort" tags
  </Accordion>
</AccordionGroup>

### Areas (Destinations)

Add the countries and specific locations where you offer services:

<Note>
  **Important:** Areas (specific locations like "Paris" or "Bangkok") are actively used throughout Odia to filter services and organize suppliers. Countries are organizational containers for areas. **Areas will appear on Journeys that travellers see**, so use recognizable destination names.
</Note>

<CardGroup cols={3}>
  <Card title="Countries" icon="location-dot">
    **Add countries first:**

    * Click "Add Country" to create
    * Organizational containers for areas
    * Examples: France, Thailand, South Africa
  </Card>

  <Card title="Areas" icon="map">
    **Add specific locations within countries:**

    * Click "Add Area"
    * Select country from dropdown
    * Add area name (city, region, or destination)
    * Examples: Paris, Bangkok, Cape Town
  </Card>

  <Card title="Edit Areas" icon="pen-to-square">
    **Update existing areas:**

    * Click <Icon icon="pen-to-square" /> to edit
    * Change area name or country
    * Map to Google Maps location for Journey maps

    **Note:** Can only delete if no services associated
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Mapping Areas to Google Maps" defaultOpen={true}>
    **Areas can be mapped to Google Maps locations to enable interactive maps on Journeys.**

    **How to map an area:**

    <Steps>
      <Step title="Go to Countries and Areas">
        Navigate to Settings > Countries and Areas
      </Step>

      <Step title="Edit an Area">
        Click the <Icon icon="pen-to-square" /> icon next to the area you want to map
      </Step>

      <Step title="Map to Google Maps">
        In the edit dialog, you'll see a field to connect the area to a Google Maps location. Search for and select the corresponding location (e.g., connect "Amsterdam" to Amsterdam on Google Maps)
      </Step>

      <Step title="Update Area">
        Click **Update Area** to save the mapping
      </Step>
    </Steps>

    **Why map areas:**

    * Enables interactive maps on Journeys showing trip destinations
    * Helps travellers visualize the geographical scope of their journey
    * Maps automatically display all mapped areas from services in the Journey
    * Areas without Google Maps mapping won't appear on Journey maps

    **Best practice:** Map all your areas to Google Maps locations when you first create them. This ensures Journeys can display accurate, interactive maps for travellers.

    <Note>
      Only Owners and Admins can map areas to Google Maps locations. This is done once in Settings and applies to all Journeys using those areas.
    </Note>
  </Accordion>

  <Accordion title="Why Areas Matter" defaultOpen={false}>
    **Areas enable location-based organization:**

    **Service filtering:**

    * Filter services by area in service library
    * Find services available in specific destinations

    **Supplier management:**

    * Tag suppliers with areas they operate in
    * Filter suppliers by location when assigning to services
    * Example: Find all accommodation suppliers in Paris

    **Journey building:**

    * Add services from specific destinations
    * Filter by area while building trips

    **Traveller visibility:**

    * Areas appear on Journeys
    * Travellers see which destinations are included
    * Example: "3 nights in Paris, 2 nights in Lyon"

    **Organization:**

    * Understand service coverage across destinations
    * Identify gaps in service portfolio
  </Accordion>

  <Accordion title="How to Delete Areas" defaultOpen={false}>
    **If you want to delete an area with associated services:**

    <Steps>
      <Step title="Filter Services">
        Go to Services and filter by the area you want to delete
      </Step>

      <Step title="Reassign Services">
        One by one, change the area on each service to a different area
      </Step>

      <Step title="Delete Area">
        Once no services use the area, you can delete it from Settings
      </Step>
    </Steps>

    **Alternative:** Edit the area and rename it if you want all services to belong to the renamed area (keeps service associations intact).
  </Accordion>

  <Accordion title="Area Best Practices" defaultOpen={false}>
    **Effective area organization:**

    **Use specific, recognizable names:**

    * "Paris" not "France" (too broad)
    * "Bangkok" not "Thailand" (too general)
    * Use names travellers will recognize
    * Remember: Areas appear on confirmed Journeys that travellers see

    **Granularity:**

    * Use specific areas, not entire countries
    * Services can have multiple areas if they span regions
    * Example: Multi-day tour might include "Paris + Lyon + Marseille"

    **Consistent naming:**

    * Use official place names
    * Be consistent with spelling
    * Decide on naming convention (e.g., "Cape Town" vs. "Cape Town, Western Cape")

    **Coverage:**

    * Add areas as you offer services there
    * Don't create areas with no services yet
    * Organize by actual destinations you serve

    **Hierarchy:**

    * Use countries to organize areas
    * All areas must belong to a country
    * Countries themselves aren't used for filtering
  </Accordion>
</AccordionGroup>

## Image Gallery

Centralized media library for all images used in Odia:

<AccordionGroup>
  <Accordion title="Image Gallery Overview" defaultOpen={true}>
    **Every image added to Odia is automatically saved to the image gallery.** This way you don't have to add the same image twice - reuse images across services, Journeys, and other areas.

    <CardGroup cols={2}>
      <Card title="Image Types" icon="images">
        **Images categorized as:**

        * Service images
        * Journey cover images
        * Travel agency logos
        * Supplier logos
        * Organization branding

        **Auto-organized** by where they're used
      </Card>

      <Card title="Image Management" icon="tags">
        **In Settings you can:**

        * Add keywords to images for searchability
        * Tags from services automatically added as keywords
        * Search images by keyword
        * Delete unused images
        * Bulk manage media
      </Card>
    </CardGroup>
  </Accordion>

  <Accordion title="Using the Image Gallery" defaultOpen={false}>
    **How the gallery works:**

    **Automatic addition:**

    * Upload image to service → Added to gallery
    * Upload Journey cover → Added to gallery
    * Upload agency logo → Added to gallery

    **Reusing images:**

    * When adding images anywhere in Odia
    * Select from gallery instead of re-uploading
    * Same image can be used multiple places

    **Search and organization:**

    * Add keywords in Settings > Image Gallery
    * Service tags automatically become image keywords
    * Search images when selecting for services

    **Best practice:** Add descriptive keywords to images in the gallery to make them easy to find later.
  </Accordion>
</AccordionGroup>

## Tags

Organize services with flexible labels for filtering and discovery.

<Note>
  Tags are created **inline** while adding them to services, not from a dedicated settings page. The Tags settings page is for **viewing and deleting** existing tags. Only Admins and Owners can manage tags.
</Note>

### How Tags Work

<CardGroup cols={2}>
  <Card title="Creating Tags" icon="plus">
    **Tags are created while adding them to services:**

    * Open a service in the Library
    * Go to the Tags field
    * Type the new tag name
    * Click "Add \[name] as a new tag"
    * Tag is created and automatically applied
  </Card>

  <Card title="Managing Tags" icon="tags">
    **In Settings > Content Management > Tags:**

    * View all tags with usage counts
    * Search for specific tags
    * Delete unused tags (bulk or individual)
    * See when tags were created
  </Card>
</CardGroup>

### Creating Tags

Tags are created inline when adding them to services. There is no dedicated "Create Tag" button in settings.

<Steps>
  <Step title="Open a Service">
    Navigate to Library and open any service you want to tag
  </Step>

  <Step title="Find the Tags Field">
    In the service edit form, locate the Tags dropdown field
  </Step>

  <Step title="Type Your Tag Name">
    Type the name of the tag you want to create (e.g., "luxury", "family-friendly")
  </Step>

  <Step title="Create and Apply">
    If the tag doesn't exist, you'll see "Add \[name] as a new tag" - click it to create and apply the tag in one step
  </Step>
</Steps>

<Tip>
  **Check for existing tags first:** Before creating a new tag, type the name to see if a similar tag already exists. This prevents duplicate tags like "luxury" and "Luxury" or "family friendly" and "family-friendly".
</Tip>

### Managing Existing Tags

Access tag management in **Settings > Content Management > Tags**:

<AccordionGroup>
  <Accordion title="Viewing Tags" defaultOpen={true}>
    **The tags page displays:**

    * **Tag name** - The tag label
    * **Usage count** - How many services use this tag
    * **Created date** - When the tag was first created

    **Search and filter:**

    * Use the search bar to find specific tags
    * Tags are sortable by name or usage
  </Accordion>

  <Accordion title="Deleting Tags" defaultOpen={false}>
    **Delete tags you no longer need:**

    **Single delete:**

    1. Find the tag in the list
    2. Select the tag using the checkbox
    3. Click "Delete selected"
    4. Confirm deletion

    **Bulk delete:**

    1. Select multiple tags using checkboxes
    2. Click "Delete X selected"
    3. Confirm deletion

    **What happens when you delete a tag:**

    * Tag is removed from all services that use it
    * Tag no longer appears in tag dropdown
    * Historical data is preserved (services retain other tags)

    <Warning>
      Deletion is permanent and cannot be undone. The tag is removed from all services where it was applied.
    </Warning>
  </Accordion>
</AccordionGroup>

### Tags vs Categories

<CardGroup cols={2}>
  <Card title="Categories" icon="folder-tree">
    **Broad service types:**

    * Each service has ONE category
    * Examples: Accommodation, Activity, Transport
    * Set up in Settings > Categories
    * Required for service organization
    * Visible to clients
  </Card>

  <Card title="Tags" icon="tags">
    **Flexible attributes:**

    * Services can have MULTIPLE tags
    * Examples: luxury, budget, family-friendly, adventure
    * Created inline while tagging services
    * For internal organization only
    * **Not visible to clients**
  </Card>
</CardGroup>

<Tip>
  Use categories for subcategories: Instead of creating separate categories for "Hotel", "Lodge", and "Resort", use the "Accommodation" category with tags like "hotel", "lodge", and "resort". This keeps your category list clean while allowing detailed filtering.
</Tip>

## System Preferences

Configure date, time, and currency settings:

### Date & Time

<AccordionGroup>
  <Accordion title="Display Settings" defaultOpen={true}>
    **Configure date and time preferences:**

    | Setting        | Description                       | Access Level |
    | -------------- | --------------------------------- | ------------ |
    | Date Format    | Personal date display preferences | All Users    |
    | Time Format    | 12-hour vs 24-hour time           | All Users    |
    | Timezone       | Your operational timezone         | All Users    |
    | Default Values | System-wide defaults              | Admin only   |

    **Navigate to:** Settings > System Preferences > Date & Time
  </Accordion>
</AccordionGroup>

### Currency

<AccordionGroup>
  <Accordion title="Currency Management" defaultOpen={true}>
    **Features available to admins:**

    **Add currencies:**

    * Click "Add a Currency"
    * Select from provided list of currencies
    * Multiple currencies supported

    **Set default currency:**

    * Choose default for Journeys
    * Used as primary currency in pricing

    **Delete currencies:**

    * Remove currencies not in use
    * Cannot delete currency if used in existing Journeys

    **Navigate to:** Settings > System Preferences > Currency
  </Accordion>

  <Accordion title="Multi-Currency Support" defaultOpen={false}>
    **How currencies work in Odia:**

    **Default currency:**

    * Set one currency as default
    * Used for new Journeys automatically
    * Can be changed per Journey

    **Per-Journey currency:**

    * Select currency when creating Journey
    * All services in that Journey default to that currency

    **Per-service currency:**

    * Can be changed for individual services
    * Mix currencies within same Journey if needed
    * Example: EUR for Paris hotel, USD for international flights

    **Best practice:** Add all currencies you commonly use upfront, set your primary operational currency as default.
  </Accordion>
</AccordionGroup>

## General Settings

Basic organization configuration:

<AccordionGroup>
  <Accordion title="Organization Branding" defaultOpen={true}>
    **In General Settings you can add your organization's logo.**

    **Where your logo appears:**

    * Public Journeys (unless white-label mode is enabled)
    * Confirmed Journey pages
    * Purchase orders
    * Communications

    **Logo requirements:**

    * High-resolution recommended
    * Transparent background preferred (PNG)
    * Supports PNG, JPG, SVG formats

    **White-label mode:**

    * When enabled on Journeys, your logo is hidden
    * Only agency logo shows
    * Use for B2B relationships where agent owns client

    **Navigate to:** Settings > General Settings
  </Accordion>
</AccordionGroup>

## Branding Customization

Customize the visual appearance of Journeys that travellers see. Navigate to **Settings → Organization → Branding** to configure all options below.

<AccordionGroup>
  <Accordion title="Colors" defaultOpen={true}>
    **Four color swatches control your visual identity:**

    | Color                          | What it affects                                                             |
    | ------------------------------ | --------------------------------------------------------------------------- |
    | **Primary**                    | Main text, headings, and default interactive elements                       |
    | **Accent (Button Background)** | Button fill color; optionally used as the Journey accent (see toggle below) |
    | **Card**                       | Background of service cards and content blocks                              |
    | **Background**                 | Page background color                                                       |

    Click any swatch to open the native color picker. Changes are previewed live in the card above the controls before you save.
  </Accordion>

  <Accordion title="Accent Source toggle — Use Button color as accent on Journey" defaultOpen={true}>
    **What it does:**

    When **on**, the Journey uses your **Accent (Button Background)** color for interactive elements — tabs, price chips, and call-to-action buttons.

    When **off** (default), those same elements fall back to your **Primary** color — the look confirmed Journeys have always had.

    **When to turn it on:**

    Turn this on if your Primary color is dark or neutral (e.g. navy, charcoal) and you want interactive elements to pop with a brighter or contrasting color. Set the Accent swatch to that highlight color, then enable this toggle.

    <Tip>
      The live preview at the top of the Branding page shows the effect immediately — you can see tabs and CTAs switch colors before saving.
    </Tip>
  </Accordion>

  <Accordion title="Header Style toggle — Filled header" defaultOpen={true}>
    **What it does:**

    When **on**, the top navigation bar on confirmed Journeys fills with your **accent color** and text/icons are inverted to white — giving a bold, branded header.

    When **off** (default), the header stays clean white with dark text.

    **When to turn it on:**

    Use this when your brand has a strong, recognizable color that you want to lead the public Journey experience. Works best with colors that have sufficient contrast against white text (check WCAG AA: aim for a contrast ratio above 4.5:1).

    <Warning>
      Very light accent colors (e.g. pale yellow) can make the inverted white text hard to read. Preview the result before saving and test on a real public Journey link.
    </Warning>
  </Accordion>

  <Accordion title="Typography" defaultOpen={false}>
    **Two font pickers control the text style across all public Journeys:**

    * **Heading font** — used for day titles, section headers, and service names
    * **Body font** — used for descriptions, details, and supporting text

    Both pickers show a curated list of web-safe Google Fonts. Each option renders in its own typeface inside the dropdown so you can see what you're choosing.
  </Accordion>

  <Accordion title="Page Layout" defaultOpen={false}>
    A visual grid picker lets you choose the default layout preset for public Journey pages. Each preset is shown as a skeleton thumbnail; the active preset is highlighted.
  </Accordion>

  <Accordion title="Saving and resetting" defaultOpen={false}>
    * **Save** — applies all current settings (colors, toggles, fonts, layout) to your organization.
    * **Reset** — reverts all fields to the system defaults (Primary `#0F172A`, Accent `#64748B`, Playfair Display / DM Sans, no filled header, accent from Primary). This does not save automatically — you must click Save after resetting if you want the defaults persisted.
  </Accordion>
</AccordionGroup>

## Custom Fields

Extend Odia's data model to capture organization-specific information:

<Note>
  Custom Fields allow you to add dedicated fields to contacts, organizations (suppliers/agencies), and purchase orders for Journey services. Create fields with various types (text, numbers, dates, dropdowns, etc.) to track information specific to your operations. **Only Admins and Owners can create, edit, or delete custom fields.**
</Note>

<CardGroup cols={3}>
  <Card title="Entity Types" icon="database">
    **Add custom fields to:**

    * **Contacts** - Travellers, agents, supplier contacts
    * **Organizations** - Travel agencies and suppliers
    * **Purchase Orders** - For services in confirmed Journeys

    **Not available for:** Journey services, service library
  </Card>

  <Card title="Field Types" icon="input-text">
    **Six field types available:**

    * **Text** - Free-form text input
    * **Numeric** - Numbers only
    * **Boolean** - Yes/no checkbox
    * **Date** - Date picker
    * **Multi-Option** - Dropdown with options
    * **Reference** - Link to other entities
  </Card>

  <Card title="Subtypes" icon="filter">
    **Target specific subtypes:**

    * **Contact subtypes** - Different fields for travellers vs. agents
    * **Organization subtypes** - Different fields for agencies vs. suppliers
    * **Service categories** - Different fields for accommodation vs. activities
  </Card>
</CardGroup>

### Creating Custom Fields

<Note>
  Only Admins and Owners have permission to create custom fields. Supervisors and Users cannot access this section.
</Note>

<AccordionGroup>
  <Accordion title="Adding a Custom Field" defaultOpen={true}>
    <Steps>
      <Step title="Navigate to Custom Fields">
        Go to Settings > Custom Fields (Admin/Owner access required)
      </Step>

      <Step title="Click Add Field">
        Click the "Add Custom Field" button
      </Step>

      <Step title="Select Entity Type">
        Choose where the field will be used:

        * **Contact** - For travellers, agents, supplier contacts
        * **Organization** - For travel agencies and suppliers
        * **Confirmed Journey Service** - For purchase orders sent to suppliers
      </Step>

      <Step title="Choose Subtype">
        Select specific subtype to target:

        * For Contacts: Choose contact subtype (Traveller, Agent, etc.)
        * For Organizations: Choose organization subtype (Travel Agency, Supplier)
        * For Purchase Orders: Select service category (Accommodation, Activities, etc.)
      </Step>

      <Step title="Select Field Type">
        Pick the appropriate field type for your data (Text, Numeric, Boolean, Date, Multi-Option, or Reference)
      </Step>

      <Step title="Configure Field">
        * Enter field name/label
        * Mark as required or optional
        * For Multi-Option: Add dropdown options
        * For Reference: Specify the entity to reference
      </Step>

      <Step title="Save">
        Click save to create the custom field - it now appears on the selected entity type
      </Step>
    </Steps>
  </Accordion>

  <Accordion title="Field Type Details" defaultOpen={false}>
    **TEXT**: Free-form text input for any string data

    * **Use for:** Names, descriptions, notes, IDs, addresses
    * **Example:** "Passport number", "Dietary restrictions", "Internal notes", "Preferred room type"
    * **Character limit:** Unlimited text

    **NUMERIC**: Numbers only (integers or decimals)

    * **Use for:** Quantities, measurements, counts, amounts
    * **Example:** "Group size", "Room number", "Age", "Net rate"
    * **Supports:** Whole numbers and decimals

    **BOOLEAN**: Yes/No checkbox

    * **Use for:** Binary options, flags, true/false conditions
    * **Example:** "VIP client", "Requires wheelchair access", "Vegetarian", "Confirmed"
    * **Display:** Checkbox (checked = yes, unchecked = no)

    **DATE**: Date picker

    * **Use for:** Dates, deadlines, anniversaries, expiry dates
    * **Example:** "Passport expiry date", "Contract expiry", "Anniversary date", "Date of birth"
    * **Format:** Standard date picker interface

    **MULTI\_OPTION**: Dropdown with predefined options

    * **Use for:** Categories, classifications, selections from fixed list
    * **Example:** "Industry type" (Finance, Tourism, Corporate), "Service tier" (Bronze, Silver, Gold), "Meal preference" (Vegetarian, Vegan, Pescatarian, Omnivore)
    * **Requires:** Define all dropdown options when creating field
    * **Selection:** Single selection from dropdown

    **REFERENCE**: Link to another entity in Odia

    * **Use for:** Relationships between entities, lookups
    * **Example:** Link service to a contact, reference another Journey, connect to specific organization
    * **Requires:** Specify which entity type to reference
    * **Advanced feature:** Creates data relationships
  </Accordion>

  <Accordion title="Subtypes and Targeting" defaultOpen={false}>
    **Custom fields can be scoped to specific subtypes within each entity:**

    **For Contacts:**

    * Target specific contact subtypes (e.g., "Traveller", "Travel Agent", "Supplier Contact")
    * Field only shows for contacts of that subtype
    * Example: "Passport number" field only for Traveller subtype
    * Different fields for different contact types

    **For Organizations:**

    * Target organization subtypes (e.g., "Travel Agency", "Supplier")
    * Scope fields to specific organization types
    * Example: "Commission rate" field only for Travel Agency subtype
    * "Net rate structure" field only for Supplier subtype

    **For Purchase Orders (Confirmed Journey Services):**

    * Target specific service categories (e.g., "Accommodation", "Transportation", "Activities")
    * Field only appears in purchase orders for services in that category
    * Example: "Room type" field only for Accommodation purchase orders
    * "Vehicle type" field only for Transportation purchase orders

    **Benefits of subtype targeting:**

    * Cleaner interfaces (only relevant fields show)
    * Category-specific data collection
    * Flexibility for different use cases
  </Accordion>

  <Accordion title="Custom Field Examples" defaultOpen={false}>
    **Common custom field use cases:**

    **For Travellers (Contact):**

    * Passport Number (Text)
    * Passport Expiry Date (Date)
    * Dietary Restrictions (Multi-Option: Vegetarian, Vegan, Halal, Kosher, None)
    * Wheelchair Accessible (Boolean)
    * Loyalty Program Number (Text)
    * Emergency Contact Name (Text)
    * Emergency Contact Phone (Text)

    **For Travel Agents (Contact):**

    * Agent ID (Text)
    * Preferred Contact Method (Multi-Option: Email, WhatsApp, Phone)
    * Languages Spoken (Text)
    * Specialization (Multi-Option: Luxury, Adventure, Family, Corporate)

    **For Suppliers (Organization):**

    * Net Rate Structure (Text)
    * Contract Expiry Date (Date)
    * Preferred Payment Terms (Multi-Option: Net 30, Net 60, Prepay, On Completion)
    * Supplier Tier (Multi-Option: Preferred, Standard, Backup)
    * Commission Rate (Numeric)

    **For Travel Agencies (Organization):**

    * Agency Tier (Multi-Option: Platinum, Gold, Silver)
    * Preferred Payment Terms (Text)
    * Marketing Fund Contribution (Numeric)

    **For Accommodation Purchase Orders:**

    * Room Type (Text)
    * Bed Configuration (Multi-Option: Twin, Double, King, Suite)
    * View Type (Multi-Option: Ocean, Garden, Mountain, City)
    * Floor Preference (Text)
    * Special Requests (Text)

    **For Activity Purchase Orders:**

    * Difficulty Level (Multi-Option: Easy, Moderate, Difficult, Extreme)
    * Activity Duration (Numeric - hours)
    * Minimum Age (Numeric)
    * Equipment Provided (Boolean)
  </Accordion>
</AccordionGroup>

### Managing Custom Fields

<CardGroup cols={2}>
  <Card title="Edit Fields" icon="pen-to-square">
    **Update existing custom fields:**

    * Change field name/label
    * Update dropdown options
    * Modify field settings
    * Mark as required/optional

    **Note:** Changing field type or entity type may affect existing data
  </Card>

  <Card title="Delete Fields" icon="trash">
    **Remove unused custom fields:**

    * Single delete (one field at a time)
    * Bulk delete (select multiple fields)
    * Data in deleted fields is lost

    **Use caution:** Deletion is permanent
  </Card>

  <Card title="View by Entity" icon="filter">
    **Filter custom fields by entity type:**

    * View only Contact fields
    * View only Organization fields
    * View only Purchase Order fields

    **Helps:** Find relevant fields quickly
  </Card>

  <Card title="Bulk Operations" icon="check-square">
    **Manage multiple fields at once:**

    * Select multiple fields with checkboxes
    * Bulk delete selected fields
    * Faster cleanup of unused fields
  </Card>
</CardGroup>

<Warning>
  **Custom fields apply to specific entity types and subtypes.** Make sure to select the correct combination when creating fields. Changing entity type or subtype later may affect existing data and is not recommended. Plan your custom fields carefully before creating them.
</Warning>

<Tip>
  **Start simple with custom fields.** Don't create too many fields upfront - add them as you identify the need. Too many custom fields can clutter interfaces and overwhelm users. Focus on truly necessary data that you'll consistently use.
</Tip>

## User Roles & Permissions

Understand and manage team access levels:

<Note>
  You can view and set user roles in the backoffice. Go to Settings > Team > Roles & Permissions to see the complete permissions matrix.
</Note>

<AccordionGroup>
  <Accordion title="Feature Access Breakdown" defaultOpen={true}>
    ### Service Management

    | Feature         | Owner | Admin | Supervisor | User |
    | --------------- | ----- | ----- | ---------- | ---- |
    | Create Services | ✓     | ✓     | ✓          | -    |
    | Edit Services   | ✓ All | ✓ All | ✓ All      | -    |
    | Delete Services | ✓     | ✓     | -          | -    |
    | Manage Tags     | ✓     | ✓     | -          | -    |
    | View Services   | ✓     | ✓     | ✓          | ✓    |

    ### Settings Access

    | Section           | Owner | Admin | Supervisor | User |
    | ----------------- | ----- | ----- | ---------- | ---- |
    | Manage Categories | ✓     | ✓     | -          | -    |
    | Manage Areas      | ✓     | ✓     | -          | -    |
    | Manage Currencies | ✓     | ✓     | -          | -    |
    | Custom Fields     | ✓     | ✓     | -          | -    |
    | Integrations      | ✓     | ✓     | -          | -    |
    | Branding          | ✓     | ✓     | -          | -    |
    | DateTime Settings | ✓     | ✓     | ✓          | ✓    |
    | Image Gallery     | ✓     | ✓     | ✓          | ✓    |

    ### CRM & Contacts

    | Feature              | Owner | Admin | Supervisor | User      |
    | -------------------- | ----- | ----- | ---------- | --------- |
    | Create Organizations | ✓     | ✓     | ✓          | ✓ Limited |
    | Edit Organizations   | ✓ All | ✓ All | ✓ All      | -         |
    | Create Contacts      | ✓     | ✓     | ✓          | ✓         |
    | Edit Contacts        | ✓ All | ✓ All | ✓ All      | ✓ Own     |

    ### Common Features (All Roles)

    * View services
    * Basic navigation
    * Message access (WhatsApp, Inbox)
    * Task management
    * View travellers
    * Basic Journey creation
    * View confirmed Journeys
  </Accordion>

  <Accordion title="Role Summary" defaultOpen={false}>
    **Quick reference for each role:**

    **Owner:**

    * Complete system control
    * Billing and subscription management
    * Can transfer ownership
    * All permissions

    **Admin:**

    * Configure all settings
    * Manage users and permissions
    * Create categories, areas, custom fields
    * Manage integrations
    * Cannot access billing

    **Supervisor:**

    * Create and edit services
    * Manage Journeys
    * Create suppliers and agencies
    * Limited settings access
    * Cannot manage users or critical settings

    **User:**

    * View and use services
    * Create Journeys (limited)
    * View own confirmed Journeys
    * Basic CRM access
    * No settings access
  </Accordion>
</AccordionGroup>

<Tip>
  **User roles are assigned during onboarding.** Contact your platform Owner or Admin for role modifications or permission changes. Only Owners and Admins can change user roles.
</Tip>

## Integrations

Connect Odia with external platforms:

<Note>
  Odia integrates with external platforms to streamline your workflows. Connect WhatsApp for messaging, inbox for email management, and AXUS for Journey distribution. Only Admins can configure integrations.
</Note>

### WhatsApp Integration

Connect WhatsApp Business for direct messaging with travellers, agents, and suppliers:

<CardGroup cols={2}>
  <Card title="WhatsApp Messaging" icon="message">
    **Direct communication:**

    * Message travellers about trips
    * Contact agents and suppliers
    * Group messaging
    * Real-time conversations
    * All messages tracked in Odia
  </Card>

  <Card title="Multi-Phone Support" icon="phone">
    **Multiple WhatsApp numbers:**

    * Connect multiple WhatsApp Business accounts
    * Switch between numbers
    * Team-based phone assignments
    * Separate lines for different purposes
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Connecting WhatsApp" defaultOpen={true}>
    <Steps>
      <Step title="Navigate to WhatsApp Settings">
        Go to Settings > General Settings and open the backoffice
      </Step>

      <Step title="Find WhatsApp Connection">
        Navigate to WhatsApp Connection section
      </Step>

      <Step title="Scan QR Code">
        Use WhatsApp on your phone to scan the QR code displayed
      </Step>

      <Step title="Authorize Connection">
        Confirm the connection on your WhatsApp Business account
      </Step>

      <Step title="Connection Confirmed">
        Your WhatsApp is now connected and ready to use in Odia
      </Step>
    </Steps>
  </Accordion>

  <Accordion title="WhatsApp Features" defaultOpen={false}>
    **What you can do with WhatsApp in Odia:**

    **Messaging:**

    * Send and receive messages
    * Share images and documents
    * Voice messages
    * Real-time chat

    **Context:**

    * See contact information in sidebar
    * Link WhatsApp contacts to CRM contacts
    * View traveller's confirmed Journeys while chatting
    * Access Journey history

    **Groups:**

    * Create WhatsApp groups for trips
    * Manage group participants
    * Group messaging for travel parties

    **Multiple phones:**

    * Connect multiple WhatsApp Business numbers
    * Switch between accounts
    * Team members can use different numbers
  </Accordion>

  <Accordion title="WhatsApp Message Customization" defaultOpen={false}>
    **Customize default duty messages for WhatsApp integration:**

    Organizations using WhatsApp can customize their default messages sent to suppliers and contacts.

    **How to configure:**

    1. Go to **Settings → Communications → WhatsApp**
    2. Configure your message templates:
       * **Intro message** - The opening text of your duty messages
       * **Closing message** - The sign-off text at the end
       * **Default recipient type** - Who receives messages by default

    **Dynamic placeholders:**

    * Use `{{RECIPIENT_NAME}}` in your intro to automatically insert the recipient's name
    * Placeholders are replaced with actual values when messages are sent

    **Live preview:**

    * A preview panel shows exactly how your message will appear
    * Test your templates before saving

    **Use cases:**

    * Professional, branded supplier communications
    * Consistent messaging across all team members
    * Personalized greetings with recipient names
  </Accordion>

  <Accordion title="Managing Connections" defaultOpen={false}>
    **Connection management:**

    **View status:**

    * See which phones are connected
    * Check connection status
    * View phone numbers

    **Disconnect:**

    * Click disconnect for specific phone
    * Immediately revokes access
    * Can reconnect anytime

    **Multiple connections:**

    * Add up to 5 WhatsApp Business accounts
    * Each team member can use different number
    * Switch between numbers when messaging
  </Accordion>
</AccordionGroup>

### Inbox Integration

Connect your email for centralized communication:

<CardGroup cols={2}>
  <Card title="Email Management" icon="envelope">
    **Centralized inbox:**

    * Manage all emails in Odia
    * Track communication history
    * Link emails to Journeys/confirmed Journeys
    * Team collaboration on emails
  </Card>

  <Card title="Email Tracking" icon="chart-line">
    **Track engagement:**

    * See when emails are opened
    * Track link clicks
    * Delivery status
    * Response tracking
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Connecting Inbox" defaultOpen={true}>
    **Connect your email account to Odia:**

    Navigate to Settings > Integrations > Inbox for connection instructions and setup.

    **Benefits:**

    * All Journey emails tracked
    * Team visibility into communications
    * Linked to relevant trips
    * Complete audit trail
  </Accordion>
</AccordionGroup>

### AXUS Integration

Push confirmed Journeys to AXUS Travel platform:

<CardGroup cols={2}>
  <Card title="Confirmed Journey Distribution" icon="share">
    **Push to AXUS:**

    * Send confirmed Journeys to AXUS platform
    * Wider distribution channel
    * Standardized format
    * Track push history
  </Card>

  <Card title="Category Mapping" icon="arrows-left-right">
    **Map your categories:**

    * Odia categories → AXUS reservation types
    * Required for data sync
    * Configure once, use always
    * Update as needed
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="AXUS Setup" defaultOpen={true}>
    **AXUS integration has three configuration areas:**

    **1. Credentials Tab**

    <Steps>
      <Step title="Navigate to AXUS Settings">
        Go to Settings > Integrations > AXUS
      </Step>

      <Step title="Enter Credentials">
        Input your AXUS API username and password provided by AXUS
      </Step>

      <Step title="Save Credentials">
        Credentials are encrypted and stored securely
      </Step>
    </Steps>

    **2. Category Mapping Tab**

    * Map each Odia service category to an AXUS reservation type
    * Required for proper data synchronization
    * Unmapped categories cannot be pushed to AXUS
    * Click on each category to select the corresponding AXUS type

    **3. History Tab**

    * View all confirmed Journeys pushed to AXUS
    * See push timestamps and status
    * Track successful and failed pushes
    * Review push details
  </Accordion>

  <Accordion title="Pushing Confirmed Journeys" defaultOpen={false}>
    **Once AXUS is configured:**

    <Steps>
      <Step title="Open Confirmed Journey">
        Open the confirmed Journey you want to push
      </Step>

      <Step title="Click Push to AXUS">
        Click the "Push to AXUS" button in the Journey header
      </Step>

      <Step title="Review Pre-Push Summary">
        Review summary showing:

        * Total services in the Journey
        * Mapped services (can be pushed)
        * Unmapped services (need category mapping)
      </Step>

      <Step title="Confirm and Push">
        Confirm to send the Journey to AXUS
      </Step>

      <Step title="Track Status">
        Monitor push status in Settings > Integrations > AXUS > History
      </Step>
    </Steps>
  </Accordion>

  <Accordion title="Category Mapping Importance" defaultOpen={false}>
    **Why mapping matters:**

    * AXUS requires specific reservation type codes
    * Each Odia category must map to an AXUS type
    * Services with unmapped categories are excluded from push
    * Proper mapping ensures data accuracy in AXUS

    **Common Mappings:**

    * Accommodation → Hotel/Resort
    * Transportation → Transfer/Car Rental
    * Activities → Tour/Activity
    * Dining → Restaurant
    * Tours & Guides → Guided Tour

    **Best practice:** Map all your categories before pushing any confirmed Journeys to avoid incomplete data transfer.
  </Accordion>
</AccordionGroup>

<Warning>
  **Ensure all service categories are mapped before pushing confirmed Journeys to AXUS.** Unmapped services will be excluded from the push, resulting in incomplete Journey data in AXUS.
</Warning>

## Communications

Configure communication templates and settings:

<Note>
  Configure communication templates and settings for purchase orders and emails sent from Odia. Customize which fields are mandatory for purchase orders by service category.
</Note>

### Purchase Order Settings

<CardGroup cols={2}>
  <Card title="Email Configuration" icon="envelope">
    **Set default email addresses:**

    * From address for purchase orders
    * BCC address for all POs
    * Reply-to address for supplier responses

    **Navigate to:** Settings > Communications > Purchase Orders > Settings Tab
  </Card>

  <Card title="Per-Category Fields" icon="list-check">
    **Customize mandatory fields:**

    * Different fields per service category
    * Mark which fields are mandatory
    * Accommodation vs. Activities can require different data

    **Navigate to:** Settings > Communications > Purchase Orders > Fields Tab
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Email Settings" defaultOpen={true}>
    **Configure default email settings for purchase orders:**

    | Field    | Description                        | Default                                     |
    | -------- | ---------------------------------- | ------------------------------------------- |
    | From     | Sender email address               | [noreply@odia.app](mailto:noreply@odia.app) |
    | BCC      | Blind copy email for all POs       | Empty                                       |
    | Reply-To | Email address for supplier replies | Your organization email                     |

    **Navigate to:** Settings > Communications > Purchase Orders > Settings Tab

    **Why configure:**

    * Consistent sender address across all POs
    * BCC yourself or accounting for record-keeping
    * Ensure supplier replies go to right person/department
  </Accordion>

  <Accordion title="Category-Specific Fields" defaultOpen={false}>
    **Customize which fields are mandatory in purchase orders per service category:**

    <Steps>
      <Step title="Select Category">
        Choose a service category from the dropdown (e.g., Accommodation, Activities, Transportation)
      </Step>

      <Step title="Mark Mandatory Fields">
        Use checkboxes to select which fields should be marked as "Mandatory" in purchase orders for this category
      </Step>

      <Step title="Review Field Sections">
        Fields are organized into sections:

        * **Confirmed Journey Service Fields** - Standard service data (dates, times, location)
        * **Custom Fields** - Your organization's custom fields (if configured)
        * **Primary Traveller Fields** - Traveller information
      </Step>

      <Step title="Save Configuration">
        Click "Save Configuration" before switching to another category to preserve changes
      </Step>
    </Steps>

    **How it Works:**

    * Checked fields appear with an orange "Mandatory" badge in purchase orders
    * Different categories can have different mandatory field requirements
    * Each field shows its type icon (text, date, number, etc.)

    **Benefits:**

    * Accommodation POs can require different fields than Transportation POs
    * Ensure suppliers receive all necessary information
    * Customize mandatory requirements per service type
    * Reduce back-and-forth communication with suppliers

    **Example:** Accommodation services might require "Check-in time", "Room type", and "Meal plan" as mandatory, while Activity services require "Pickup time", "Difficulty level", and "Minimum age".
  </Accordion>

  <Accordion title="Unsaved Changes Warning" defaultOpen={false}>
    **The system warns you if you try to switch categories with unsaved changes.**

    Always save your field configuration before changing categories to avoid losing work. Each category has its own mandatory field configuration.
  </Accordion>
</AccordionGroup>

<Tip>
  **Customize PO fields per category** to ensure suppliers receive exactly the information they need, reducing back-and-forth communication and improving booking efficiency.
</Tip>

### Purchase Order Reminder Settings

Configure which fields to include when sending purchase order reminders to suppliers.

<AccordionGroup>
  <Accordion title="Reminder Field Configuration" defaultOpen={true}>
    **Choose which fields appear in PO reminders:**

    When you send reminder emails to suppliers about outstanding purchase orders, you can control which information is included.

    **How to configure:**

    1. Go to **Settings → Communications → Purchase Orders → Reminder Fields**
    2. Select which fields should be included in reminder emails
    3. Toggle fields on/off based on what suppliers need to see

    **Available fields:**

    * Service details (dates, times, locations)
    * Guest information (names, counts)
    * Special requirements and notes
    * Custom fields configured for your organization

    **Benefits:**

    * Ensure suppliers receive all necessary information
    * Reduce follow-up questions
    * Maintain consistent reminder content across your team
  </Accordion>
</AccordionGroup>

### Invoice Settings

Configure invoice defaults, payment instructions, and line item descriptions.

<AccordionGroup>
  <Accordion title="Payment Instruction Profiles" defaultOpen={true}>
    Save the payment wording your team reuses on invoices.

    1. Go to **Settings → Organization → General Settings**.
    2. Open **Invoicing**, then select **Payment Instructions**.
    3. Select **Add payment instructions**.
    4. Name the profile and enter the details exactly as they should appear to the client.
    5. Set the profile as the default if it should be selected automatically on new invoices.
    6. Select **Save Changes**.

    You can keep up to ten profiles, reorder them, and edit or delete them. A default moves to the next available profile if it is deleted.

    <Note>
      Profiles are selectable payment text, not connected bank accounts. Updating a profile can affect drafts using it; it does not rewrite instructions already frozen on an issued invoice.
    </Note>

    See [Payment Instructions](/features/invoices#payment-instructions) for the complete setup and invoice workflow.
  </Accordion>

  <Accordion title="Line Item Description Defaults" defaultOpen={true}>
    **Set default descriptions for invoice line items:**

    Configure default text that automatically populates when creating new invoice line items.

    **How to configure:**

    1. Go to **Settings → Invoices** (or **Settings → Financial → Invoice Settings**)
    2. Find the **Line Item Defaults** section
    3. Enter your preferred default description text
    4. Save changes

    **How it works:**

    * When you add a new line item to an invoice, the description field auto-populates with your default text
    * You can still edit the description for individual line items
    * Useful for standardizing invoice terminology across your organization

    **Use cases:**

    * Consistent service descriptions across all invoices
    * Pre-filled terms or conditions per line item
    * Standard formatting for professional invoices
  </Accordion>
</AccordionGroup>

### Email Configuration

<AccordionGroup>
  <Accordion title="Email Settings Overview" defaultOpen={true}>
    **Configure email sending parameters and templates:**

    Navigate to Settings > Communications > Email Configuration to set up:

    * Email templates
    * Signature settings
    * Default sending parameters
    * SMTP configuration (if needed)

    **Use for:** Standardizing communications with travellers, agents, and suppliers.
  </Accordion>
</AccordionGroup>

## Commission Tier System

Manage tiered commission structures for travel agents and agencies.

### Overview

Commission tiers allow you to set different commission rates based on:

* Sales volume
* Agent performance
* Partnership level
* Custom criteria

<CardGroup cols={2}>
  <Card title="Create Tiers" icon="layer-group">
    Define multiple commission levels with custom rates
  </Card>

  <Card title="Assign Agents" icon="user-tag">
    Assign agents to appropriate tiers
  </Card>

  <Card title="Auto-Calculate" icon="calculator">
    Prices automatically adjust based on agent tier
  </Card>

  <Card title="Track Performance" icon="chart-line">
    Monitor agent earnings by tier
  </Card>
</CardGroup>

### Creating Commission Tiers

<Steps>
  <Step title="Navigate to Settings">
    Go to **Settings** → **Financial** → **Commission Tiers**
  </Step>

  <Step title="Add New Tier">
    Click **Add Commission Tier** button
  </Step>

  <Step title="Configure Tier">
    Enter:

    * **Tier Name** (e.g., "Gold Partner", "Standard Agent")
    * **Commission Rate** (percentage)
    * **Description** (optional)
  </Step>

  <Step title="Set as Default">
    Toggle **Default Tier** if this should apply to new agents
  </Step>

  <Step title="Save Tier">
    Click **Create** to save the commission tier
  </Step>
</Steps>

### Assigning Tiers to Agents

<Steps>
  <Step title="Open Agent Profile">
    Navigate to **Travel Agents** and select an agent
  </Step>

  <Step title="Edit Commission">
    In the agent sidebar, find **Commission Tier** section
  </Step>

  <Step title="Select Tier">
    Choose from available commission tiers
  </Step>

  <Step title="Save Changes">
    Commission tier is immediately applied to new Journeys
  </Step>
</Steps>

<Note>
  Changing an agent's tier only affects new Journeys. Existing Journeys retain their original commission rate.
</Note>

### Managing Tiers

**Edit Tier:**

* Click the **⋮** menu next to any tier
* Select **Edit** to modify name or rate
* Changes apply to new Journeys only

**Delete Tier:**

* Click **⋮** → **Delete**
* System checks if tier is in use
* Cannot delete tiers assigned to agents

**Set Default:**

* Click **⋮** → **Set as Default**
* New agents automatically receive this tier

<Warning>
  Deleting or modifying commission tiers does not affect existing Journeys. Only new Journeys will use the updated rates.
</Warning>

## Pricing Rules & Markups

Markups are what tell Odia how to calculate a selling price from a supplier cost. Once markups are configured, the **pricing dialog** on Journeys operates in **formula mode** — enter a cost and the dialog automatically calculates the selling price, showing a step-by-step breakdown including FX conversion, the markup multiplier, and travel agent commission.

### Global Markups

Set default markup percentages that apply across all services:

<Steps>
  <Step title="Access Markups">
    Go to **Settings** → **Financial** → **Pricing Rules** → **Markups** tab
  </Step>

  <Step title="Add Markup">
    Click **Add Global Markup**
  </Step>

  <Step title="Configure Markup">
    Enter:

    * **Name** (e.g., "Standard Markup", "Peak Season")
    * **Percentage** (e.g., 15%)
    * **Description**
  </Step>

  <Step title="Set as Default">
    Toggle **Default Markup** to apply automatically. The pricing dialog pre-selects this markup whenever you open pricing for a service that has no more specific markup configured.
  </Step>
</Steps>

### Category Markups

Override global markups for specific service categories:

<Steps>
  <Step title="Select Category">
    In the **Markups** tab, find the category (e.g., "Hotels", "Tours")
  </Step>

  <Step title="Add Category Markup">
    Click **Add Markup** for that category
  </Step>

  <Step title="Set Percentage">
    Enter markup percentage specific to this category
  </Step>

  <Step title="Set as Default">
    Toggle to make this the default for the category
  </Step>
</Steps>

<Tip>
  Category markups override global markups. Use this for categories with different profit margins (e.g., lower markup on hotels, higher on tours).
</Tip>

### Markup Hierarchy

Markups are applied in this order (highest priority first):

1. **Service-level markup** — selected in the pricing dialog for an individual service
2. **Category markup** — the default markup assigned to that service category
3. **Global markup** — the tenant-wide default markup (the one marked as Default in the Markups tab)

<Note>
  The system always uses the most specific markup available. When you open the pricing dialog for a service, the pre-selected markup comes from the highest-priority level that has a default configured. You can change it per service at any time.
</Note>

## Team Access & User Management

Manage team members and their access levels:

<Note>
  Odia supports four user roles with different permission levels: Owner, Admin, Supervisor, and User. Manage team members and their access levels in Settings > Team Access.
</Note>

<CardGroup cols={2}>
  <Card title="User Roles" icon="users-gear">
    **Four hierarchical roles:**

    * **Owner** - Full control including billing
    * **Admin** - Administrative access, all settings
    * **Supervisor** - Operational access, limited settings
    * **User** - Basic access, no settings
  </Card>

  <Card title="Permissions Matrix" icon="table">
    **Granular permissions by category:**

    * Service Management
    * Settings Access
    * CRM & Contacts
    * Financial features
    * Journeys
  </Card>
</CardGroup>

### User Roles

<AccordionGroup>
  <Accordion title="Role Definitions" defaultOpen={true}>
    **Owner**

    * Full system control - Only one Owner per organization
    * Transfer ownership to another user
    * All permissions of Admin role
    * Complete access to all features and settings

    **Admin**

    * **Settings & Configuration:**
      * Configure all settings (categories, areas, branding, custom fields, purchase orders)
      * Manage users and assign roles
      * Access all financial settings
    * **Operations:**
      * Create and edit services
      * Create Journeys
      * Create and manage suppliers, travel agencies, and all contacts
      * Send purchase orders
      * View all organization data

    **Supervisor**

    * **Content Management:**
      * Create and edit services
      * Create Journeys
      * Create and manage suppliers, travel agencies, and all contacts
      * Send purchase orders
    * **Limitations:**
      * Cannot manage users or assign roles
      * Cannot configure organization settings

    **User**

    * **What Users can do:**
      * View services (cannot create or edit)
      * Create Journeys
      * Create and manage suppliers, travel agencies, and all contacts
      * Send purchase orders
    * **Limitations:**
      * Cannot create or edit services
      * Cannot manage users or assign roles
      * Cannot configure organization settings
  </Accordion>

  <Accordion title="Assigning Roles" defaultOpen={false}>
    **How to change user roles:**

    <Steps>
      <Step title="Navigate to User Management">
        Go to Settings > Team Access > User Management (Admin access required)
      </Step>

      <Step title="View Users">
        See all team members in the Roles & Permissions tab
      </Step>

      <Step title="Change Role">
        Click on user and select new role from dropdown
      </Step>

      <Step title="Confirm">
        Changes take effect immediately - user sees new permissions on next login
      </Step>
    </Steps>

    **Who can change roles:** Only Owners and Admins can modify user roles.
  </Accordion>

  <Accordion title="Permissions by Category" defaultOpen={false}>
    **The User Management page shows a permissions matrix organized by category:**

    **Service Management**

    * Create/Edit Services
    * Delete Services
    * Manage Tags
    * View Services

    **Settings Access**

    * Categories & Areas
    * Currencies
    * Branding
    * Custom Fields
    * Integrations
    * Team Management

    **CRM & Contacts**

    * Create Organizations (Suppliers, Agencies)
    * Edit Organizations
    * Create Contacts
    * Edit Contacts
    * View All vs Own Only

    **Financial**

    * View Invoices
    * Create Invoices
    * Manage Pricing

    **Journeys**

    * Create Journeys
    * Edit Journeys
    * Confirm Journeys
    * View All vs Own Only

    Each permission shows ✓ (has access) or - (no access) for each role level.
  </Accordion>
</AccordionGroup>

<Warning>
  **Only Owners and Admins can manage user roles.** Be careful when assigning Admin role as it grants extensive system access including settings configuration and user management.
</Warning>

### Adding Team Members

<AccordionGroup>
  <Accordion title="How to Add Team Members" defaultOpen={true}>
    **To add new team members to your Odia organization:**

    <Steps>
      <Step title="User Signs Up">
        New team member must sign up at [odia.app](https://odia.app) using their work email
      </Step>

      <Step title="Email Domain Matching">
        If their email domain matches your organization's domain, they'll automatically be added to your organization
      </Step>

      <Step title="Admin Assigns Role">
        Admins can then assign appropriate role (Admin, Supervisor, or User)
      </Step>

      <Step title="User Receives Access">
        User can now log in with their assigned permissions
      </Step>
    </Steps>

    **Email domain matching:** Users with emails like `sarah@yourcompany.com` automatically join the organization registered under `yourcompany.com`.
  </Accordion>

  <Accordion title="Onboarding New Users" defaultOpen={false}>
    **Best practices for adding team members:**

    **Before they join:**

    * Decide their role based on responsibilities
    * Ensure email domain matches organization
    * Plan their training and access needs

    **After they join:**

    * Assign appropriate role immediately
    * Provide onboarding documentation
    * Set up their preferences (timezone, date format)
    * Assign initial tasks or Journeys as needed

    **Role selection guidelines:**

    * **User** - Operations team, junior staff
    * **Supervisor** - Senior operations, team leads
    * **Admin** - Management, IT, senior leadership
    * **Owner** - Typically company owner or managing director
  </Accordion>
</AccordionGroup>

## Best Practices

Optimize your settings configuration:

<CardGroup cols={2}>
  <Card title="Setup Guidelines" icon="list-check">
    **Initial setup priorities:**

    * Start with essential categories (Accommodation, Activities, Transportation)
    * Use consistent naming conventions
    * Add destinations where you actually operate
    * Configure branding early
    * Map all categories if using AXUS

    **Ongoing:**

    * Regular maintenance and review
    * Update as services expand
    * Clean up unused items
  </Card>

  <Card title="Security" icon="shield-check">
    **Access control best practices:**

    * Regular permission reviews (quarterly)
    * Role-appropriate access only
    * Audit user activities
    * Limit Admin access to necessary personnel
    * Remove access for departed team members

    **Data protection:**

    * Secure integration credentials
    * Monitor system access logs
  </Card>
</CardGroup>

<AccordionGroup>
  <Accordion title="Configuration Strategy" defaultOpen={true}>
    **Effective settings management:**

    **Start simple:**

    * Don't create every possible category upfront
    * Add categories when you have 10+ services for them
    * Begin with destinations you actively serve
    * Expand as business grows

    **Consistency matters:**

    * Use standard naming conventions
    * Be consistent with terminology (remember: areas appear on confirmed Journeys)
    * Document decisions in team guidelines
    * Train team on standard practices

    **Regular maintenance:**

    * Review categories and areas quarterly
    * Remove unused items
    * Update branding as company evolves
    * Review custom fields for relevance
    * Check integration status monthly
  </Accordion>

  <Accordion title="Custom Fields Planning" defaultOpen={false}>
    **Before creating custom fields:**

    **Identify needs:**

    * What data do you repeatedly add to notes?
    * What information is critical for operations?
    * Which fields would improve reporting?

    **Plan structure:**

    * Choose appropriate field types
    * Decide on required vs. optional
    * Consider subtypes for targeting
    * Test with sample data first

    **Avoid over-customization:**

    * Too many fields overwhelm users
    * Start with 3-5 essential fields per entity
    * Add more only when proven necessary
    * Review usage after 3 months
  </Accordion>

  <Accordion title="Integration Best Practices" defaultOpen={false}>
    **WhatsApp integration:**

    * Connect early for immediate messaging capability
    * Test with team messages first
    * Train team on WhatsApp features
    * Use appropriate number for customer-facing communications

    **Inbox integration:**

    * Connect all team email accounts
    * Ensure team understands email tracking
    * Review communication history regularly
    * Use for Journey communications

    **AXUS integration:**

    * Complete category mapping before first push
    * Test with one Journey first
    * Document mapping decisions
    * Review push history regularly
    * Update mappings as you add categories

    **General:**

    * Only connect integrations you'll actively use
    * Secure credentials carefully
    * Document integration workflows
    * Train team on integration features
  </Accordion>

  <Accordion title="Team Management" defaultOpen={false}>
    **Role assignment strategy:**

    **Principle of least privilege:**

    * Assign minimum necessary access
    * Users don't need Admin access for daily work
    * Reserve Admin for leadership and IT
    * Most team members should be Users or Supervisors

    **Regular reviews:**

    * Quarterly access reviews
    * Remove departed team members immediately
    * Adjust roles as responsibilities change
    * Document role assignment decisions

    **Training by role:**

    * Train users on features they can access
    * Provide role-specific documentation
    * Clear escalation paths for access needs
    * Regular refresher training
  </Accordion>
</AccordionGroup>

## Common Questions

<AccordionGroup>
  <Accordion title="Who can access Settings?" defaultOpen={false}>
    **Settings access varies by section:**

    **Admin-only sections:**

    * Categories and Areas
    * Custom Fields
    * Currencies
    * Branding
    * Integrations (WhatsApp, Inbox, AXUS)
    * Team Management
    * Purchase Order configuration

    **All users can access:**

    * Personal date/time preferences
    * Image gallery (view and search)

    **Supervisors can access:**

    * Date/time settings
    * Image gallery

    **Why restricted:** Critical settings affect entire organization and data structure. Limiting access prevents accidental changes that could impact all users.
  </Accordion>

  <Accordion title="Can I delete a category that has services?" defaultOpen={false}>
    **No, you cannot directly delete a category with associated services.**

    **To delete a category with services:**

    1. Go to Services section
    2. Filter by the category you want to delete
    3. Edit each service one by one
    4. Change to a different category
    5. Once no services use the category, delete it from Settings

    **Alternative:** Edit the category and rename it if you want all services to adopt the new category name (keeps associations intact).

    **Why this restriction:** Prevents orphaned services and maintains data integrity.
  </Accordion>

  <Accordion title="Can I delete an area that has services?" defaultOpen={false}>
    **No, you cannot directly delete an area with associated services.**

    **To delete an area with services:**

    1. Go to Services section
    2. Filter by the area you want to delete
    3. Edit each service one by one
    4. Change to a different area
    5. Once no services use the area, delete it from Settings

    **Alternative:** Edit the area and rename it if you want all services to adopt the new area name (keeps associations intact).

    **Why this restriction:** Prevents orphaned services and maintains data integrity. Areas are also used for supplier filtering and appear on confirmed Journeys that travellers see.
  </Accordion>

  <Accordion title="What happens to existing data if I delete a custom field?" defaultOpen={false}>
    **Deleting a custom field permanently removes all data in that field.**

    **What gets deleted:**

    * All values stored in that field across all records
    * Field configuration
    * Field visibility

    **Cannot be undone:** Deletion is permanent. There's no way to recover the data.

    **Before deleting:**

    * Export data if you need to keep it
    * Confirm the field is truly unused
    * Check with team that no one needs the data
    * Consider hiding the field instead (mark as optional, don't require)

    **Best practice:** Be very cautious when deleting custom fields. Consult team first.
  </Accordion>

  <Accordion title="Can I change a custom field's entity type after creation?" defaultOpen={false}>
    **No, you cannot change a custom field's entity type after creation.**

    **What you CAN change:**

    * Field name/label
    * Required vs. optional status
    * Dropdown options (for Multi-Option fields)
    * Field visibility settings

    **What you CANNOT change:**

    * Entity type (Contact, Organization, or Purchase Orders)
    * Subtype targeting
    * Field type (Text, Numeric, Boolean, etc.)

    **If you need to change these:**

    1. Create a new custom field with correct settings
    2. Manually migrate data if needed
    3. Delete old field

    **Why:** Changing these would break data relationships and potentially corrupt existing data.
  </Accordion>

  <Accordion title="How do I disconnect an integration?" defaultOpen={false}>
    **To disconnect WhatsApp, Inbox, or AXUS:**

    **WhatsApp:**

    1. Go to Settings > General Settings > Backoffice
    2. Navigate to WhatsApp Connection
    3. Click "Disconnect" for specific phone number
    4. Confirm disconnection
    5. Connection is immediately revoked

    **Inbox:**

    1. Go to Settings > Integrations > Inbox
    2. Click "Disconnect" button
    3. Confirm disconnection
    4. Email integration disabled

    **AXUS:**

    1. Go to Settings > Integrations > AXUS
    2. Delete stored credentials
    3. Integration is disabled

    **What happens:**

    * Existing synced data remains unchanged
    * No new data will sync
    * You can reconnect later without data loss
    * Historical records are preserved

    **Only Admins can disconnect integrations.**
  </Accordion>

  <Accordion title="Can multiple users have the Owner role?" defaultOpen={false}>
    **No, only one user can be the Owner.**

    **Owner is unique:**

    * One Owner per organization
    * Has access to billing and subscriptions
    * Can transfer ownership to another user
    * All Admin permissions plus organization-level controls

    **Transfer ownership:**

    * Current Owner can transfer to another team member
    * Process is found in Settings > Team > Ownership Transfer
    * Previous Owner becomes Admin after transfer

    **For multiple admins:** Use the Admin role, which has nearly all permissions except billing access.
  </Accordion>

  <Accordion title="Why can't I change currency on individual services in Journeys?" defaultOpen={false}>
    **You CAN change currency per service!**

    **How it works:**

    * Journey has a default currency
    * Each service inherits that currency by default
    * You can change currency on individual services if needed

    **Example:** Journey in EUR, but you can set a specific service to USD if that supplier quotes in USD.

    **Where to change:**

    * Open the service in the Journey
    * Edit the service details
    * Change the currency dropdown for that service
  </Accordion>

  <Accordion title="Do travellers see the area names I set?" defaultOpen={false}>
    **Yes! Areas appear on Journeys that travellers see.**

    **Where areas appear:**

    * Journey summaries showing destinations
    * Confirmed Journey day headers
    * Service location details
    * Trip overview sections

    **What this means:**

    * Use recognizable, traveller-friendly names
    * "Paris" not "Paris Admin Region"
    * "Bangkok" not "BKK"
    * Spell correctly - travellers will see these

    **Best practice:** Think of areas as destination names that will be shown to your clients. Use names they'll recognize and understand.
  </Accordion>
</AccordionGroup>

## Related Documentation

* [Services](/features/services) - Using categories and areas for service organization
* [Suppliers](/features/suppliers) - How categories and areas help organize suppliers
* [Custom Fields](/features/custom-fields) - Detailed guide on using custom fields throughout Odia
* [Team Management](/features/team) - Complete guide to user roles and permissions
* [Integrations](/features/integrations) - Deep dive on WhatsApp, Inbox, and AXUS integrations

***

## Summary

Settings is your control center for configuring Odia to match your operations. Focus on these initial priorities:

1. **Create service categories** for organizing your offerings
2. **Add destinations (areas)** where you provide services - remember these appear on confirmed Journeys!
3. **Upload your logo** and configure branding
4. **Set up custom fields** for organization-specific data tracking (especially useful for purchase orders)
5. **Configure integrations** (WhatsApp for messaging, Inbox for email, AXUS if needed)
6. **Manage team access** with appropriate roles

Most settings require Admin access. Regular maintenance keeps your workspace organized and efficient.
