White-label portal with custom domain and embedded checkout.
Magic link, password or SSO. Custom domain with automatic Let's Encrypt. 11 configurable sections. Multi-user per billing account.
Feature

100%
white-label
11
configurable sections
3
auth methods
Let's Encrypt
automatic SSL
Auth methods, choose per organization
Magic Link
Customer enters email, receives access link. Token expires in 15 minutes. No password to remember.
- Encrypted token (verificationToken)
- Origin validation
- Access logs
Password
Customer sets password on first access. bcrypt hash. Configurable complexity policy.
- Reset by email
- Failed login attempts tracked (auto-block)
- Force reset via API
SSO
Integration with the customer's platform SSO. External token via externalId in PortalUser.
- Skip password flow
- Identification via OAuth/SAML
- Automatic provisioning
2FA (optional)
TOTP via Google Authenticator, Authy, etc. Optional per user, mandatory per role.
- Standard TOTP
- Optional per user
- Configurable mandatory per role
What customers can do in the portal
Subscriptions
Plan, cycle, add-ons. Change, pause, cancel with proration preview.
Explore subscriptionsCreate authenticated portal session (deep link)
bash
curl -X POST https://api.billing.kobana.com.br/v1/portal/sessions \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"billing_account_id": "ba_abc123",
"return_url": "https://app.yourcompany.com/dashboard"
}'response
{
"url": "https://portal.yourcompany.com/s/abc123xyz",
"expires_at": "2026-06-06T15:30:00Z"
}