Migração SDK 2.0.x para o novo SDK 2.1.9
A nova versão 2.1.9 do SDK iOS corresponde a melhorias e ajustes sendo liberados publicamente em outubro/2021.
Melhoria e ajustes no SDK 2.1.9:
-
Melhor comunicação com o backend Zoop. O novo suporte as operações "pós-charge" torna o SDK Android mais confiável, resiliente a erros e mais performático na resposta da operação;
-
Melhor gerenciamento das conexões de rede e bluetooth;
-
Melhora no serviço de mensagens de recibo via SMS;
-
Melhora na segurança de dados sensíveis;
-
Compatibilidade 100% com novo adquirente REDE;
-
Preparação da base sistêmica e disponibilização dos métodos para uso de Pix;
-
Versão disponível no gerenciador de dependência Cocoapods;
-
Correção de diversos bugs menores, tornando a experiência de uso do SDK mais fluída e resiliente.
-
Tipo de pagamento Voucher adicionado.
-
Melhorias no metodo Charge possibilitando o envio de metadado e referência ID.
O que devo considerar ao migrar para o novo SDK?
Na sua activity que implementa o protocolo TerminalPaymentProtocol, que você já usa para a função de charge, você precisará implementar os métodos adicionais:
@objc func pixPaymentSuccessful(var1: AnyObject)
@objc func pixPaymentFailed(var1: AnyObject)
Estes métodos serão requeridos para receber retorno das transações Pix, mas já deverão estar marcados no seu código como implementados, ainda que vazios neste primeiro momento.
-
Se possuir implementado o método paymentDuplicated() em seu controller de charge, este método deixou de ser exigido. O controle de pagamento duplicado dentro de até 1 min (mesmo valor, mesma maquininha) passou a ser controlado pelo retorno de paymentFailed(). Transfira o controle do método obsoleto para o tratamento de paymentFailed(). Caso não tenha corpo de código definido nesse método paymentDuplicated() e era mantido no código para evitar erro de build, pode removê-lo com segurança da sua implementação.
-
No controller que implementa o protocolo VoidTransactionProtocol, que é utilizada para a função de estorno, será necessário implementar o método adicional:
@objc func voidPixTransactionList(var1: AnyObject)
Este método será requerido para receber a listagem de transações Pix , mas já deve estar marcado no código como implementado, ainda que vazio neste primeiro momento.
Indicador "conexão liberada". Este indicador recebido via callback do método showMessage() no controller que implementa o protocolo ApplicationDisplayProtocol que indica o ponto exato em que a operação no backend está dada como concluída (sucesso ou falha), e o SDK já executou a desconexão segura do backend e o encerramento da maquininha (terminal), não havendo mais nenhuma operação restante a ser executada. Com isto é possível seguramente seguir com o processo no seu app sem correr risco de que alguma operação tenha ficado pendente no SDK. Este é um indicador "opcional", sem a necessidade de depender deste, mantendo a forma como monitora atualmente a finalização da operação retornada pelo SDK (seja observando mensagem de remover cartão ou imediatamente após o recebimento do callback paymentSuccess/paymentFailed/voidSuccess/voidFailed), entretanto, caso use o SDK como "bridge" com outra aplicação híbrida (por exemplo, React native) poderá ter no uso deste indicador um ponto seguro para interrupção da tarefa de pagamento, e o retorno seguro para seu aplicativo.
Sobre Pix
As funcionalidades do Pix ainda não foram liberadas.
Updated over 1 year ago