using System;
using Cappta.Gp.Api.Com;
namespace CappAPIIntegration
{
class Program
{
static void Main(string[] args)
{
//Não esqueça da autenticação e do código para processar o pagamento aqui \o/
IRespostaOperacaoAprovada pagamentoAprovado = iteracaoTef as IRespostaOperacaoAprovada;
Console.WriteLine("Pagamento Aprovado =D");
Console.WriteLine(pagamentoAprovado.CupomCliente);
Console.WriteLine(pagamentoAprovado.CupomLojista);
Console.WriteLine("Deseja confirmar este pagamento? (S/N)");
ConsoleKeyInfo keyInfo = Console.ReadKey();
int resultadoFinalizacao = keyInfo.Key == ConsoleKey.S
? cappta.ConfirmarPagamentos()
: cappta.DesfazerPagamentos();
if (resultadoFinalizacao != 0)
{
Console.WriteLine("Não foi possível finalizar o pagamento. Código de erro {0}", resultado);
return;
}
}
}
}
program cappapiintegration;
uses Cappta_Gp_Api_Com_1_0_TLB, SysUtils;
var
cappta : IClienteCappta;
iteracaoTef : IIteracaoTef;
tipoIteracao : integer;
resultado : integer;
pagamentoAprovado : IRespostaOperacaoAprovada;
keyInfo : string;
begin
// -- Não esqueça de realizar a autenticação e iniciar uma operação tef aqui \o/ --
iteracaoTef := cappta.IterarOperacaoTef();
tipoIteracao := iteracaoTef.Get_TipoIteracao;
if tipoIteracao <> 1 then
begin
WriteLn('Não interessa nesse exemplo =p');
exit;
end
else
begin
pagamentoAprovado := (iteracaoTef as IRespostaOperacaoAprovada);
WriteLn('Pagamento Aprovado =D');
WriteLn(pagamentoAprovado.Get_CupomCliente);
WriteLn(pagamentoAprovado.Get_CupomLojista);
WriteLn('Deseja confirmar este pagamento? (S/N)');
ReadLn(Input, keyInfo);
if UpperCase(keyInfo) = 'S' then
begin
resultado := cappta.ConfirmarPagamentos;
end
else
begin
resultado := cappta.DesfazerPagamentos;
end;
if resultado <> 0 then
begin
WriteLn(Format('Não foi possível iniciar a operação. Código de erro %d', [resultado]));
exit;
end;
end;
end.
Imports Cappta.Gp.Api.Com
Imports Cappta.Gp.Api.Com.Model
Module Module1
Sub Main()
Dim cappta As New ClienteCappta()
Dim iteracaoTef As IIteracaoTef
Dim pagamentoAprovado As IRespostaOperacaoAprovada = iteracaoTef
Console.WriteLine("Pagamento Aprovado =D")
Console.WriteLine(pagamentoAprovado.CupomCliente)
Console.WriteLine(pagamentoAprovado.CupomLojista)
Console.WriteLine("Deseja confirmar este pagamento? (S/N)")
Dim keyInfo As ConsoleKeyInfo = Console.ReadKey()
Dim resultadoFinalizacao As Integer
If resultadoFinalizacao = keyInfo.Key = ConsoleKey.S Then
cappta.ConfirmarPagamentos()
Else
cappta.DesfazerPagamentos()
End If
If resultadoFinalizacao <> 0 Then
Console.WriteLine("Não foi possível finalizar o pagamento")
End If
End Sub
End Module
Imports Cappta.Gp.Api.Com
Imports Cappta.Gp.Api.Com.Model
Module Module1
Sub Main()
Dim cappta As New ClienteCappta()
Dim iteracaoTef As IIteracaoTef
Dim pagamentoAprovado As IRespostaOperacaoAprovada = iteracaoTef
Console.WriteLine("Pagamento Aprovado =D")
Console.WriteLine(pagamentoAprovado.CupomCliente)
Console.WriteLine(pagamentoAprovado.CupomLojista)
Console.WriteLine("Deseja confirmar este pagamento? (S/N)")
Dim keyInfo As ConsoleKeyInfo = Console.ReadKey()
Dim resultadoFinalizacao As Integer
If resultadoFinalizacao = keyInfo.Key = ConsoleKey.S Then
cappta.ConfirmarPagamentos()
Else
cappta.DesfazerPagamentos()
End If
If resultadoFinalizacao <> 0 Then
Console.WriteLine("Não foi possível finalizar o pagamento")
End If
End Sub
End Module
private void FinalizarPagamento()
{
if (processandoPagamento = false) {
return;
}
if (sessaoMultiTefEmAndamento) {
quantidadeCartoes--;
if (quantidadeCartoes > 0) {
return;
}
}
String mensagem = GerarMensagemTransacaoAprovada();
this.processandoPagamento = false;
this.sessaoMultiTefEmAndamento = false;
int dialogButton = JOptionPane.YES_NO_OPTION;
int dialogResult = JOptionPane.showConfirmDialog(null, mensagem + "?", "", dialogButton);
if (dialogResult == JOptionPane.YES_OPTION) {
cappta.confirmarPagamentos();
} else {
cappta.desfazerPagamentos();
}
}
Sempre que retornamos Operação Aprovada, ficamos aguardando a confirmação por parte da sua automação para finalizar a operação de pagamento
Caso o cupom fiscal tenha sido impresso corretamente e deseje confirmar o pagamento utilize a função ConfirmarPagamentos(), caso contrário se houver algum problema na impressão do cupom fiscal e desejar desfazer e cancelar o pagamento utilize a função DesfazerPagamentos().
Reforçamos que para as operações administrativas como reimpressão e cancelamento não será necessário finalizar a operação ao receber uma resposta de Operação Aprovada no fluxo de iteração.
Obs: Esse valor pode ser alterado nas configurações da aplicação, para isso será necessário entrar em contato com o suporte da Cappta.
Quer mais detalhes desse procedimento?
Para detalhamento dos códigos de retorno consulte a tabela Possíveis códigos de retorno