Projetos Força de Vendas Plus
Screenshots

Clique para ampliar

Projetos Força de Vendas Plus

ForçaVendasPlus é uma plataforma de força de vendas multiplataforma, com app mobile Delphi FMX para vendedores em campo, API REST em PHP 8.2+ como núcleo de negócio, painel web para empresas-clientes gerenciarem seus próprios cadastros e painel administrativo para a softhouse controlar as empresas licenciadas.

Materiais de Demonstração 1 arquivo
Destaques
Offline-first de verdade — o vendedor cadastra pedidos, consulta produtos e coleta código de barras mesmo sem internet; a sincronização com o servidor é explícita e sob controle do usuário, não uma dependência constante de conectividade.
Multiempresa com isolamento por api_key — a mesma API atende várias empresas-clientes, cada uma com sua própria chave de acesso emitida e controlada pelo painel admin da softhouse, sem exposição de credenciais de banco de dados.
Arquitetura em camadas com trilha de migração clara — a evolução de acesso direto a MySQL para uma API REST própria foi feita mantendo compatibilidade e um plano de migração documentado (que módulos ainda tocam banco direto, o que falta migrar), reduzindo

Tem dúvidas?

Falar no WhatsApp

Descrição
O ForçaVendasPlus é um sistema de automação de força de vendas (SFA — Sales Force Automation) composto por três frentes que se comunicam através de uma única API REST central:

Núcleo (API REST em PHP 8.2+) — concentra toda a regra de negócio, autenticação, geração de IDs/sequenciais e emissão de api_key por empresa. Expõe rotas para autenticação (login de usuário e de admin), empresas, dispositivos móveis, usuários/vendedores, condições de pagamento, clientes, produtos/embalagens, coletor de código de barras e pedidos com seus itens. A autenticação é feita por token Bearer (exceto login e validação de empresa, que usam api_key); cada empresa recebe uma api_key única, gerada pelo servidor e nunca aceita vinda do cliente. O banco de dados remoto é MySQL/MariaDB.

Painel Web Cliente — interface web para a empresa contratante gerenciar seus próprios cadastros (clientes, vendedores, produtos, condições de pagamento, pedidos etc.) sem depender do app mobile ou de intervenção da softhouse, usando a mesma API REST como backend.

Painel Web Admin — interface exclusiva da softhouse (RSC Sistemas) para cadastrar, ativar/desativar e gerenciar as empresas com acesso ao sistema, incluindo a emissão da api_key de cada empresa e o controle de licenciamento.

App Mobile (Delphi FireMonkey) — cliente offline-first para vendedores em campo, com foco em Android (plataforma padrão Android64), mas também compilável para Windows para desenvolvimento/testes. Mantém um banco SQLite local que espelha um subconjunto dos dados da API (clientes, vendedores, produtos, condições de pagamento) e permite operar sem internet: cadastro de pedidos, consulta de produtos, coleta de código de barras via leitor externo, e sincronização explícita (não automática) sob comando do usuário. A sincronização é bidirecional: baixa cadastros atualizados da API e envia pedidos, clientes novos e leituras de coletor pendentes. O login diário é local (offline), validado contra a base local; a autenticação na API só ocorre na ativação do dispositivo e sempre que uma sincronização precisa de um token novo (token mantido só em memória, nunca persistido).

Historicamente o app acessava o MySQL diretamente com credencial fixa embutida no binário; essa arquitetura foi substituída pela API REST como camada intermediária, trazendo hashing de senha, controle de acesso por token e centralização de regras de negócio que antes viviam espalhadas em SQL/Delphi.
Requisitos
Painel PHP (API + painel cliente + painel admin)
PHP 8.2 ou superior
Servidor web (Apache/Nginx) com suporte a PHP-FPM
Banco de dados MySQL/MariaDB (schema baseado em ForcaVendas0003.sql)
Extensões PHP: pdo_mysql, json, mbstring, openssl (hash de senha, geração de api_key)
HTTPS obrigatório (o app e os painéis trafegam token Bearer e api_key)
Ambiente de hospedagem com suporte a random_bytes para geração segura de api_key
App FMX (mobile)
Android 8.0 (API 26) ou superior, arquitetura ARM64 (Android64)
Espaço de armazenamento local para o banco SQLite (dbforcaplus.db) e seus dados sincronizados
Conexão com a internet apenas no momento da sincronização/ativação (uso diário funciona offline)
Leitor de código de barras externo, quando o recurso de coletor de dados for utilizado
Windows 10/11 apenas para o cenário de desenvolvimento/teste (não é o alvo de produção)
Requisitos de desenvolvimento e de uso
Desenvolvimento — App FMX:

RAD Studio / Delphi com suporte a FireMonkey (projeto na versão 20.3, framework FMX)
Pacotes FireDAC (SQLite) e UniDAC ainda presentes no .dproj por legado (não mais usados para conexão remota)
REST.Client/REST.Types + System.JSON para consumo da API (sem lib de marshaling)
SDK Android configurado no RAD Studio para deploy Android64
Desenvolvimento — Servidor PHP:

PHP 8.2+ com Composer para dependências
Banco MySQL/MariaDB acessível ao ambiente de desenvolvimento
Ferramenta de teste de API (Postman, com a collection ForcaVenda.postman_collection.json já documentando as rotas)
Ambiente separado (repositório próprio) do app Delphi
Uso — Operação diária:

Empresa precisa estar ativa e possuir api_key válida emitida pelo painel admin
Vendedor precisa ter o dispositivo ativado uma vez (CNPJ + api_key + login) antes do uso offline diário
Sincronização deve ser executada periodicamente pelo usuário para manter cadastros e pedidos atualizados entre app, painel cliente e servidor