Account Setup
Message Science supports direct customers and agency customers.
Account setup supports both admin-assisted setup and direct customer self-serve signup. Message Science admins can create customer records, create groups/sub-accounts, and invite admins, customer colleagues, and direct-pay group users by email. Invitees accept access through the signed-in /accept-invitation flow. Authenticated new users can also create a direct customer from /signup; that flow creates the Stripe customer mapping, starts the account with zero float, and opens Stripe Billing Portal for company billing details.
Direct customers
Section titled “Direct customers”Direct customers have one default group. Users can manage resources inside their customer scope according to their assigned role.
New direct customers can be created by an admin or by a signed-in user through /signup. Self-serve accounts create the signed-in user as the owner, create the default group, and require Stripe payment confirmation before any paid provisioning or domain purchase can run. Stripe remains the source of truth for billing name, address, tax IDs, invoice details, and payment methods.
Agencies
Section titled “Agencies”Agencies organize work into sub-accounts. Each sub-account is backed by a group in the data model.
Sub-accounts can be:
agency_paid: usage rolls up to the agency billing owner.direct_pay: the sub-account owner pays directly and is scoped only to that sub-account.
Direct-pay client access is invite-based: create the sub-account, mark it direct_pay, provide the client’s billing email or existing Stripe customer id, and invite the client owner. The direct-pay group gets its own Stripe customer mapping, and the client owner can open Stripe Billing Portal from /billing to maintain company details, tax IDs, payment methods, and invoice profile data.
Agency owners/admins can convert a direct account to agency mode from settings. Conversion back to direct is blocked while multiple active sub-accounts or direct-pay billing owners exist.
Admins
Section titled “Admins”Admins can see all customers and are responsible for quotas, operational review, and exception handling in v1. Additional admins can be invited by email; known Clerk user ID upsert remains an emergency fallback.