+ Servidor de e-mail (SMTP) e WhatsApp (Twilio) usados pelo sistema +
+SECRET_KEY_BASE do servidor mudou).
+ Digite novamente e salve. Enquanto isso o sistema usa o que está no arquivo .env.
+ + <%= pluralize(@config.errors.count, 'erro', 'erros') %> encontrado<%= @config.errors.count > 1 ? 's' : '' %>: +
++ Usado no envio de extratos, avisos de pagamento e recuperação de senha +
+587 para STARTTLS (padrão) ou 465 para SSL direto.
++ No Gmail/Google Workspace use uma Senha de app de 16 caracteres, + não a senha da conta. +
+Em branco, usa o próprio usuário do SMTP.
++ Envia o aviso de pagamento fechado e de pagamento efetuado para o motorista +
++ Credenciais em Twilio Console → Account Info +
++ Precisa ser o número do Sandbox ou um Sender aprovado no Twilio — + não dá para usar um número de WhatsApp comum. +
+
+ Sandbox do Twilio: antes do primeiro envio, o
+ número que vai receber precisa mandar join <sua-palavra>
+ no WhatsApp para o número do sandbox. Sem esse opt-in o Twilio recusa com o erro 63003/63015.
+
+ Para onde vão os testes abaixo e os avisos destinados à administração +
+Com DDD. É gravado no formato internacional (+55…).
++ Os testes salvam as alterações antes de enviar e mostram o erro exato retornado + pelo servidor de e-mail ou pelo Twilio. +
+Notificações e E-mail
++ Servidor de e-mail (SMTP), WhatsApp via Twilio e os contatos que recebem os avisos da administração +
+<%= vazio %>
+<%= moeda(@valor_estimado) %>
+ <%# "Atendidas" = concluídas + falhadas (motorista foi ao local e fechou + a visita). É a mesma base que a consolidação paga, por isso o rótulo + NÃO pode voltar a dizer "concluídas": o valor acima inclui as falhas. %>- <%= @entregas_pagas %> entregas concluídas + <%= @entregas_atendidas %> entregas atendidas +
++ <%= @entregas_pagas %> concluídas · <%= @entregas_falhadas %> falhadas
Nenhuma entrega concluída neste período
-Entregas atendidas × preço da entrega
+ <%= render 'ranking_motoristas', + itens: @motoristas, + vazio: 'Nenhuma entrega atendida neste período' %> +Valor fechado nas consolidações do período
+ <%= render 'ranking_motoristas', + itens: @ranking_consolidado, + vazio: 'Nenhuma consolidação finalizada neste período' %> +