Boni
Boni
Browse documentation
Event Management·guide·Version 10

Publish an event

Publish a simple event page, show ticket availability and maps, and add optional photos, venues and itineraries as needed.

Start with the basics

Already published but unable to accept payment? Open Organizer profile → Complete booking setup for the event.

In Event Management → Events, add the event name, description, main venue, at least one date and one ticket type. Save, then publish when ready. The editor starts with these basics. Open optional sections only when you need photos, page sections, registration questions, maps or a schedule.

One event can have several dates, each with its own capacity. Publishing creates the public page; ticket sales also need available capacity, open sales dates and completed payment setup for paid tickets.

FieldWhat it controls
Name, description, mediaWhat the public page shows
Venue and addressWhere it happens, including map location where provided
TimezoneHow start and end times are displayed; India Standard Time by default
SlugThe shareable public URL segment for the event
StatusDraft, published, archived or cancelled

An occurrence is one dated instance with its own start, end and capacity. Choose Show dates only when a date is confirmed but its clock time is still to be shared. A recurring workshop is one event with several occurrences, which keeps the page, branding and reporting together.

Ticket types

Each ticket type is priced and limited independently.

SettingEffect
PriceZero makes the type free; any other amount routes the order through payment
Maximum per orderCaps how many of this type one booking may contain
VisibilityHidden types do not appear on the public page; visible types can be offered during their sales window
Sales windowOpens and closes sales for this type without unpublishing the event
Per-occurrence capacityCaps this type for a given occurrence

Set Visibility in the ticket’s main row to Visible on event page or Hidden from event page, then save. A hidden ticket remains hidden when you change its name or price. The ticket row also shows Ticket limit per date. Expand Description & sales dates when needed.

Visibility does not open paid bookings by itself: sales dates, capacity and organizer booking setup still apply.

Two caps, deliberately

Occurrence capacity is a shared ceiling across every ticket type in that occurrence. Per-occurrence type capacity caps one type within it.

Capacity counts ticket units: each quantity consumes one shared unit, including a bundle configured as one ticket type. It does not expand a family pack into individual attendees or give a merchandise ticket separate shared stock. Confirm the intended unit when setting capacity. Set both caps when you want an overall ticket limit and a separate category limit. For example, a 50-seat occurrence can carry an unlimited-by-type student category and a 10-ticket guest category: the shared ticket total stays within 50, and guests stay capped at 10.

A blank Shared capacity for this date means no overall limit. A blank ticket-type capacity uses the shared date capacity without an extra type limit. 0 pauses that date or ticket type. Maximum per booking limits one buyer; it does not set overall availability.

The public page shows the remaining count, unlimited availability or sold out for the selected date. Availability is enforced atomically at booking time, so two people booking the last seat at the same moment cannot both succeed.

Booking setup

Open Event Management → Organizer profile, Overview or Events and choose Complete booking setup beside your event. Enter the organizer’s legal name and choose their GST status, then Save booking setup.

  • Not GST registered: ordinary organizer-sold event admission collects no GST. There is no GSTIN, rate or review link to fill in. Customers pay the ticket price you set.
  • GST registered: enter GSTIN and the applicable rate. Choose whether your ticket prices include GST.
  • Other arrangements: composition, exemptions or special supplies may need additional treatment. Open Additional settings · Optional for special tax arrangements, seller, settlement, fees or notes.

A published page can still say Paid bookings paused when required details are missing. The saved checklist shows what to complete. You can save unfinished setup and return later. The save preserves your photos, tickets, dates and itinerary. Payment setup ready confirms financial setup; tickets also need a published page, capacity and open sales dates. Free events do not need paid setup.

GST registration eligibility remains the organizer’s responsibility. Some separately sold food, transport, accommodation, goods or platform-liable services have different rules. Use a special tax arrangement for those supplies; do not treat every supply as ordinary event admission. See CGST Act section32 and Notification65/2017.

Checkout rules

An event can require details before a booking completes and limit the size of one order.

RuleUse it for
Require buyer phoneRegistrations you will contact or verify
Require buyer emailAnything that must receive the confirmation and ticket links
Maximum tickets per orderOne-registration-per-person events such as affiliation-gated entry

Registration questions

Open Booking & registration in the event editor. Add short text, phone, select-one or checkbox questions, with optional hints and HTTPS information links. Mark only necessary answers required. A required declaration starts unchecked for the customer; optional marketing updates should include a no-updates choice.

