Account Settings
Everything on the Settings page: your profile, how the admin portal looks, the payment method your tickets are sold through, API and webhook access, connected calendars, backups and account security.
Profile Information
Open Settings from the main navigation. Every settings section is listed down the left side of the page (an accordion on small screens), and this guide follows them in that order. These settings belong to you, not to a schedule: anything that differs per schedule, such as calendar sync or a schedule's own sending address, lives in the schedule's settings instead.
Profile Information itself is split into two tabs, General and Localization. A third tab, Accessibility, appears only after you have hidden the accessibility widget, and its single button brings the widget back.
General
| Setting | Description |
|---|---|
| Name | Required. Your display name, shown to the other members of any schedule you belong to. |
| Required. The address you sign in with and where account email is sent. Editing it clears your verification: the field then shows an unverified notice with a link to re-send the verification email. | |
| Phone Number | Optional, in international format. On the hosted platform you can verify it by SMS, and a verified number is what unlocks sending newsletters and running ad campaigns and on-network promotions. If one of your schedules uses the same number, that schedule's number counts as verified too. |
| Default Schedule | Only shown when you can edit more than one schedule. It decides which schedule a new event belongs to when you start from the general Add Event entry point rather than from a schedule. |
| Square Profile Image | Your avatar, as a PNG or JPEG. A square image works best: the form warns you if the picture is not square or is larger than 2.5MB. Use the small red cross on the thumbnail to remove the current image. |
Localization
| Setting | Description |
|---|---|
| Timezone | Controls how dates and times are shown to you throughout the app. Event times are stored in UTC and converted to this timezone while you are signed in. |
| Language | Sets the interface language. Twelve languages are available: Arabic, Dutch, English, Estonian, French, German, Hebrew, Italian, Portuguese, Romanian, Russian and Spanish. |
| Use 24-hour time format | Switches between 12-hour (AM/PM) and 24-hour clocks across the app. |
| Ask me before I follow a new schedule | On by default. Shows a short consent notice, explaining that the schedule will see your name and email, the first time you follow a schedule. Turn it off to follow in one click. |
Appearance
The Appearance tab in Settings controls how the admin portal looks. You can also change it on any page from the Theme button in the row of icons pinned to the bottom of the sidebar, which opens the same Theme and Palette controls in a popup.
Theme chooses Light, Dark, or System. System follows your device's own light/dark setting and updates the moment your device switches.
Palette then picks the exact colours. There are three light palettes and three dark ones, and you set each side independently - the palette row shows the three options for whichever mode you are currently viewing, so switch Theme to Dark to choose your dark palette.
| Palette | Description |
|---|---|
| Sand | Light. Warm beige page with white panels. |
| Mist | Light. Cool blue-grey page with white panels. The default. |
| Paper | Light. Crisp white page with softly recessed panels. |
| Espresso | Dark. Warm deep brown. |
| Midnight | Dark. Cool charcoal-navy. The default. |
| Carbon | Dark. True black, easiest on OLED screens. |
Your choice is stored in your browser rather than on your account, so it applies to the device you set it on. Set it again on your phone or another computer to match. Public schedule pages are unaffected - they keep the colours the schedule owner configured.
Payment Methods
To sell tickets you need at least one payment method on your account. Event Schedule supports three, each on its own tab in this section. Which one an event uses is decided per event, on the event's Payment tab, so connecting more than one lets you route different events differently. Without any connected method the only option an event has is cash on the door.
Stripe
Stripe gives the most integrated experience: the buyer pays without leaving the checkout, the sale is marked paid automatically and the ticket with its QR code is emailed straight away.
Hosted platform
Click Connect Stripe to start Stripe Connect onboarding, then complete the details on Stripe. Until Stripe finishes reviewing them the tab shows your account ID labelled [Pending]. Buyers are charged on your own Stripe account, so payouts and Stripe's own processing fees are between you and Stripe. Event Schedule adds no platform fee of its own.
Selfhosted
Stripe is configured once at the server level with the STRIPE_PLATFORM_KEY and STRIPE_PLATFORM_SECRET variables in your .env file, not per account. The tab simply reports whether the server has Stripe configured. See the
selfhosted Stripe setup guide
.
Disconnecting
Click Unlink Account under the account name in the Stripe tab and confirm. This only removes the connection to Event Schedule; your Stripe account and its history are untouched.
Invoice Ninja
Connect your Invoice Ninja account to take payment through any gateway Invoice Ninja supports, and to have each sale land in your books as an invoice. This is often the easiest route for a selfhosted deployment.
Connecting
Enter your API Token (required) and, if you selfhost Invoice Ninja, the API URL. The token is in Invoice Ninja under Settings → Account Management. Enter the base address of your installation, without /api/v1, or leave the API URL blank to use the hosted invoicing.co service. Saving verifies the credentials against your installation, which can take up to 30 seconds.
Changing credentials
Once connected, click Edit next to the company name to correct the API URL or rotate the token. Leave the token blank to keep the existing one. Your current connection is only replaced once the new credentials work.
Checkout modes
After connecting, the tab offers two checkout modes: invoice mode (buyers pick tickets in Event Schedule) and payment link mode (buyers pick tickets on Invoice Ninja's purchase page, with grouped invoices). See Invoice Ninja Modes for a full comparison. If a payment link cannot be created for a sale, that checkout falls back to invoice mode automatically.
Troubleshooting
If the connection fails, a red panel at the top of the Invoice Ninja tab names the reason and shows the raw error, and the full detail is written to your application log. Common causes for selfhosted installations are a firewall, Cloudflare or other bot protection blocking API requests from your Event Schedule server, an http URL that redirects to https, and a self-signed TLS certificate the server does not trust.
Disconnecting
Click Unlink Account next to the company name in the Invoice Ninja tab and confirm.
Before you connect, the tab shows a special offer link: first-time Invoice Ninja users may be eligible for a free 1-year upgrade to Invoice Ninja Pro.
Payment Link
The tab is labelled Payment Link. It points buyers at any external payment page you already have: a PayPal.me link, a bank transfer page, your own checkout, anything with a URL.
How it works
Enter the URL where buyers should pay and save. When somebody buys a ticket for an event using this method, the sale is recorded and the buyer is redirected to your URL. Because the money moves outside Event Schedule, the sale stays unpaid until the payment is confirmed.
Removing it
Click Unlink Account under the saved URL and confirm. The field is then empty and ready for a new URL.
One payment method is enough. Stripe is the one to pick if you have a choice: it is the only method that confirms payment and delivers the ticket without any manual step.
API Settings
This section issues the key that authenticates REST API requests for your account. The endpoints themselves are a Pro feature: the key can be generated on any plan, but every call is checked against the schedule it touches and a schedule below Pro is refused. See the API Reference for the full endpoint list.
Enable API Access
A single toggle. Saving it on generates a key straight away. Saving it off deletes the key, so anything using it stops working immediately.
API Key
The full key is displayed exactly once, right after it is generated, next to a copy button. From then on the field shows dots and there is no way to reveal the key again, so store it somewhere safe the moment you create it. Send it as the X-API-Key request header.
Expiry
A key is valid for one year from the day it is issued. After that requests are rejected as expired, and you get a fresh key by turning the toggle off and on again.
The key grants the same access to your account that you have. If you suspect it has leaked, turn the API off and on again: that deletes the old key and issues a new one, and the old key stops working at once.
Webhooks
A webhook POSTs a JSON payload to a URL of yours whenever something happens in your schedules, such as a sale, an event change or a check-in. Webhooks are a Pro feature: if none of your schedules are on Pro the section shows an upgrade notice, and activity on a schedule below Pro is never delivered. See the Webhook documentation for payload formats and signature verification.
Adding a webhook
- Enter the endpoint URL that should receive the requests.
- Add an optional Description so you can tell endpoints apart in the list.
- Under Event types, leave every type switched on or turn off the ones you do not want. All types are on by default.
- Click Add Webhook. The signing secret appears once at the top of the section with a copy button, and is never shown again.
Managing webhooks
Each saved webhook is a row with its description, URL and subscribed event types, and a row of icon buttons:
- Enable or disable the endpoint. A disabled webhook is dimmed and receives nothing.
- Send a test ping to check the endpoint answers.
- Edit opens a panel to change the URL, description and event types, and holds the Regenerate secret link.
- Delete the endpoint after a confirmation.
View recent deliveries under each webhook expands a log of the latest attempts, with the event type, the response status (or timeout), how long the request took and when it ran. The row also shows when the endpoint last fired.
Google Settings
Two separate Google connections live here. Connecting one does not connect the other, and each can be disconnected on its own.
Google Account
Links your Google identity so you can sign in with Google. Disconnect is only available once your account has a password, otherwise you would lock yourself out; set one first under Update Password.
Google Calendar
Authorises two-way sync between Event Schedule and your Google Calendar. Every member of a schedule connects their own Google account here, so one shared schedule can sync into several personal calendars. Once connected, switch sync on for each schedule under Integrations.
A synced calendar gets one entry per event date that Event Schedule pushes, not a repeating series: a recurring event arrives as a single entry on the date the series starts. Use the schedule's iCal subscription feed if you want every date of a recurring event in your calendar.
Connecting your account here does nothing on its own. Sync is enabled per schedule in the schedule's settings, and each team member controls their own connection.
Outlook Calendar
The section is called Outlook Calendar in the settings navigation. It connects your Outlook or Microsoft 365 account through the Microsoft Graph API.
Connecting
Click Connect Outlook Calendar and approve the permissions on Microsoft. Changes then flow both ways: Microsoft notifies Event Schedule as they happen, and a catch-up sync runs every 15 minutes in case a notification is missed. Once connected, switch sync on for each schedule under Integrations.
Selfhosted installations
The integration needs Microsoft app credentials on the server. Without them the section reads "Outlook Calendar is not configured on this server" and there is no connect button. See the selfhosted Outlook setup guide .
Enable the Teams meetings option on a schedule to have a Microsoft Teams meeting created automatically for its online events.
Backup & Restore
Export your schedules as a portable .zip file, or restore one you exported earlier. A backup carries the schedule itself plus its sub-schedules, events, tickets, sales, promo codes and newsletters, and optionally the images. The section has two tabs, Export and Import.
Exporting
- On the Export tab, review the schedule list. Every schedule you can edit is listed and all are selected, so clear the ones you do not want.
- Turn on Include images to bundle profile images, flyers and photos. It is off by default and makes the file considerably larger.
- Click Export. Progress is reported in place, item by item, and you can cancel while it runs.
- When it finishes, a Download link appears. The link expires after 7 days. On installations that run a queue worker you also get an email when the export is ready.
Importing
- On the Import tab, choose a
.zipexport and click Upload. - A preview lists each schedule in the file with its type, its event, ticket and sale counts and its date range. All are selected, so clear any you do not want.
- Click Start Import. Imported schedules are always created as new schedules, so nothing you already have is overwritten.
- When it finishes you get a report per schedule, counting what was imported for each kind of record and listing any warnings, with a link to the new schedule. On installations that run a queue worker the detailed report is also emailed to you.
On the hosted platform, newsletter recipient emails, segment contacts and unsubscribe lists are left out of exports. They come from followers who did not share their address with your schedule directly.
On selfhosted installations, exports do contain personal data such as names and email addresses, so store the files securely. To move a whole installation to another server, mysqldump is a better tool than export and import.
App Update
On a selfhosted installation this section shows the Installed Version next to the Latest Version published on GitHub. If they match it simply says you are up to date. If they differ, an Update button downloads and applies the new release in one click.
A large update can outrun PHP's execution limit. If it times out, run php artisan app:update from the command line, raise max_execution_time in php.ini, or download the release zip linked under the button and extract it to /tmp/eventschedule/ before trying again.
This section never appears on eventschedule.com, where everyone is always on the latest version automatically. On a single-tenant selfhost any signed-in user sees it; on a selfhosted platform running in hosted mode it is limited to the instance administrator, so a customer cannot update the whole installation.
Update Password
Enter your current password, choose a new one and save. A password must be at least 8 characters long.
If your account was created by signing in with Google it has no password yet, and the section is titled Set Password instead. It first asks you to confirm who you are with Google; after that you have a few minutes to choose a password, and only the new password field is shown.
Setting a password is also what makes it possible to disconnect Google later, and it gives you a way in if you ever lose access to your Google account.
Two-Factor Authentication
Two-factor authentication (2FA) adds a second step to signing in, using a time-based one-time password from an authenticator app such as Google Authenticator, Authy or 1Password.
Turning it on
- Enter your current password and click Enable Two-Factor Authentication. Accounts with no password, created by signing in with Google, are not asked for one.
- Scan the QR code with your authenticator app. If you cannot scan, type the key printed under the code into the app by hand.
- Save the recovery codes shown on the same screen, somewhere other than the device holding the authenticator app.
- Type the 6-digit code from the app and click Confirm. Two-factor authentication is not active until this step succeeds.
Afterwards
Recovery codes
Each code works once and lets you sign in without the authenticator app. Regenerate Codes issues a fresh set and displays it once; every earlier code stops working at that moment.
Turning it off
Click Disable and type your password into the prompt, which only appears if your account has one. Disabling removes the authenticator secret and every remaining recovery code, so switching 2FA back on later starts from a new QR code.
Store your recovery codes securely. If you lose the authenticator app and no longer have the codes, you will not be able to sign in.
Delete Account
Permanently deletes your account and everything attached to it. That means:
- Your user account, profile and profile image
- Every schedule you own, with its events, tickets and sales
- Connections to linked services such as Stripe and Google, including any calendar sync they were running
Clicking Delete Account opens a confirmation dialog with an optional Why are you leaving? box. Anything you write there is emailed to the Event Schedule team as feedback and helps us improve the platform. Before that, download anything you want to keep, for example with Backup & Restore.
Deletion is permanent and cannot be undone. If your account has a password you are asked to type it in the dialog to confirm; accounts that only sign in with Google confirm without one.
The Delete Account section is only shown on the hosted platform (eventschedule.com). On a selfhosted installation the administrator manages accounts on the server instead.
See Also
- Getting Started - Set up your first schedule
- Selling Tickets - Choose a payment method per event once one is connected
- Advanced Schedule Settings - Per-schedule calendar sync, sending address and other integrations
- API Reference - Full API documentation for developers
- Webhooks - Payload formats and signature verification