Skip to main content
A subscriber is a notification recipient in WorldVisa, identified by a unique subscriberId. Workflows are triggered for subscribers, and WorldVisa applies channel routing, preferences, and personalization at the subscriber level.

How does WorldVisa identify a subscriber?

Each subscriber is uniquely identified in WorldVisa by a subscriberId. This ID is defined by your application and serves as the reference point for all subscriber-related operations whether sending messages, retrieving preferences, or managing user data. Unlike email addresses or phone numbers, which may change or be shared across users, the subscriberId must remain stable and unique within your system. It acts as the anchor that connects a subscriber’s profile, activity history, and delivery settings across all channels and workflows.
Use your application’s internal user ID as the subscriberId to ensure consistency across your systems.

Subscriber metadata and profile structure

A subscriber’s profile holds all relevant data WorldVisa uses to personalize, deliver, and manage notifications. These fields can power dynamic content in your templates, define conditional logic in workflows, and control which channels a subscriber can receive notifications through. All metadata tied to a subscriber is centralized and accessible via API or dashboard. This structure ensures that when notifications are triggered, WorldVisa references the most up-to-date context for delivery and personalization. The profile includes:

User data

Data stored in the subscriber object that you can easily access in your notification templates. This contains basic info such as email, phone, firstName, locale and others. This data is fixed and structured.

Custom data

Store custom data on a subscriber in the data object. WorldVisa keeps that JSON with the profile and does not interpret the keys. Fields such as address, membershipLevel, or preferredTopics belong here. The ahead of trigger example shows the object on create. Pass the same object on update subscriber or on a just-in-time trigger. In a template, read a field with {{subscriber.data.membershipLevel}}. In step conditions, use the path subscriber.data.membershipLevel.

Channel specific credentials

To deliver messages through push or chat-based channels, WorldVisa also supports storing delivery credentials on the subscriber profile:
  • deviceTokens: Used to target mobile devices via push notifications.
  • webhookUrl: Used by chat providers such as, Slack, Discord to reach the subscriber.
These fields ensure WorldVisa can deliver messages reliably to all supported destinations, even when the channel requires platform-specific configuration. You can manage them programmatically with the subscriber credentials API or visually from the Credentials tab on a subscriber in the dashboard.
Each subscriber channel is limited to a maximum of 100 device tokens. Requests that exceed this limit will be rejected. See Platform Limits for details.
Learn more about subscriber attributes and schema in the Subscribers API.

Subscriber creation in WorldVisa

Before you can send notifications, a subscriber must exist in WorldVisa. Create subscribers from your backend with the Create subscriber API, from the dashboard, or with one of the approaches below. subscriberId is required and must be unique in that environment. Use the same id your application uses for that user.

Just in time

WorldVisa allows you to create a subscriber automatically at the moment a notification is triggered. If the subscriber doesn’t already exist, WorldVisa uses the information provided in the workflow trigger to create the subscriber on the fly. If the subscriber exists, WorldVisa updates the stored data with the latest values. This approach is useful when:
  • Your system does not store subscriber profiles ahead of time.
  • Notifications are sent during real-time events like sign-ups or transactions.
  • You want to keep the creation and delivery logic tightly coupled.

Ahead of trigger

Alternatively, you can create and store subscriber profiles ahead of time - typically during onboarding, registration, or data sync events. This approach allows you to manage subscriber preferences, enrich profiles, and inspect delivery readiness before any notification is triggered.
This is recommended when:
  • You want to decouple user creation from notification logic.
  • You rely on persistent user data or prefer strict validation before delivery.
  • You plan to use advanced segmentation or preference-based delivery.

Where to manage subscriber data

Subscriber data in WorldVisa can be managed from the WorldVisa dashboard or using the Subscribers API. Both offer full access to view, update, and organize subscriber profiles, but they serve different use cases depending on your requirements.
The WorldVisa dashboard provides a visual interface for exploring and editing subscriber data. It’s useful for:
  • Searching and filtering subscribers by ID, email, phone and name.
  • Inspecting user profiles, including structured fields, custom data, channel preferences.
  • Managing channel credentials, such as push device tokens and chat provider endpoints, from the subscriber’s Credentials tab.
  • Performing manual updates or troubleshooting delivery issues
This is ideal for non technical team members responsible for managing subscribers or teams that want to audit or manage subscriber data without relying on code.

Subscriber preferences and personalization

WorldVisa allows each subscriber to define how they want to receive notifications. These preferences influence both the delivery channels and the types of messages a subscriber will receive.

Global preferences

Subscribers can configure preferences that apply across all workflows. These include:
  • Opting in or out of specific channels, for example, email, SMS, push, or in-app
  • Disabling notifications altogether
These global settings act as a default and are respected unless explicitly overridden in specific workflows.

Subscriber workflow specific preferences

In some cases, a subscriber may want to receive certain notifications but only through specific channels. WorldVisa supports fine-grained overrides at the workflow level. This allows you to:
  • Adjust channel preferences per notification type
  • Honor granular user choices while maintaining global defaults

Template personalization

Subscriber data, both structured fields such as firstName, email and custom data can be used to personalize templates. This enables dynamic content such as:
  • Greeting users by name
  • Including location-based content
  • Adjusting language or tone based on locale or membership level
Subscriber preferences and metadata personalization ensure that each subscriber receives relevant, well-targeted messages through the channels they care about.

Frequently asked questions

These are some of the most frequently asked questions about subscribers in WorldVisa.
Yes, two subscribers can have the same email address, phone number, or any other attributes. However, each subscriber must have a unique subscriberId.
No, you don’t need to use the same subscriberId as the system userId. You can use any unique ID as subscriberId. WorldVisa recommends using userId as subscriberId to avoid any confusion. One possible pattern is auth0|userId as a value for subscriberId.
No, a notification cannot be sent without adding a subscriber. A subscriber is an entity to which notification messages are sent. You must add a subscriber to WorldVisa before triggering the workflow.
Store credentials after creating the subscriber with PUT /v1/subscribers/{subscriberId}/credentials. Pass providerId, integrationIdentifier, and the provider-specific credentials object.
For most apps, rely on just-in-time (JIT) creation when you trigger workflows. WorldVisa upserts subscriber details on every trigger, so passing to: { subscriberId, email, firstName, locale, timezone } keeps profiles up to date without separate create or update calls.Create subscribers ahead of time when you need to manage preferences, enrich profiles, or inspect delivery readiness before any notification is sent - for example during onboarding or bulk migration. See Just in time and Ahead of trigger for both patterns.