The event owns its questions, so the same configuration drives the booking UI and authorized API. Answers are private: open an order’s Details to read the labels and answers captured at booking time. Editing a question later does not rewrite earlier answers. Order lists, public pages, ticket wallets and QR codes do not display them.

Ticket descriptions, visibility, capacities and sales windows survive ordinary event edits. Use sales windows for early-bird and standard packages sharing the same occurrence capacity. The public page offers the currently active prices.

Photos and public contact

Open Events → Edit → Photos, page sections & contact. In Event photos, choose Upload photos and select JPG, PNG or WebP files from your device (up to 10 MB each). You can add up to 12 photos, preview them, move them up or down, and remove them. Add an image link instead is available if you already have an HTTPS image URL. The first photo is the cover.

With multiple photos, Automatically cycle through photos is on by default; turn it off for manual browsing. Visitors can pause, choose thumbnails, use arrows or swipe. Automatic cycling pauses during interaction and respects reduced-motion preferences.

Add page sections

Choose Add section under Page sections. Add a title, text, photos or any combination. Use the formatting buttons for bold, italic, lists and links, and Preview formatting to check the result. Move sections up or down to control their order.

Choose Slideshow, Photo grid, or Photos beside text. Show the whole image works well for partner logos; Fill the frame works well for photographs. Each section supports up to 12 photos, with up to 12 sections and 60 section photos per event. Section slideshows start with manual browsing; enable automatic cycling when useful.

For a previous-event section, add a title such as “A look at our last event”, a short recap and photographs. For partners, use a photo grid with whole-image display, logos and a short introduction. The same sections also work for an itinerary, venue details or anything else your visitors need.

Turn off Show this section on the event page to keep a section as a private draft. Removing a photo from a section removes that reference. Uploads stay private until they are used in a published event’s visible photos or sections. Save the event to update its existing public page.

Maps, more venues and an itinerary

Open Map, more venues & itinerary · Optional in the event editor. Add Main venue coordinates as latitude, longitude. The public page uses these for Open in Maps; if coordinates are absent, it uses the saved address.

Choose + Add venue for another stop or activity location. Give it a name and optionally an address, city and coordinates. Additional venues appear only when configured.

Choose + Add activity under Itinerary or schedule. Add a title, optional time or day, description and venue. Use “9:30 am” for a morning event or “Day 2” for a tour. Move activities up or down to set the display order. A venue link takes guests to that location on the same page. Save to update the existing public link.

You can use a main venue alone, several venues without a schedule, or a schedule without venue links. These optional features work for workshops, family experiences and travel packages.

Change your public organizer name

Open Event Management → Organizer profile, or choose Edit organizer name and contact details in the event editor. Set Public organizer name to your business or organizer name. Public email and phone are optional. Choose Save organizer details.

The new name appears at the top of your event pages. Existing event links stay the same. This edits public branding and contact details; legal, GST and settlement details are managed separately. If another administrator saved first, reload before saving again.

In Contact section, choose Use organizer details, Custom event contact, or Hide contact section. Custom name, note, email, phone and HTTPS website fields are optional. Add an email, phone or website for the public contact section to appear. Hiding the section retains your custom details for later. These are public organizer details; keep private attendee information out of them. Save the event to update its existing public link.

The event editor suggests a public slug from its name. Choose a distinct slug before saving; the saved public slug stays stable when you edit the event name. Published pages use https://bino.bot/e/<publicSlug>. The slug must be unique. Use Open event on a published event to open its shareable page.

For a recurring workshop, add several occurrences to one event. Create a separate event when its description, venue or offer needs its own page.

Manage your team

In Boni Panel, select your organization and open Workspace → Team access. An owner or admin can invite a member by email, choose their role, and select access to installed apps. Choose Admin for another event organizer who should manage the team. You can edit or remove their access from the same screen. Team access is part of the workspace and does not require an HR app.

The screen shows member-seat usage and any configured limit. Invited and active members count toward usage. Adding a member does not itself introduce a new charge.

Request a change

Open Workspace → Requests, describe the change or problem, and send it to Boni. You can add details and track review, progress and the outcome in the same place. Leave out passwords and sensitive customer information. Add modules remains the place to request another app; its review progress also appears in Requests.

Boni reviews requests before starting work. Approved product changes become a tracked task aimed at improving the shared product. Completion appears as being verified until Boni confirms delivery. You can withdraw a request before approval.

