3.8.5
- Adiciona suporte ao protocolo HMAC na ativação do terminal
- Adiciona novo parâmetro na utilização do TmsClient
- Atualiza versão das bibliotecas
02/01/2018
Atualização dos Comprovantes. Comprovante default do SDK WINDOWS e comprovantes exemplos.
3.9.4
- Segmentação PAT.
- Envio do campo InstallmentType , era enviado como “1” , porém alteramos para “none”.
- Envio de novo campo discricionário do parceiro “arquivo partner.txt.
- Envio de novos campos relativos a informações do TEF.
- Envio do novo produto débito da Master (DMC).
- Nova tag no header identificando o Stone Code (segurança).
- Validação de retirada do cartão antes da conclusão do processo de pagamento (Apenas chip).
- Pagamento por NFC via Wallet Apple e Samsung.
Exemplo de utilização do Método para implementação do PAT
Devido a uma exigência do ministério do trabalho, o Programa de Alimentação do Trabalhador, não permite utilizar cartões do tipo Voucher (Alimentação, Refeição, Combustível, Cultura e etc) para pagamento de bebidas alcoólicas e cigarro. É mandatório a implementação deste método para autoatendimento de venda de produtos.
IAuthorizationReport report = authorizer.Authorize(
new TransactionEntry
{
InitiatorTransactionKey = "30042021-" + Guid.NewGuid().ToString("N"),
Amount = 1,
CaptureTransaction = true,
Type = AccountType.Underfined,
HasAlcoholicDrink = false
},
out response);
3.9.4.1
-
Novo comando de mensagem com quebra de linha (3.3.4. Comando “DEX” na abecs), esse comando permite escrever mais linhas no pinpad e foi usado para gerar um menu como da demonstração.
-
Monta o menu "Selecione:", "F1-Aproximacao", "F2-Chip" , "F3 - Tarja"e, monta o menu "F1 - Credito", "F2 - Debito", "F3 - Voucher"
Exemplo de utilização do Método
public static IAuthorizationReport Authorize(ICardPaymentAuthorizer authorizer)
{
decimal amount = 0.2m;
ITransactionEntry transaction = new TransactionEntry
{
InitiatorTransactionKey = "30042021-" + Guid.NewGuid().ToString("N"),
CaptureTransaction = true,
Type = AccountType.Undefined,
Amount = amount
};
PinpadKeyCode CardTypeSelected;
do
{ // Monta o menu "Selecione:", "F1-Aproximacao", "F2-Chip"
authorizer.PinpadFacade.Display.ShowMultilineMessage("Selecione:", "F1-Aproximacao", "F2-Chip");
CardTypeSelected = authorizer.PinpadFacade.Keyboard.GetKey();
if (CardTypeSelected != PinpadKeyCode.Function1 && CardTypeSelected != PinpadKeyCode.Function2)
{
authorizer.PinpadFacade.Display.ShowMessageWithTimer("Opcao incorreta!", DisplayPaddingType.Center);
}
} while (CardTypeSelected != PinpadKeyCode.Function1 && CardTypeSelected != PinpadKeyCode.Function2);
if (CardTypeSelected == PinpadKeyCode.Function1)
{
bool keyCodeNotPress = true;
do
{ // Monta o segundo menu "Selecione:", "F1 - Credito", "F2 - Debito", "F3 - Voucher"
authorizer.PinpadFacade.Display.ShowMultilineMessage("Selecione:", "F1 - Credito", "F2 - Debito", "F3 - Voucher");
var key = authorizer.PinpadFacade.Keyboard.GetKey();
switch (key)
{
case PinpadKeyCode.Function1:
transaction.Type = AccountType.Credit;
keyCodeNotPress = false;
break;
case PinpadKeyCode.Function2:
case PinpadKeyCode.Function3:
transaction.Type = AccountType.Debit;
keyCodeNotPress = false;
break;
default:
authorizer.PinpadFacade.Display.ShowMessageWithTimer("Opcao incorreta!", DisplayPaddingType.Center);
break;
}
} while (keyCodeNotPress);
}
// metodo autorizador padrão
ResponseStatus response;
IAuthorizationReport report = authorizer.Authorize(
transaction,
out response);
return report;
}
3.9.4.2
- retirada da TAG 9F1E Master
3.9.4.3
*Esse pacote tem o envio do campo “Short name” via activate.
Este método vai permitir que o SDK puxe a informação do stone code do cliente junto com o nome do parceiro. Desta forma na aplicação do parceiro esse método tem que estar automatizado que quando for ativado um cliente encarteirado pela parceria, tem que vir o nome do parceiro para complementar o campo “Short Name”.
Exemplo:
partnerName: “VendPago 3.1.1”
partnerName: “PowerVending 2.4.3”
partnerName: “Lavanderia60min 1.8.5”
3.9.4.4
- Neste pacote fizemos a alteração do tamanho do campo RecordId para an..A2
- Retiramos a TAG da Master 9F1D.
3.9.4.5
- Neste pacote incluimos no TransactionResponse.AuthorisationCode. Código de autorização retornado pelo emissor.
- Homologação do IPP 320 - Criação do Fallback em transações com NFC com a bandeira Elo para transações com Chip.
- Construção do Sysname = sistema do AutoTEF / "partnername" e Shortname = Nome fantasia ( limitar em 22 caracteres)
3.9.4.6
- Concatenação do sysname + Shortname. - desfeito essa construção.
- construção do Sysname = sistema do AutoTEF / "partnername" e Shortname = Nome fantasia
- Aumento do tempo de resposta do autorizador no Pinpad.
4.0
- Poi Report Transactions 3.1 é uma aplicação Stone responsável pelo recebimento dos reports (telemetria) dos terminais de pagamento. O monitoramento desses dados, possibilita a identificação de problemas específicos em terminais e, posteriormente, ações proativas visando a resolução do problema de maneira eficiente e assertiva, por exemplo transações negadas offline;
- Framework .net Standard 2.0, Upgrade no framework para .NET Standard 2.0;
- Carga de tabela v7.1 (DE55 por carga de tabela) - Enviar as TAGs mandatórias e opcionais do DE55 por bandeira, assim como adaptação dos tamanhos e tipos dos campos ao padrão ABECS 2.12+;
- Captura posterior: Sodexo / Ticket foi desenvolvida por exigência das bandeiras na certificação. As bandeiras Voucher Ticket e Sodexo exigem, por regulação, que as transações com seus produtos passem a enviar a transação de Captura. A captura é uma confirmação da transação. Desta forma a transação fica dividida em duas partes:
1 - A autorização junto à bandeira - onde é consultado se há saldo;
2 - A captura da transação - onde o valor é efetivamente debitado da conta do portador do cartão. - ITK gerado pelo SDK. (Padrão Spec TEF.). Nesta versão, o ITK passa a ser gerado automaticamente pela SDK, removendo esta responsabilidade do Parceiro.
4.1
Features:
Homologação do raspberry PI;
Implementação de captura por PDV (Pagamento, cancelamento e etc);
Menu ABECS (Mnu);
Aceite de transações com cartões pré-pago;
Assinatura do pacote com certificado Stone;
Aplicação do ofuscador de código.
Débito técnico:
Geração de cupom pelo SDK;
Correção do nome do produto da bandeira no cupom - correlacionando o RecIdx com o produto na CardBrands);
Correção de possível vulnerabilidade SSRF;
Melhoria do comando comando GTS, utilização excessiva no código;
Remove log em Poi Report 2.0;
Alterar o endpoint do TMS de produção pela descontinuação Poi Report 2.0.
4.2:
Feature:
- PIX
Débitos Técnicos:
- Melhoria da lógica do TMT;
- Resolução de transações nas transações ELO NFC;
- Incluímos Reason Code das transações negadas Offline, transações negadas entre o cartão e o Pinpad;
- Correções de bug em transações de voucher;
- Correção no formato do ITK;
- Melhoria nos retornos da API para aplicação;
- Correção das transações irem capturadas e autorizadas, sem ser com as bandeiras Sodexo e Ticket.
Homologação do terminal PPC 940 e Lane 3600.