Visão geral
Clientes
| CNPJ | Razão social | Status | API | Fiscal | Retag. | PDV | Liberado até | Último acesso | |
|---|---|---|---|---|---|---|---|---|---|
| {{ formatarCnpj(c.cnpj) }} |
{{ c.razao_social }}
{{ c.nome_fantasia }}
|
BLOQ EXP VENC OK | {{ c.versao_api_retaguarda || '—' }} | {{ c.versao_api_fiscal || '—' }} | {{ c.versao_retaguarda || '—' }} | {{ c.versao_pdv || '—' }} | {{ c.liberado_ate ? formatarData(c.liberado_ate) : '—' }} | {{ c.ultimo_acesso ? formatarDataHora(c.ultimo_acesso) : 'nunca' }} | |
| Nenhum cliente cadastrado | |||||||||
{{ form.id ? 'Editar cliente' : 'Novo cliente' }}
Módulos liberados
Cadastre servidor, terminais, caixas — dados de SSH ficam cifrados no banco.
Anotações livres sobre o cliente (suporta texto/markdown).
{{ d.conteudo }}
{{ erroForm }}
Logs de acesso
{{ logsCliente?.razao_social }} ({{ formatarCnpj(logsCliente?.cnpj) }})
| Data | App | Versão | IP | Hostname | Resultado |
|---|---|---|---|---|---|
| {{ formatarDataHora(l.data_consulta) }} | {{ l.app }} | {{ l.versao || '—' }} | {{ l.ip || '—' }} | {{ l.hostname || '—' }} | {{ l.resultado }} |
| Sem registros | |||||
📜 Cláusulas do Contrato
Cadastro das cláusulas que podem entrar nos contratos. Marque/desmarque em cada proposta.
| Ordem | Código | Título | Padrão | Sempre inclusa | Condicional | Ativa | Ações |
|---|---|---|---|---|---|---|---|
| {{ c.ordem }} | {{ c.codigo }} | {{ c.titulo }} | {{ c.padrao ? '✓' : '—' }} | {{ c.sempre_inclusa ? '🔒' : '—' }} | {{ c.condicional || '—' }} | {{ c.ativa ? '✓' : '✗' }} | |
| Nenhuma cláusula cadastrada. | |||||||
{{ clausula.id ? 'Editar Cláusula' : 'Nova Cláusula' }}
{{prazoImplantacaoDias}} · {{valorMigracao}} · {{pctDescontoPontualidade}} · {{mensalCheia}} · {{mensalComDesconto}} · {{economiaMensal}} · {{economiaAnual}}
🚀 Atualizar Cliente
Script PowerShell que atualiza todos os componentes do cliente para a última versão publicada.
Detecta automaticamente se está rodando no servidor (atualiza APIs + Tauri) ou em um terminal (só atualiza apps Tauri — terminal não tem API instalada).
- Para os serviços
3aSystem.ApiRetaguarda,3aSystem.ApiFiscale3aSystem.Agente - Faz backup das pastas das APIs com timestamp (
_backup_YYYYMMDD_HHMMSS) - Baixa as últimas versões direto do servidor de updates e extrai sobrescrevendo
- Preserva configurações locais:
appsettings.json,conf.ini, pastaCertificado/ - Reinstala Tauri Retaguarda e PDV via setup silencioso (
/S) - Reinicia os serviços e valida endpoints HTTP
:5000e:8001
{{ scriptAtualizar }}
Parâmetros opcionais
Salve o script como atualizar-cliente.ps1 e rode com flags pra controlar o que atualiza:
| -Modo Auto|Servidor|Terminal | Default Auto — detecta pelo que está instalado. Use Terminal pra forçar só apps Tauri (PCs de operador sem API) |
| -PularApis | Não atualiza as APIs (.NET) — só Tauri |
| -PularTauri | Não atualiza apps Tauri — só APIs |
| -SemBackup | Não cria backup das pastas (mais rápido) |
| -ServerUrl <url> | URL do servidor de updates (default: https://www.updates.3asystem.com.br) |
💳 Instalar TEF
Script PowerShell que instala/atualiza o serviço TEF PayGo (nossa API local
3aSystem.ApiTef + DLL PGWebLib) e/ou guia a instalação do Agente CliSiTef
da Software Express.
Instale só onde tem pinpad físico conectado. Não precisa nos terminais que só consomem NFC-e.
- Para serviço
3aSystem.ApiTefse estiver rodando - Backup em
C:\3aSystem\ApiTef.backup_YYYYMMDD_HHMMSS - Baixa
apitef-latest.zipdo servidor de updates e extrai emC:\3aSystem\ApiTef\ - Valida
DinoCommerce.ApiTef.exe+PGWebLib.dll - Instala NSSM (se ausente) e registra
3aSystem.ApiTefcomo serviço Windows AutoStart - Abre porta
8787/tcpno firewall (WebSocket local pro PDV) - Preserva
appsettings.jsonlocal ao atualizar - Inicia e valida
ws://127.0.0.1:8787
O CITEF/SiTef usa o Agente CliSiTef da Software Express — pacote de 3º, não redistribuído pela 3aSystem. O script abre a página oficial de downloads e mostra os passos manuais:
- Baixe em softwareexpress.com.br/downloads
- Instale como serviço (próximo → próximo → concluir). Escuta em
127.0.0.1:59002 - No Retaguarda → Terminais PDV → aba TEF: Provedor = CITEF, Ativo ✓
- No PDV → Config → aba CITEF → Testar Conexão
- Menu Admin SiTef → INSTALACAO → preencha Loja/Terminal/Endereço
{{ scriptInstalarTef }}
Parâmetros opcionais
| -Provedor PayGo|CITEF|Ambos | Default PayGo. Use CITEF pra abrir só a página da SoftExpress. Ambos instala PayGo + guia CITEF |
| -Desinstalar | Remove serviço 3aSystem.ApiTef, pasta de instalação e regra de firewall |
| -PastaInstalacao <path> | Default C:\3aSystem\ApiTef |
| -SemBackup | Não cria backup da pasta anterior |
| -ServerUrl <url> | Default https://www.updates.3asystem.com.br |
🏷️ Tabelas Fiscais
📤 Publicar nova versão {{ tfTipo }}
Faça upload do arquivo ncm_oficial_seed.sql gerado por
scripts/importar_ncm.py. Será ativado automaticamente
após o upload — clientes baixam na próxima checagem.
📋 Versões publicadas
| Status | Versão | Ato | Registros | SQL | Publicado em | Ações |
|---|---|---|---|---|---|---|
| ATIVA — | {{ v.versao }} | {{ v.ato_padrao || '—' }} | {{ (v.qtd_registros || 0).toLocaleString('pt-BR') }} | {{ formatarKB(v.sql_tamanho) }} | {{ new Date(v.criado_em).toLocaleString('pt-BR') }} |
Trocar senha
{{ msgSenha }}
📄 Propostas / Contratos
| Nº | Cliente | Plano | Mensal | Status | Data | |
|---|---|---|---|---|---|---|
| {{ p.numero }} | {{ p.nome_fantasia || p.razao_social }} {{ formatarCnpj(p.cnpj) }} |
{{ p.modulo }} · {{ p.hospedagem==='NUVEM'?'Nuvem':'Servidor cliente' }} · {{ p.usuarios }} usr | {{ moeda(p.mensal_total) }} | {{ p.status }} | {{ formatarData(p.criado_em) }} |
|
| Nenhuma proposta. Clique em "Nova Proposta". | ||||||
{{ prop.id ? 'Editar' : 'Nova' }} Proposta
Cláusulas marcadas entram no PDF do contrato (ordem definida no cadastro). Condicionais auto-marcam quando o módulo está ativo.
Suba o contrato assinado e outros documentos. Pode enviar várias versões — todas ficam guardadas.