Vendors and costs

Open Vendors & costs on the event. Add the suppliers involved, describe their roles, and add planned cost lines in rupees with delivery status and notes. For example, breakfast and honey can come from different suppliers without needing a special event template.

Save the plan before leaving. If someone else saves first, the screen asks you to reload so their work is preserved. Supplier contacts and costs are private organizer information.

With Accounting installed for the same organization, Load suppliers & bills lets you link canonical supplier and invoice records. Boni Accounting takes you to the shared financial workflow. Marking a delivery received does not post an invoice or pay a supplier.

Publish when the event, dates, ticket types and checkout setup are correct. Choose Complete booking setup before opening paid bookings.

Next: Booking and payments.

Authorized integrations

The organization API exposes the same vendor plan:

OperationRoute
Read the current plan and versionGET /v1/org/events/{eventId}/operations
Save a reviewed planPUT /v1/org/events/{eventId}/operations

A save supplies expectedVersion, suppliers and costLines; API money amounts are integer INR paise. A stale version returns 409, so an integration reloads and reconciles the plan before submitting again. An exact replay produces the same result. These records stay private to the organizer.

Use the authorized organization integration route and credentials provided during onboarding. Keep credentials out of public event links and pages. Optional Accounting references link the existing supplier and invoice owners; they do not create another financial ledger.

Registration API contract

Authorized event writes use bookingPolicy.registrationQuestions with up to 20 questions. Each question has a stable fieldId, label, type (text, phone, select or checkbox), optional required, hint, HTTPS informationUrl, and distinct options for select questions. Booking APIs accept registrationAnswers keyed by field id. Required answers and valid choices are enforced before inventory holds; unknown fields are rejected. The scoped order-detail API exposes snapshots of answered labels and values, while ordinary summaries omit them.

Presentation API contract

Authorized event create/update APIs accept the ordered images array (zero to 12 HTTPS URLs), optional gallery: {autoplay: false} for manual browsing, and optional contact with mode (inherit, custom or hidden), name, role, email, phone and HTTPS website. Omitted fields in a partial update are preserved. Both public event URL formats use the same presentation.

Optional ordered contentBlocks use a stable blockId, title, body (Markdown), images, layout (gallery, grid, image-left, image-right), imageFit (cover or contain), gallery.autoplay and visible. Hidden sections are excluded from public projections. Omitted fields in partial updates remain unchanged.

Upload a file with POST https://panel.boni.one/api/event-ticketing/media, using the authorized organization bearer key and multipart fields file and orgId. The response contains asset.url, which can be added to event or section images. An identical retry reuses the photo. Do not put integration keys in public pages or URLs.

Read public organizer details with GET /v1/org/profile; save with PUT /v1/org/profile using the current expectedVersion, name, contactEmail and contactPhone. Empty contact strings clear those optional fields. A stale version returns 409; reload and reconcile before retrying.

Ticket types use status: ACTIVE for public visibility or status: HIDDEN to keep the offer off the public page. Editing the ticket name or price does not change its status.

Program and booking-setup API contract

Private organization event list and detail responses include bookingSetup (hasPaidTickets, paidBookingsReady, missingFields). Authorized assistants can update financial settings with an accounting-only partial PUT /v1/org/events/:eventId, then read the saved detail again. Use the owner status; do not infer payment readiness from publication or inventory. Public pages receive readiness only, without legal or tax evidence. Ordinary organizer-sold admission uses accounting.sellerOfRecord: organizer, organizerLegalName and organizerGstStatus. Unregistered admission uses zero GST in new order snapshots; registered admission also requires organizerGstin and gstRateBps. Set taxHandling: review_required for a special arrangement. The owner calculates readiness and tax consistently; existing order snapshots remain unchanged.

Event writes accept optional program with the current expectedVersion, ordered additionalVenues (up to 20) and ordered itinerary (up to 60). Venues have stable venueId, name and optional address, city, gps. Activities have stable entryId, title and optional timeLabel, description, venueId. Use main for the main venue or an id from that event’s additional venues. GPS is latitude, longitude within valid ranges. Omitted program fields preserve the saved program. A stale version returns 409; reload and reconcile before retrying.

The same event owner and public rendering serve all organizers. These additions preserve the existing inventory, confirmed-order and accounting adapters; ONDC network publication remains a separately configured, certified provider integration.