Minimum requirements:
- .NET Framework 4.7.2
- Database in SQL Server 2014 or above
- Sage 2021 version or above
Introdução
O SmartPay é o produto que se divide em dois sub-produtos
Débitos Diretos – permite a geração do ficheiro para importação no banco dos documentos selecionados, e a importação da resposta do banco para a geração dos recibos
Multibancos – permite a geração de referencias multibanco documento a documento (ou em “bolo“), e a verificação da resposta, caso esteja paga será lançado o respetivo recibo.
Manual de instalação
O processo de instalação da extensibilidade é bastante simples.
Pedimos ao utilizador que siga os passos abaixo indicados para instalar a extensibilidade SmartPay.
Para a utilização da extensibilidade a base de dados deve correr numa versão SQL Server 2016 ou superior.
Passo 1 – Instalação da extensibilidade
Executar o exe de instalação do produto como administrador .

Passo 2 – Configurar o Sage
Abrir o BackOffice do Sage > Clicar no botão do menu > Clicar no botão “Personalização” > Clicar no botão “Parametrizações funcionais”

Ao abrir a janela dos “Parâmetros”, clicar no botão “Integração de Dados”.

No sub-menu “Extensibilidade” preencher o campo “Ponto de entrada para a classe ISageExtender:” com o seguinte texto sem aspas.
“SmartDigit.SmartPay.Sage50c”
Alterar a opção “Carrega o módulo da extensibilidade em:” para a adequada.

Deve agora clicar no botão “Fechar e gravar” deverá depois reiniciar o Sage para as configurações serem aplicadas.
Manual de utilização Débitos Diretos
A extensibilidade foi desenvolvida com o foco de ser simples e intuitiva, no entanto abaixo pode encontrar as descrições das funcionalidades.
Nos parâmetros encontra as settings do SmartPay – Débitos Diretos

Provider : Deverá escolher o tipo de provider a gerar (por norma direto com os bancos deverá selecionar “Manual“)
ID de credor : Deverá pedir essa informação junto do banco
Contrato SEPA : Qual o tipo de contrato celebrado, ou CORE ou B2B (por norma o débito feito a clientes final usa o tipo CORE)
Tipos de pagamento : Quais os tipos de pagamento a válidos no momento da geração
Série : Qual a série a gerar
Banco : Qual o banco com o contrato celebrado
Conta: qual a conta do banco
Enviar Email : é enviado um email ao cliente com a indicação da cobrança dos documentos X na data Y
Documentos Origem : Tipo de documento usado para gerar o ficheiro de cobrança ao banco
Documentos Destino: Tipo de documento usado para gerar a resposta da cobrança do banco
Feitas as parametrizações devem garantir que os clientes a quem sejam debitados os valores por debito direto, têm configurado o separador débitos diretos da ficha do mesmo

Conta do Cliente: Conta bancaria do cliente criada no separador “Contas“
Referencia do ADD: Referencia que identifique este movimento/cliente
Data do acordo: Data a que celebrou o acordo
Estado: ativo/inativo
Tipo de movimento: Devem colocar sempre FIRST caso seja o primeiro debito a ser feito, os futuros a aplicação mudará automaticamente de First para Recurring
Caso existam documentos nos critérios feitos nos parâmetros, para os clientes com a informação preenchida, podem então gerar o ficheiro SEPA.
Para tal basta aceder à opção de menu Débitos diretos

Carregar em novo e será criado um novo dossier
vamos selecionar todos os documentos/clientes que pretendemos incluir no ficheiro do banco

Ao carregar em seguinte aparecerá um resumo dos totais, e carregar depois em finalizar será gerado o ficheiro para a pasta parametrizada nos parametros.
Por fim, quando tivermos o ficheiro de resposta do banco, basta ir novamente ao menu de débitos diretos e carregar em “processar“, escolhemos o ficheiro de resposta e a aplicação irá fazer os respetivos recibos.
Manual de utilização Multibancos
Nos parâmetros encontra as settings do SmartPay – Multibancos

Provider : Deverá escolher o tipo de provider a gerar as referencias multibanco
Campos extras : Deverá indicar o campo extra de documento a ser gravada a referencia (o campo extra é criado automaticamente pela extensibilidade)
Validade Referencia : Qual a validade da referencia, se pela data de vencimento ou por dias (0= 365 dias)
Assunto: Assunto do email
Enviar Email: é enviado um email ao cliente com a indicação da referencia (apenas enviado com o envio é pelo wizzard, caso seja documento a documento essa informação já pode ser impressa no próprio layout de venda)
Enviar Email cópia: para alem de enviar para o cliente, podem aqui indicar um email CC, para sempre que é enviado recebem copia do mesmo
Associação de documentos
Documentos Origem: Tipo de documento usado para gerar a referencia
Documentos Destino: Tipo de documento usado quando a referencia é paga
Série Destino : Tipo de série usado quando a referencia é paga
Mod. Pagamento: modo pagamento utilizado na geração do documento
Configuração do provider:
Dependendo do provider as settings podem modificar, devem pedir essa informação junto do provider. segue manual a explicar o procedimento de criar uma chave de backoffice para a ihthepay (instruções no seguinte link )
Tendo as configurações bem feitas podem agora fazer documento para o configurado nas settings.
Ao efetuar o documento e gravar, podem verificar que o campo extra “referencia”, irá ficar com a referencia ja atribuída “podendo colocar essa variável no layout para o cliente pagar o mesmo“

