Skip to main content

What is the Library?

The Library is your complete service inventory - everything you can offer to travelers. A service is any bookable item you add to a trip, such as:
  • Accommodations (hotels, lodges, resorts)
  • Tours and activities
  • Transportation (transfers, car rentals, flights)
  • Meals and dining experiences
  • Guides and escorts
  • Any other bookable offerings
Alternative name: The Library may also be referred to as “Services” in some contexts.

Quick Answers

Click Library in the main navigation menu. All users can view services, but only Supervisors and Admins can create or edit them.
Only Supervisors and Admins can create or edit services. Regular Users can view and add services to Journeys but cannot modify the master service inventory.
Use the search bar to search by service title, or use filters: Category (service type), Country, Area (location), or Tags (attributes). You can combine multiple filters simultaneously.
Categories are broad service types (Accommodation, Activity, Transport) - each service has one category. Tags are flexible labels for detailed attributes (luxury, budget, family-friendly) - services can have multiple tags.
No. When you add a service to a Journey, it creates a copy. Editing the master service only affects future uses, not existing Journeys.
Content Cards are information blocks for travel tips, cultural insights, safety information, and other non-service content. Create them in Library → Content Cards tab, then add them to Journeys. Unlike services, editing a content card WILL update it in all Journeys where it’s used.

Create Services

Add services from the Library screen or while building a Journey. Permission required: Only Supervisors and Admins can create services.

Manage Inventory

Organize services with categories (e.g., “Accommodation”, “Activity”), areas (geographic locations), and tags for easy filtering and search.

Creating a Service

1

Access Service Creation

Two ways to create:
  • From Library screen: Click the New Service button in the top right
  • From Journey: Click ‘Add Service’ then ‘Create New Service’
2

Add Basic Information

Required fields:
  • Title - The service name, used for searching and display
  • Category - Primary classification (e.g., “Accommodation”, “Transport”, “Activity”). The service can’t be created without one.
Recommended fields:
  • Areas (optional but recommended) - One or more locations where the service is offered (e.g., “Cape Town”, “Serengeti”)
3

Enhance Description

Add optional details:
  • Headline - Short, attention-grabbing statement (shows in Journeys)
  • Description - Detailed service information (visible to clients). Use the AI button to generate or enhance descriptions automatically.
  • Default Trip Service Terms - Terms and conditions for this service, just below the description. Carries to every Journey the service is added to, and can be edited per-trip there. If set, travellers see a small T&C link on the service card that opens the full terms in a dialog.
  • Internal Notes - Team-only information (never visible to clients)
4

Add Visual Content

Add images from three sources:
  • Unsplash integration - Search and add high-quality stock images directly
  • Odia Gallery - Access all images previously uploaded to your Odia workspace
  • Your computer - Upload new images directly from your device
Set the primary display image by selecting it (it will appear first in Journeys).

Variants

A service can have variants—different versions with their own title, description, images, and price. Create them from the parent service’s Variants tab, then add the complete choice to a Journey.
A variant without its own address inherits the parent service’s default address automatically.

Service Variants Guide

Learn what a variant is for and how to create one.

Default Add-ons

Set up add-ons once on a Library service so they’re offered automatically every time that service is added to a new Journey — you don’t need to re-attach them Journey by Journey.
1

Open the Add-ons tab

Open the Library service and select its Add-ons tab.
2

Add default add-ons

Select Add default add-ons and choose one or more services to offer alongside this one.
3

Arrange the order

Drag an add-on by its handle to reorder the list — this is the order travellers see them in.
Default add-ons only apply when this service is newly added to a Journey. Adding them here doesn’t retroactively add them to a service already sitting on an existing Journey.
See Journey Builder for how add-ons behave once they’re on a Journey — mandatory/optional, pricing, and removing one.

Templates And Bundles

Reuse a set of services across Journeys instead of adding them one by one. Both are created from Library → Templates & Bundles.

Templates

A repeatable starting point. Services are added to a Journey as independent copies you can freely edit, move, or remove.

Bundles

A package that should stay together. Services are added to a Journey as one group with a combined client-facing card.
See the Templates and Bundles guides for what each is for and how to create one, and the Journey Builder guide for how to add and use them on a Journey.

AI-Powered Descriptions (Odi•Assist)

Use Odi•Assist, your AI-powered writing assistant, to generate and enhance service descriptions automatically. This feature helps you create compelling, professional descriptions for luxury travel services.

How to Use AI Descriptions

1

