Docs
  • All For Customers guides
  • Credits, memberships, and orders
  • Customer FAQ
  • Health information and consent
  • Manage bookings and appointments
  • Profile, payment methods, and settings
  • Wallet and gift cards
  • Your customer account
  • All For Teachers guides
  • Manage Attendance
  • Manage Your Profile
  • Teacher Dashboard Overview
  • Teacher FAQ
  • View Your Payslips
  • View Your Schedule and Attendees
  • All Getting Started guides
  • Booking Policies
  • Contracts
  • Manage Locations and Resources
  • Media Library
  • Notification Settings
  • Plan Features
  • Platform Overview
  • Quick Start Guide
  • Reports
  • Studio Profile & Social Links
  • Using the Agent
  • Waivers & Terms
  • All Customer Management guides
  • Coupons
  • Customer Bookings
  • Customer Credit Expiry
  • Customer Details
  • Customer List
  • Customer Segments
  • Export Data
  • Leads Management
  • Products & Credits
  • Referrals
  • All Classes guides
  • Activity Categories
  • Calendar
  • Closing Bookings on a Class
  • Creating Classes
  • Editing Future Class Instances
  • Managing, Extending, and Deleting Class Series
  • Teacher Assignments on Class Instances
  • Waitlists for Classes
  • Workshop vs Course: Which One Should You Use?
  • All Appointments guides
  • Create Appointment Services
  • Customers Managing Their Appointments
  • How Customers Book Appointments
  • Manage Appointment Resources
  • Reschedule or Cancel Appointments
  • Set Availability Schedules
  • View and Manage Appointments
  • All Pricing guides
  • Class Coverage for Products
  • Creating Class Packs
  • Creating Memberships
  • Product Settings Guide
  • Product Types Overview
  • Share Class Packs and Memberships Online
  • All Products guides
  • Creating Physical Products
  • All Troubleshooting guides
  • Common Issues & Solutions
  • All Payments & Billing guides
  • Abandoned Checkout Recovery
  • Annual summary
  • Billing Details & Invoices
  • Booking & Checkout Settings
  • Gift Cards
  • Invoice vs Receipt: What Naayya Provides
  • Payment Methods & Payouts
  • Payment Review
  • Payment Troubleshooting
  • Point of Sale
  • Record Offline Payments
  • Set Up Get Paid
  • All Integrations guides
  • Add a Lead Form to Your Website
  • Website Integration
  • Website Integration Troubleshooting
  • What Customers See in Website Integrations
  • All Email Marketing guides
  • Domain Verification Setup
  • Getting Started with Email Marketing
  • Managing Email Templates
  • Sending Email Campaigns
  • Sending Quick Emails
  • Using the Email Designer
  • All Automations guides
  • Editing an Automation
  • Getting Started with Automations
  • All Team & Access guides
  • Access Control
  • Adding Staff Members
  • Managing Teacher Profiles
  • People Overview
  • Provider Profiles
  • Public Profiles for Staff Who Teach
  • Roles & Permissions
  • Staff Management
  • Teacher Status Management
  • Teaching Team
  • User Roles
  • All Finance guides
  • Pay Rules
  • Payouts
  • Payslips
  • Teacher Payout Calculator
  • All Performance guides
  • Attendance Rates
  • Class Fill %
  • Retention Rates
  • Session Feedback Stats
  • All Community / Feedback guides
  • Private Feedback
  • Public Testimonials
DocsNaayya appBlogContact support
  1. Docs
  2. Integrations
  3. Website Integration
Open app

Website Integration

Add your Naayya class schedule to your website so visitors can browse classes and start a booking

Add your Naayya class schedule to your own website. Visitors can browse upcoming classes, open class details, and start a booking from the widget.

New setups use the v2 widget. You create the code in Admin → Settings → Website Integration, then paste it into your website.

Who this is for#

Business owners and managers who run their own website and can paste HTML into it. The widget works with site builders that provide an HTML, Custom HTML, or Code block, including WordPress, Squarespace, Wix, and GoDaddy.

Get your embed key#

Open Admin → Settings → Website Integration, choose Schedule, and select Customize. When the preview looks right, select Get Code. Naayya generates a ready-to-copy v2 snippet for your schedule.

Add the schedule (2 lines)#

Paste the generated code into the HTML or code block where you want the schedule to appear. A minimal v2 snippet looks like this:

<script type="module" async src="https://naayya.com/plugin/v2/loader.js"></script>
<naayya-schedule business-id="YOUR_EMBED_KEY"></naayya-schedule>

Use the generated snippet when you have set a height, style, or pre-filter in the Website Integration page. If your site builder removes custom HTML tags, use its Custom HTML, Code, or Embed HTML block instead of a rich-text block.

Options#

If you edit the v2 element yourself, these attributes control its display:

AttributeValuesWhat it does
business-idembed keyRequired. Identifies the schedule to show. Keep the value from the generated snippet.
modeinline (default), popup, floatShows the schedule in place, behind a button, or behind a floating button.
themelight (default), dark, autoSets the widget's colour theme. auto follows the visitor's system setting.
trigger-labeltextButton text for popup and float modes.
teacherscomma-separated idsPre-filters the schedule to selected instructors.
locationscomma-separated idsPre-filters the schedule to selected locations.
categoriescomma-separated namesPre-filters the schedule to selected class categories.
hide-filterspresent or absentHides the filter controls.

Display modes#

  • inline: shows the schedule where you place the element. This is the default and the mode produced by the Website Integration page.
  • popup: shows a button that opens the schedule in a pop-up.
  • float: shows a floating button that opens the schedule. Use it as a site-wide booking entry point only when it fits your site's layout.

For example:

<naayya-schedule business-id="YOUR_EMBED_KEY" mode="popup" trigger-label="Book a class"></naayya-schedule>

Match your brand#

Use the Style controls in Customize to set colours, typography, spacing, button shape, and card treatment. Use Preview to check the result in the Desktop and Mobile layouts, then select Get Code to copy the updated snippet.

React and Next.js#

If your site is a React or Next.js application, Naayya provides a React wrapper for the same schedule widget:

import { createNaayyaSchedule } from 'https://naayya.com/plugin/v2/react.js'
import React from 'react'

const NaayyaSchedule = createNaayyaSchedule(React)

export function Schedule() {
  return <NaayyaSchedule businessId="YOUR_EMBED_KEY" mode="inline" theme="auto" />
}

Keep the businessId value from the generated Website Integration snippet.

Where to paste it#

  • WordPress: edit the page and add a Custom HTML block.
  • Squarespace: edit the page and add a Code block.
  • Wix: add an Embed HTML element.
  • GoDaddy and other builders: use an HTML or embed section that accepts custom elements.

What the widget does not do#

The schedule widget displays public class information. When a visitor selects Book, Naayya opens the booking page in a new tab. The widget does not provide an in-widget checkout.

Classic embed (v1, being phased out)#

If your site already uses the older iframe or data-naayya-calendar embed, it remains available for compatibility. New setup and current widget improvements use v2. To move an existing site, replace the old snippet with the generated v2 code and review the result in your website preview.

Related#

  • Add a lead form to your website
  • What customers see in website integrations
  • Website integration troubleshooting
PreviousAdd a Lead Form to Your WebsiteNextWebsite Integration Troubleshooting

On this page