Multi-brand architecture
Brand vs store
Brand (top-level entity)
- Represents a merchant or business
- Has own customers, transactions, staff
- Completely isolated from other brands
- Can have multiple stores (optional)
Store (optional sub-division)
- Sub-division within a brand
- Used for multiple physical locations or sales channels
- Shares brand identity, gateways, and staff
- Separate product catalogs and reporting
- Brand: “Acme Retail” (the company)
- Store 1: New York location
- Store 2: Los Angeles location
- Store 3: Online shop
Key features
Data isolation
- One brand’s data is invisible to other brands
- No cross-brand customer leakage
- No shared transaction history
- Complete privacy guarantee
White-labeling
Each brand can customize:- Logo and branding
- Color scheme
- Email templates
- Checkout appearance
- Landing page
- Custom domain
Independent configuration
Each brand manages independently:- Payment gateways (Stripe, PayPal, bKash, etc.)
- Currencies and exchange rates
- Email settings (SMTP, templates)
- SMS settings
- User roles and permissions
- Webhooks and API keys
Use cases
Creating a brand
Via admin panel
- Log in to OwnPay admin
- Go to People > Brands
- Click Add Brand
- Fill in: brand name, currency, timezone, contact email
- Click Create Brand
Initial setup after creation
- Assign yourself as brand manager
- Configure payment gateway (Gateways section)
- Customize branding (Appearance section)
- Add staff (People > Staff)
- Set up webhook (if integrating)
- Create payment links
Brand settings
Basic settings
- Name - Display name
- Slug - URL-safe identifier
- Currency - Default currency (USD, EUR, GBP, etc.)
- Timezone - For reports and timestamps
- Contact Email - Brand contact email
Branding
- Logo - Brand image
- Favicon - Browser tab icon
- Color Scheme - Primary color for checkout
- Landing Page - Custom HTML/text
- Email Templates - Customized email designs
Advanced settings
- Custom Domain - Point to your own domain
- Webhook URL - For payment notifications
- API Keys - For programmatic access
- Metadata - Custom data storage
Access control
Best practices
- Use clear, consistent naming for brands
- Use appropriate timezones for accurate reporting
- Set correct currencies upfront
- Assign limited roles to staff
- Rotate API keys regularly
- Monitor access logs for unusual activity
Further reading
- Creating a brand - Step-by-step guide to setting up a new brand
- Brand settings - Customize logos, colors, and checkout appearance
- Custom domains - Map each brand to its own domain