Click the AI Button

In the description editor, click the AI button (colorful gradient button) to open Odi•Assist
2

Choose an Action

Select from quick actions:
  • Custom prompt - Write your own instructions
  • Translate to English/French/Spanish - Translate existing content
  • Make more descriptive & luxurious - Enhance with sensory details
  • Shorten while keeping key details - Create concise copy
  • Expand with more details - Add more information
  • Complete rewrite from scratch - Generate entirely new content
3

Review Credit Cost

Check the credit estimate when it appears in the AI window. Open your profile menu to check your balance before continuing.
4

Generate and Review

Click Generate and watch the content stream in. Review and edit the AI-generated text as needed to add your personal touch.
AI Credits: AI descriptions use your organization’s shared credits. Check the estimate when one is shown before generating. Stopping can still use credits for work already done. See AI Credits for your balance and packages.

Where AI Descriptions Are Available

The AI button appears in description editors across Odia:
  • Library - When creating or editing services
  • Journeys - When customizing service descriptions for a Journey
  • Confirmed Journeys - When editing operational service details
  • Content Cards - When creating information cards
Pro tip: Use the “Make more descriptive & luxurious” option to transform basic service details into compelling copy that resonates with luxury travelers.

Service Components

Essential Fields

Add unlimited photos to your service using three methods:
  1. Unsplash Integration: Search Unsplash’s library and add professional stock images
  2. Odia Gallery: Browse and select from all images already uploaded to your workspace
  3. Custom Upload: Upload new images directly from your computer
Image ordering: The first selected image becomes the primary image displayed in Journeys. Drag to reorder images.
Tags help you organize and filter services internally:
  • Add multiple tags per service (e.g., “luxury”, “family-friendly”, “adventure”)
  • Tags are not visible to clients - they’re for internal organization only
  • Use tags for detailed categorization beyond categories and areas
Creating tags: Tags are created inline while adding them to services - there’s no separate “Create Tag” page:
  1. Open a service and find the Tags field
  2. Type the tag name you want (e.g., “safari”)
  3. If it doesn’t exist, click “Add [name] as a new tag”
  4. The tag is created and automatically applied to the service
Managing tags:
  • View and delete existing tags in Settings > Content Management > Tags
  • See usage counts to identify unused tags
  • Bulk delete tags you no longer need
Suppliers:
  • Link services to one or more supplier organizations
  • Track which suppliers provide which services
  • Useful for sending purchase orders and managing supplier relationships
Reference Codes:
  • Add custom reference codes for internal tracking
  • Link to external systems or your own numbering system
  • Useful for mapping to accounting software, supplier codes, or legacy systems
A Library service has no files. You attach files to a service once it’s on a Journey, from that service’s side panel. There are two places, and they are not interchangeable:Supplier files is for supplier invoices and other paperwork for that service’s supplier.
Files added under Service Setup > Files are visible to the traveler. Use Supplier > Supplier files for anything internal, such as supplier invoices — it is never shown on the public itinerary.

Finding & Filtering Services

Search

Search by service title using the search bar. Search looks for matches in the service name/title field.

Categories

Filter by service category (e.g., “Accommodation”, “Activity”, “Transport”). Select a single category to show only services of that type. Categories display with visual icons for easy identification. Admins can create and manage categories (including custom icons) in Settings > Categories.

Country

Filter by country to show services in a specific country. Select one country at a time to narrow down your service list.

Areas

Filter by geographic area(s) to show services in specific locations. Selecting multiple areas shows services available in any selected area (e.g., select “Paris” and “Lyon” to search across both locations).

Tags

Filter by tags for detailed organization. Multi-select with AND logic: Selecting multiple tags shows only services that have ALL selected tags (e.g., select “luxury” AND “safari” to find only luxury safari services).

Using Filters Effectively

Combining Filters

You can combine multiple filters simultaneously:
  • Select multiple areas to search across regions (e.g., “Cape Town” + “Johannesburg”)
  • Combine category + area + tags for precise results (e.g., “Accommodation” + “Serengeti” + “luxury”)
Example: Find all luxury safari lodges in Kenya by filtering: Category = “Accommodation”, Area = “Masai Mara”, Tags = “luxury” + “safari”
Important: Tag filtering uses AND logic:
  • Selecting 1 tag: Shows all services with that tag
  • Selecting 2+ tags: Shows only services that have ALL selected tags