Caso pretendam enviar notificação a todos os clientes podem criar uma referencia de todos os documentos em aberto.
dessa forma á semelhança do que é feito nos debitos diretos, podem criar um dossier
Para tal basta aceder à opção de menu Multibancos

Carregar em novo e será criado um novo dossier
vamos selecionar todos os documentos/clientes que pretendemos incluir

Ao carregar em seguinte vai mostrar um pequeno resumo

Carregamos novamente em seguinte e vao ser geradas as referencias multibanco, uma por cada cliente e enviado o respetivo email de comunicação

Sempre que queiramos verificar se ja pagaram alguma referencia basta nos dossier carregar em processa
selecionar todos os documentos em aberto e irá verificar se os mesmos já foram ou não cobrados com sucesso. caso tenham sido pagas as referencias, então o addon irá fazer os recibos.

SmartPay – Avisos (envio de emails)

Existe agora a possibilidade de enviar periodicamente dois tipos de e-mail ao cliente:
- Pendentes – e-mail com os documentos em dívida do cliente;
- Extrato – e-mail com todo o extrato do cliente, incluindo débitos e créditos.
Para aceder às configurações, entre nos Parâmetros da aplicação. Está disponível um novo separador denominado “Avisos”.
As principais configurações disponíveis são:
- Ativo: define se o módulo se encontra ativo ou inativo;
- Tipo de e-mail: permite selecionar entre Pendentes ou Extrato. Cada tipo dispõe de um layout de e-mail predefinido;
- Conta de e-mail a usar: deve indicar o utilizador responsável pelo envio dos e-mails. Será utilizado o endereço de e-mail configurado nesse utilizador;
- Assunto: define o assunto do e-mail;
- Enviar e-mails: quando esta opção está ativa, os clientes recebem o respetivo e-mail;
- Enviar e-mails em cópia: permite indicar um endereço de e-mail a incluir em cópia;
- Corpo: corresponde ao corpo HTML do e-mail a enviar ao cliente. Está disponível o botão “Restaurar modelo predefinido”, que permite repor o modelo original;
- Query Builder: permite consultar e editar a query SQL utilizada para obter a lista de documentos.
No Query Builder, está disponível o botão “Cores da tabela...”, através do qual é possível personalizar a apresentação da tabela do relatório. É possível definir a cor de fundo do cabeçalho e das linhas, utilizar cores alternadas nas linhas e configurar a cor, o estilo e a espessura das bordas.
Adicionalmente, através do clique com o botão direito do rato sobre as linhas ou o cabeçalho, estão disponíveis várias opções de personalização, nomeadamente o alinhamento, tamanho, fonte, estilo e cor do texto. Existe também uma opção que permite ocultar uma coluna no relatório enviado ao cliente.
As colunas podem ainda ser redimensionadas diretamente na grelha.
O nome apresentado para cada coluna no relatório é definido diretamente na query, em cada campo retornado pelo SELECT, através da instrução AS [NOMECOLUNA].
Exemplo: CC.TotalAmount AS [Valor Total]
Algumas colunas são obrigatórias para o correto funcionamento da aplicação e, por esse motivo, o respetivo nome não deve ser alterado: EmailAddress; OrganizationName; CreateDate; DeferredPaymentDate; Doc
Caso pretenda apresentar uma destas colunas no relatório com uma designação diferente, deve manter a coluna original com o nome obrigatório e adicionar uma segunda ocorrência do mesmo campo no SELECT.
Na coluna duplicada, pode definir o nome pretendido através da instrução AS [NOMECOLUNA]. A coluna original deve depois ser ocultada para que não seja apresentada no relatório enviado ao cliente.
Exemplo:C.OrganizationName,C.OrganizationName AS [Cliente]
Neste caso, a coluna OrganizationName deve ser mantida na query por ser obrigatória, mas pode ser ocultada no relatório, ficando visível apenas a coluna Cliente.
A query predefinida é apresentada de seguida e pode ser adaptada de acordo com as necessidades. Por defeito, obtém todos os documentos pendentes dos clientes que tenham um endereço de e-mail configurado na respetiva ficha.
select
c.EmailAddress,
C.PartyID,
C.OrganizationName,
cc.ContractReferenceNumber,
cc.CreateDate,
cc.DeferredPaymentDate,
concat(CC.TransDocument, ' ',CC.TransSerial, '/',cast(CC.TransDocNumber as varchar (max))) as Doc,
CC.TransDocument,
CC.TransSerial,
CC.TransDocNumber,
CC.TotalAmount,
CC.TotalPendingAmount
from
CustomerLedgerAccount CC
Inner Join Customer C ON C.PartyID=CC.PartyID
where
CC.TotalPendingAmount<>0 and C.EmailAddress<>''
Devem também carregar em “Testar” e garantir que o mapeamento dos campos fica corretamente definido. Do lado esquerdo, devem indicar qual a coluna que corresponde ao e-mail e qual a coluna que corresponde ao ID do cliente.

Para que o envio seja automático, com a periodicidade pretendida, devem criar uma Task no Windows para o seguinte executável:
C:\ProgramData\Sage\SmartDigit\PAY\Extensibility\SmartPay.Service.exe
Podem utilizar os seguintes parâmetros:
-
-spProfileid:1– envia apenas o tipo de aviso correspondente ao perfil 1; -
-spProfileid:2– envia apenas o tipo de aviso correspondente ao perfil 2.
Caso não seja indicado nenhum parâmetro, serão enviados os dois tipos de avisos.

O ID de cada tipo de aviso pode ser consultado diretamente na janela dos Avisos.
