Merchant Management
Invite merchants, monitor onboarding, and manage access.
Inviting Merchants
Partners add merchants through an invite token system. Each invite is a unique URL that a merchant opens to begin onboarding.
How Invites Work
Generate an invite
From the partner portal (or admin panel), create a new invite. You can configure:
- Max uses — how many merchants can use this invite (default: 1). Set higher for bulk onboarding.
- Expiry date — optional. After this date the invite link stops working.
Share the invite link
Send the link to the merchant via email, messaging, or in person. The URL contains the invite token which ties the merchant to your partner on sign-up.
Merchant opens the link and signs up
The merchant authenticates with their wallet (Sequence embedded or external EVM), completes their profile, and is automatically assigned to your partner.
Invite is consumed
The invite's used_count increments. When used_count reaches max_uses, the invite can no longer be used.
merchants_can_invite_merchants enabled, existing merchants can also generate invite links to onboard other merchants under the same partner.Invite States
| State | Meaning |
|---|---|
| Active | used_count < max_uses and not expired or revoked. |
| Exhausted | used_count >= max_uses. No more sign-ups accepted. |
| Expired | Current date is past expires_at. |
| Revoked | Manually revoked by an admin. revoked_at is set. |
Onboarding Flow
When a merchant opens an invite link, they go through these steps:
- Wallet connection — authenticate with Sequence (creates an embedded wallet) or connect an external EVM wallet.
- Profile setup — enter display name, email, business name, country, and optional fields (phone, website, Instagram, industry).
- Assignment — a
MerchantPartnerAssignmentrecord is created, linking the merchant to your partner with rolemanagedand statusactive. - Onboarding status — changes from
incompletetocompleteonce the profile is saved.
Viewing Merchant Status
The partner portal's Merchants page lists all merchants assigned to your partner. Each entry shows:
- Display name and business name
- Email and phone
- Onboarding status (
completeorincomplete) - Account status (
activeordisabled) - Wallet address and wallet type
- Date created
Disabling and Enabling Merchants
Admins can disable a merchant to prevent them from creating new payment requests. Disabling a merchant:
- Sets
disabled: trueand records adisabled_attimestamp. - Blocks the merchant from creating new requests. Existing in-progress requests are unaffected.
- Skips the merchant during recurring billing (the cron job checks
merchant.disabledbefore charging). - Logs the action in the admin audit trail for accountability.
To re-enable a merchant, an admin sets disabled: false. The merchant can immediately resume creating requests.