Example:
  • Tags selected: “luxury” + “family-friendly”
  • Results: Only services tagged with both “luxury” AND “family-friendly”
  • Services with only one of these tags will NOT appear
New to Odia? Set up your areas and categories in Settings before adding services. This makes organization easier from the start. Learn how to configure categories and areas.

Organizing Your Library

Naming Services

Best practices:
  • Use clear, descriptive titles (e.g., “Luxury Safari Lodge - Serengeti” not “Lodge 1”)
  • Include key details in the title if you have similar services
  • Make titles searchable - think about what you’d type to find it
  • Keep titles concise but specific

Using Categories

Best practices:
  • Assign a category to every service for easier filtering
  • Use consistent category names across your team
  • Common categories: Accommodation, Activity, Transport, Meals, Guides
  • Create categories that match your business workflow

Area Strategy

Best practices:
  • Assign every area where the same service is available
  • Leave Areas empty only for services that are not tied to a location
  • Use consistent area naming (e.g., always “Cape Town” not sometimes “CPT”)
  • Areas are set up in Settings > Content Management > Countries & Areas

Tag Strategy

How to create tags:
  • Tags are created inline when adding them to services
  • Type the tag name in the Tags field, then click “Add as new tag”
  • New tags are immediately available for all services
Best practices:
  • Check for existing tags before creating new ones to avoid duplicates
  • Use consistent naming (e.g., “family-friendly” not “family friendly”)
  • Review your tag list in Settings > Content Management > Tags
  • Remember: multiple tag selection = AND logic (services must have all tags)

Service Lifecycle

To edit a service:
  1. Navigate to Library screen
  2. Click on the service you want to edit
  3. Make your changes
  4. Changes are saved automatically (or click Save if prompted)
Who can edit: Supervisors and Admins can edit any service. Regular users cannot edit services.Impact of edits:
  • Changes to services do NOT affect existing Journeys
  • Only future uses of the service will reflect the updated information
To delete a service:
  1. Navigate to Library screen
  2. Click on the service you want to delete
  3. Click the Delete button
  4. Confirm deletion
What happens when you delete:
  • Service is removed from your Library (archived in the backend)
  • Service no longer appears when adding to Journeys
  • Existing Journeys with this service are unaffected
  • Historical data is preserved for reporting
Note: Deletion removes the service from your active inventory but maintains data integrity for past bookings.
Adding services to Journeys:
  1. Open a Journey
  2. Click “Add Service”
  3. Search or filter to find the service
  4. Click to add it to the Journey timeline
Service details in Journeys:
  • You can edit service details within the Journey (dates, times, pricing, notes)
  • Changes made in a Journey don’t affect the master service in your library
  • Each Journey has its own copy of the service data

Content Cards

Content Cards let you add travel information that isn’t a service—like local tips, cultural insights, safety information, or packing lists. Create reusable content cards in your library to add to multiple Journeys.

What Are Content Cards?

Content Cards are information blocks you can add to Journeys. They help you share important context without cluttering your service inventory. Common uses:
  • Local customs and cultural insights
  • Safety and health information
  • Packing recommendations
  • Weather information
  • Visa and entry requirements
  • Travel tips and insider knowledge
  • Important notices or disclaimers

Creating Content Cards

1

Access Content Cards Tab

Go to Library in the main navigation, then click the Content Cards tab
2

Create New Card

Click Add Content Card or Create New button
3

Add Content

Fill in your content card:
  • Title (required) - Name your content card (e.g., “Morocco Packing List”, “Safari Safety Tips”)
  • Content (required) - Add your information using the rich text editor
  • Use formatting like headings, bullet points, bold text, and more to organize content clearly
4

Save to Library

Click Save to add the content card to your library. It’s now available to use in any Journey.

Managing Content Cards

Edit a content card:
  1. Go to Library → Content Cards tab
  2. Click on the content card you want to edit
  3. Make your changes
  4. Save
Important: Editing a content card in the library WILL automatically update it in all Journeys where it’s being used. If you need different versions for different Journeys, create separate content cards.
Delete a content card:
  1. Click on the content card
  2. Click the Delete button
  3. Confirm deletion
  4. The card is removed from your library and from all Journeys where it was used

Using Content Cards in Journeys

Once created, add content cards from the Journey Builder. Choose the placement first, then select the card in Add to journey → Content Cards.

Per-Day Content Cards

Add content specific to a particular day. In the Journey Builder, choose an insertion point on that day, open Add to journey, then select the Content Cards tab. Drag the card to arrange it among the day’s services.Best for: Day-specific tips like “What to wear today” or “Important notes for today’s activities”

