3.1 KiB
3.1 KiB
Spec 024 — Card cliente → FOSS → OpenPanel (provisionamento)
Roger · 2026-06-17
O teu raciocínio está correto
- Card do cliente (Desk / portal) — recolhe dados mínimos do comprador.
- FOSSBilling — cria cliente + pedido + activa produto hosting.
- OpenPanel — recebe API call do FOSS (
createAccount) e cria user hosting. - pfSense — não cria conta; só encaminha tráfego WAN → Traefik → VM123.
Internet → 95.216.14.146 (pfSense WAN)
→ NAT :80/:443 → 10.10.10.114 (Traefik)
→ financeiro.ligbox.com.br/foss|/odoo → 10.10.10.123
→ openpanel.ligbox.com.br → 10.10.10.123:2083
NAT pfSense já existente (não precisa duplicar):
| Regra | WAN | Destino |
|---|---|---|
| Traefik HTTP | 80 | 10.10.10.114 |
| Traefik HTTPS | 443 | 10.10.10.114 |
Novos hostnames só precisam de DNS Cloudflare → mesmo IP público.
Campos obrigatórios no card (→ FOSS → OpenPanel)
| Campo no card | Vai para FOSSBilling | Vai para OpenPanel API | Notas |
|---|---|---|---|
Cliente email |
email |
Login/recuperação | |
| nome / empresa | Cliente first_name / company |
— | Facturação |
| domínio | Opcional no produto | gera username (7 chars + dígito) |
ex: cliente1.com → user cliente1x |
| senha painel | Order / hosting password | password |
Senha OpenPanel user |
| plano | Product / plan_name |
plan_name |
Deve coincidir com plano OpenPanel |
| CPF/CNPJ | Cliente custom field | — | Fiscal (Odoo fase 2) |
| telefone | Cliente phone |
— | Suporte |
Plano OpenPanel criado (VM123)
| name | id | Uso |
|---|---|---|
ligbox-site-cms |
3 | Site/CMS Spec 018 |
Standard plan |
1 | Testes |
Developer Plus |
2 | Maior |
FOSS product deve usar plan_name = ligbox-site-cms (exacto).
Config FOSSBilling → Server OpenPanel
Admin FOSS → System → Hosting plans → New server
| Campo | Valor |
|---|---|
| Manager | OpenPanel |
| Hostname | 10.10.10.123 |
| Port | 18087 (bridge Community) — não usar 2087 na Community |
| Secure | No (HTTP bridge interno) |
| Username | ligboxadmin |
| Password | LbOpen805353 |
Community: instalar bridge com
install-openpanel-community-bridge.sh. Enterprise: port2087SSL Yes.
Test connection → depois associar produto hosting ao server + plano ligbox-site-cms.
Fluxo automático (pedido pago)
Card cliente (email, domínio, plano, senha)
→ FOSSBilling: create client + order
→ FOSSBilling: activate hosting
→ OpenPanel.php: POST /api/users
{ email, username, password, plan_name }
→ OpenPanel: conta hosting criada
→ Email cliente com URL openpanel.ligbox.com.br
O que o Desk precisa (Spec 023 fase 2)
No card Serviços / Site CMS:
client_email*client_name*domain* (para username OpenPanel)hosting_plan* (dropdown: ligbox-site-cms)panel_password* (ou gerar)foss_client_id(após sync)openpanel_username(read-only após provision)