Deploy a Branded Point
Deploy your branded SP token, the supporting CollateralVault and PSPVault, and the price oracle — end to end, in one wizard. Plan on 5–10 minutes for testnet, longer for mainnet (chain coordination).
Before You Start
Check the Prerequisites. Brand names should be lowercase alphanumeric — they're used as on-chain identifiers and database keys.
The Deploy Wizard
The Studio onboarding wizard walks you through nine steps. Your progress is persisted server-side, so closing the browser mid-deploy doesn't lose state — sign back in to resume.
Sign in with your email; verify the 6-digit code.
Connect your wallet. This wallet becomes the holder of your initial operational roles.
Create your organization. Name, website, description.
Choose your chain. Base Sepolia is recommended for your first deploy.
Configure your token. Name, symbol, description, logo URL, website URL.
Trigger deploy. The Studio API queues a deployment task on your chain.
Watch progress. The UI polls deployment status every 2 seconds; stages are persisted.
Confirm contracts. Review contract addresses and BaseScan (or equivalent) verification links.
Land on the dashboard at
/.
What Gets Created
Factory
UUPS proxy
Mints and burns your branded SP against collateral; gates whitelists
Points
UUPS proxy
Your ERC-20 branded SP token; transfer-restricted by default
CollateralVault
UUPS proxy
Holds the collateral asset (e.g., USDC) backing your SP
PSPVault
UUPS proxy
Pending SP escrow for your campaigns
Oracle
UUPS proxy
Optional. Price oracle for your collateral asset
Spree's executor service then auto-grants your deployer wallet:
MANAGER_ROLEon the FactoryCAMPAIGN_ADMIN_ROLE,ISSUING_ADMIN_ROLE,SETTLEMENT_ADMIN_ROLE,TRANSFER_ADMIN_ROLEon the PSPVault
You're ready to operate.
Same Operation, Three Ways
Studio UI
/onboarding wizard
SDK
ClientOnboarding.deploy({...}) from @spree-finance/spree-evm-sdk
HTTP API
POST /api/v1/client-onboarding/deploy, then poll GET /v1/client-onboarding/tasks/:taskId
The HTTP API path is useful for automated infrastructure provisioning — you can drive a deploy from CI/CD or a backend script.
Troubleshooting
Deploy hangs. Sign out and sign back in; the wizard resumes from the last persisted step. Deployment task status is also queryable via
GET /v1/client-onboarding/tasks/:taskId.Wallet not funded. Use the chain's faucet (see Prerequisites). The deploy transaction needs enough gas for the full sequence — budget conservatively.
Wrong chain selected. Sign out and restart; the wizard advances by chain so you can't accidentally redeploy on the wrong one.
Related
Roles & Access — what each auto-granted role enables
Whitelist Management — first thing to set up after deploy
Campaigns & Pending SP — first campaign walkthrough
Last updated