Intro And Closing Cards

Add general information before the itinerary or a closing card after it. Expand Before journey for an intro card or After journey for a closing card in the Journey Builder, then click Add content card. You can add multiple cards to either section.Best for: Welcome notes, general trip information, important information for all travellers, or closing cards and messages
Create a library of reusable content cards for common scenarios (visa requirements, packing lists, country-specific tips). This saves time and ensures consistency across all your Journeys. When you update a content card, all Journeys using it are automatically updated.
Content Cards work in both Journeys. Add them during the sales phase (Journey) or during operations (Journey) to keep travellers informed throughout their journey.

Supplier Pricing

A Library service holds what your suppliers charge you. It has no selling price. The selling price is worked out on each Journey, from that cost and your markups.

Adding a Supplier and Its Cost

The Suppliers & Pricing tab only works after the service has been created. Before that, it shows “Save the service first to manage suppliers and pricing”.
1

Open the service

In the Library, click the service. It opens in a side panel. Go to the Suppliers & Pricing tab.
2

Add a supplier

Choose the supplier from Add Supplier…. It’s linked as soon as you pick it. If the supplier isn’t in Odia yet, click Create Supplier to create it and link it in one step.
3

Enter the default cost

On the supplier’s row, enter what the supplier charges you in Default cost and pick its currency.
4

Save

Click Save Changes.
The first supplier you add becomes the preferred supplier, shown by a filled star. If a service has more than one supplier, click a supplier’s star to make it the preferred one.

What Happens on a Journey

  • When you add the service to a Journey, Odia sets its preferred supplier on it and saves that supplier’s Default cost as the service’s cost. A supplier with no Default cost leaves the cost empty.
  • When you add it in the Journey Builder, Odia also calculates its selling price, so you don’t need to open the pricing dialog. The cost is converted into your Selling Default currency with your exchange rate, then your markup is applied and the result is rounded up to a whole amount. When the Journey has a Travel Agent, their commission is included.
  • If Odia can’t calculate the price, most often because the exchange rate is missing, the service is added with its cost only and Odia shows Selling price needs attention. Exchange rates are set in Settings > Financial > Currencies.
  • Open the service’s pricing to see each step under Formula details, or to change the cost or the price for this Journey.
  • Changing the Default cost in the Library doesn’t change services already on a Journey, and Odia never replaces a price you entered yourself.

Setting Up Markups

Markups are set up in Settings > Financial > Pricing Rules, on the Markups tab. On a Journey, the markup set as the default for the service’s category is used first, then the global default. Without either, Odia adds no markup, so the selling price is the converted cost. See Pricing Rules & Markups for how to create markups and set defaults.

Dynamic Costs

Dynamic costs are only available on accounts with dynamic pricing. On those accounts, each supplier row has Add dynamic cost, which adds a conditional cost for that supplier. The dialog shows the selling price that results from the cost and markup.

Common Questions

Categories are broad classifications of service types (e.g., Accommodation, Activity, Transport). Each service typically has one category.Tags are flexible labels for more detailed organization (e.g., luxury, budget, family-friendly, adventure). Services can have multiple tags.Example: A service might have Category = “Accommodation” and Tags = “luxury” + “safari” + “family-friendly”
Tags are created inline while adding them to services:
  1. Open any service in the Library
  2. Find the Tags dropdown field
  3. Type the name of your new tag
  4. If it doesn’t exist, you’ll see “Add [name] as a new tag”
  5. Click it to create the tag and apply it to the service
There is no separate “Create Tag” page. Tags are created on-the-fly when you need them.To manage existing tags: Go to Settings > Content Management > Tags to view, search, and delete tags. Only Admins and Owners can manage tags.
Create location-specific services (e.g., “City Tour - Cape Town” and “City Tour - Johannesburg” as separate services) because:
  • Different pricing by location
  • Different suppliers in each area
  • Area-based filtering and organization
  • Location-specific descriptions and images
No. Tags and internal notes are team-only information. Clients see:
  • Service title
  • Headline
  • Description
  • Images
  • Category and area (if you choose to display them)
Clients do not see: Tags, internal notes, suppliers, or reference codes.
Existing Journeys are not affected. When you add a service to a Journey, it creates a copy of that service. Editing the master service in your library only affects future uses.If you need to update a service in existing Journeys, you must edit it within each Journey individually.
Use Odi•Assist to generate and enhance descriptions automatically:
  1. Open the service description editor (when creating or editing a service)
  2. Click the AI button (colorful gradient button next to the editor)
  3. Choose an action:
    • Custom prompt for specific instructions
    • Translate to English, French, or Spanish
    • Make more descriptive & luxurious
    • Shorten while keeping key details
    • Expand with more details
    • Complete rewrite from scratch
  4. Review the AI credit cost and click Generate
  5. Edit the generated content as needed
Note: AI generation uses credits from your organization’s balance. The feature is available in the Library, Journeys and content cards.

Common Scenarios & How-To Examples

Step-by-step:
  1. Navigate to Library from the main menu
  2. Click New Service in the top right
  3. Enter Title (required): Hotel name (e.g., “Serengeti Luxury Lodge”)
  4. Select Category (required): Choose “Accommodation”
  5. Select Area (optional): Choose the location (e.g., “Serengeti”)
  6. Add Headline: Short tagline (e.g., “5-star safari lodge with pool”)
  7. Add Description: Detailed information about hotel, amenities, room types
  8. Upload Images: Add photos from Unsplash, Odia Gallery, or upload your own
  9. Add Tags: Like “luxury”, “safari”, “pool” for easier filtering
  10. Click Create Service. You return to the Library.
  11. Click the hotel to open it, then use Suppliers & Pricing to link the hotel or DMC that manages it and enter its Default cost (see Supplier Pricing)
The hotel is now in your Library and ready to add to Journeys.
Using filters:
  1. Go to Library screen
  2. Click Category filter → Select “Accommodation”
  3. Click Area filter → Select your destination (e.g., “Cape Town”)
  4. Click Tags filter → Select “luxury”
  5. Results show only luxury accommodations in Cape Town
Pro tip: Tag services consistently. Use “luxury” not variations like “high-end”, “upscale”, “premium”.
There is no direct duplicate button. To create a similar service for a different location, open the original service in another browser tab and copy-paste the information.Step-by-step:
  1. Open the original service in Library
  2. Open a new browser tab and navigate to Library
  3. In the new tab, click New Service
  4. Switch back to the original service tab
  5. Copy and paste relevant information:
    • Title (required): Paste and modify to include new location name
    • Category (required): Select the same category
    • Area (optional): Select the new location
    • Headline: Copy and paste, adjusting for new location
    • Description: Copy and paste, adjusting location-specific details
  6. Upload same images or location-specific ones
  7. Click Create Service
  8. Open the new service and, on Suppliers & Pricing, link the local supplier and enter its Default cost
Why no duplicate button? Location-specific services often need different suppliers, pricing, and descriptions, so manual copying ensures you customize appropriately.
Bulk imports must be done by the Odia team. You cannot import services yourself - this requires coordination with Odia support.To request a bulk import:
  1. Email customer@odia.app with:
    • Subject: “Data Import Request - [Your Company Name]”
    • Details about where your data currently lives (Excel, Google Sheets, another system, etc.)
    • How many services you need to import
  2. The Odia team will discuss your specific situation and determine the best approach based on where your data lives
  3. They will handle the import process for you
Note: The import process varies depending on your data source and format. The Odia team will guide you through the specific steps needed for your situation.
Best practice: Create separate services for each locationExample:
  • “City Walking Tour - Cape Town”
  • “City Walking Tour - Johannesburg”
  • “City Walking Tour - Durban”
Each service needs:
  • Title (required): Service name with location
  • Category (required): e.g., “Activity”
  • Area (optional): Specific city
  • Different local suppliers
  • Location-specific descriptions and pricing
Use consistent naming: Same prefix helps services appear together when sorted alphabetically.Add common tags: Use tags like “city-tour”, “walking”, “cultural” to filter across all locations.
Option 1: Archive (recommended)
  1. Open the service in Library
  2. Click Archive button
  3. Service no longer appears when adding to Journeys
  4. Historical data preserved for existing Journeys
  5. Can be unarchived later if needed
Option 2: Delete (permanent)
  1. Open the service in Library
  2. Click Delete or trash icon
  3. Confirm deletion
  4. Warning: Cannot be undone
Recommendation: Always archive instead of delete to maintain historical records.
Refreshing your view: Refresh your webpage if you’ve made changes in Settings (like adding categories or areas) and they’re not appearing yet. This ensures you’re seeing the latest data.
Working in the app? Select the ? icon in the bottom-right corner of this screen to open its Help panel, which also has a Contact support button for a live chat with our team.