Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Exemplos : Quando houve a necessidade de validar um token no pinpad.


Veja abaixo exemplo de configuração dos parâmetros : 

Configurações > Configurações de PDVs > Autendicações diversas > Autênticações para convênios.

image-2024-4-3_8-22-30.pngImage Added

Imagem 01 - Autênticações para convênios.


Lista de formas de pagamento : Iremos configurar uma lista de formas de pagamento que poderá ser validado e autenticado pelo parceiro.

Obter o valor no pinpad: A solicitação irá ser encaminhada para o cliente informar o valor no Pinpad.

URL :  Parceiro irá informar o caminho do seu servidor webservice para receber do PDV as solicitações e valores.

Autenticação: Para validação de usuario e senha do webservice criado pelo parceiro para validar e autorizar as respostas para o PDV.


Formato dos arquivos JSON de Requisição e Resposta

Informações para Requisição (Request Information)

Parâmetros do Corpo (Body Parameters)

Authenticator

PARÂMETRO

TIPO

OBRIGATÓRIO

DESCRIÇÃO

UserAuthenticationObject JsonSim

Grupo com os dados para autenticação

AuthenticatorUserAuthentication.HeaderObject JsonSim

Grupo com os dados do cabeçalho

AuthenticatorUserAuthentication.Header.DescriptionStringSim

Descrição da rotina a ser liberada

AuthenticatorUserAuthentication.Header.IdStoreIntegerSim

Código da loja

AuthenticatorUserAuthentication.Header.IdTerminalIntegerSim

Código do PDV

Authenticator.Header.IdUserIntegerSim

Código do usuário (operador de caixa)

Authenticator.Header.MethodStringSim

Rotina a ser liberada

Authenticator.Header.MethodStatusStringSim

Status da liberação da rotina solicitada. Legenda:

arNone: envio da requisição (inicialização);

arPending: requisição pendente;

arAuthorized: requisição autorizada pelo fiscal de caixa;

arNotAuthorized: requisição negada pelo fiscal de caixa;

arCanceled: requisição cancelada (API fora do ar, timeout, usuário cancelou a solicitação, tempo limite atingido, etc).

Authenticator.Header.MethodTitleStringSim

Título da rotina a ser liberada

AuthenticatorUserAuthentication.SaleObject JsonSim

Grupo com os dados da venda

AuthenticatorUserAuthentication.Sale.AccountingDateDateSim

Data do documento ou, quando não existir, da transação

AuthenticatorUserAuthentication.Sale.DateTimeIssueDateSim

Data e hora da requisição

AuthenticatorUserAuthentication.Sale.IdDocumentIntegerSim

Código do documento

AuthenticatorUserAuthentication.Sale.ItemsArray object JsonNão

Lista de produto(s) da venda

AuthenticatorUserAuthentication.Sale.Items[0].DescriptionStringSim

Descrição do produto

AuthenticatorUserAuthentication.Sale.Items[0].InternalCodeIntegerSim

Código interno do produto

AuthenticatorUserAuthentication.Sale.Items[0].ItemNumberIntegerSim

Código de sequência do produto

UserAuthentication.Sale.CooDocumentIntegerNão

Código do documento da venda

UserAuthentication.Sale.DocumentIntegerNão

Códigos interno da venda (seqdocto)

UserAuthentication.Sale.IdentificationTypeStringNão

Tipo de identificação

UserAuthentication.Sale.DocumentTypeStringNão

CPF ou CNPJ do cliente informado

UserAuthentication.Sale.AgreementNumberIntegerNão

Nº do convênio/forma  de pagamento

UserAuthentication.Sale.AgreedNumberIntegerNão

Código do cliente (Seqpessoa)

UserAuthentication.Sale.TotalSaleDoubleNão

Total da venda

UserAuthentication.Sale.TotalPayDoubleNão

Valor do pagamento

EventStringSim

Tipo de evento da API

ExecutionStringSim

Status da execução

IDStringSim

ID da transação (que será consultando depois no evento GET)

OperationStringSim

Operação que está sendo enviada ("cotAuthenticadorcotUserAuthentication" para este evento POST)

ResponseStringNão

Valor retornado pelo PDV.

Este é o valor de retorno digitado lá no pdv pelo cliente

VersionIntegerSim

Número da versão

Formatos de Requisição (Request Formats)

application/json

Exemplo (Sample)

{
    "Authenticator
    "Event": "cetAfter",
    "Execution": "cetContinue",
    "ID": "00122220240125140628",
    "Operation": "cotUserAuthentication",
    "Response": "1515",
    "UserAuthentication": {
            "Header": {
                "DescriptionIdStore": 1,
            "
Cancelamento do documentoIdTerminal": 222,
   
            "IdUser": 2
        },
        "
IdStoreSale":  1,
    {
            "AccountingDate": "2024-01-24T00:00:00",
            "
IdTerminalAgreedNumber":  301138789,
            "AgreementNumber": 252,
                "IdUserCooDocument":  2,
    30,
            "DateTimeIssue": "2024-01-25T14:06:28",
            "
MethodDocument": "97107967000109",
     
"mtCancelarCupom      "DocumentType": "cdtCNPJ",
                "MethodStatusIdDocument": 11071968,
 
"arNone          "IdentificationType": "citReward",
                "MethodTitleTotalPay": 1.0000000000000000E+001,
 
"Autenticacao de usuario"
        },
        "Sale": {
            "AccountingDate": "2023-11-23T00:00:00",
            "DateTimeIssue": "2023-11-23T08:03:41",
              "TotalSale": 1.0000000000000000E+001
        }
    },
    "Version": 1
}


Formatos de Response(Response Formats) para obter valor, no caso do exemplo um Token

application/json

Exemplo (Sample)

{

    "version": 1,
    "return": {
        "code": 0
    },
    "execution": "cetContinue",
    "interpret": {
        "commandType": "cctGetValue",
        "messageCommand": null,
        "options": null,
        "value": {
            "title": "Cliente fidelidade",
            "subtitle": "Informe o Token",
            "
IdDocumentdataType":  122552"cvtToken",
            "size": 0,
                "ItemsdocumentTypes": [
                 {]
            },
       
  "Descriptionpay": null
    },
    "
AJINOMOTO REFIL 100G"vouchersPrint": [
    ]
}

Exemplo da venda no convênio : 

1º - Passo :  

Image Added

2º - Passo :  Informa o convêniado : 

Image Added

Identifica o convêniado : 

Image Added

Neste momento, iria ser apresentada a tela de senha para o cliente informar, mas se o parãmetro (Obter o valor no pinpad) tiver habilitado irá apresentar o retorno do parceiro para validar um token.


Image Added

Se o parâmetro para obter no pinpad estiver ativo, mensagem irá para o PINPAD para solicitar a digitação.

Image Added

Após digitar o valor e teclar ENTER, o sistema enviará para o parceiro o JSON com a resposta do que foi digitado pelo cliente.

Requisição do Exemplo (Request) com a resposta do que foi digitado :

{
   {
    "Event": "cetAfter",
    "Execution": "cetContinue",
    "ID": "00122220240125140628",
    "Operation": "cotUserAuthentication",
    "Response": "151516",
    "UserAuthentication": {
        "Header": {
,
                    "InternalCode": "7274",
                        "ItemNumberIdStore":  1
    1,
            "IdTerminal": 222,
            "IdUser": 2
        },
              "Sale": {
           
{
    "AccountingDate": "2024-01-24T00:00:00",
            "AgreedNumber": 138789,
            "
DescriptionAgreementNumber": 252,
     
"ACENDEDOR IMPERIAL TOCA FOGO C/6",
          "CooDocument": 30,
            "DateTimeIssue": "2024-01-25T14:06:28",
            "
InternalCodeDocument": "97107967000109",
     
"1825      "DocumentType": "cdtCNPJ",
                "IdDocument": 11071968,
            "
ItemNumberIdentificationType":  2
    "citReward",
           
 }
    "TotalPay": 1.0000000000000000E+001,
           
]
    "TotalSale": 1.0000000000000000E+001
        }
       },
       "Event": "cetBefore",
    "Execution": "cetContinue",
    "ID": "00130120231123080341",
    "Operation": "cotAuthenticator",
    "Version": 1Version": 1
}
}


Parceiro trata o retorno e finaliza com um response se estiver de acordo com a venda.

Response do Exemplo (Response) com a resposta cetCompleted:

{

    "version": 1,
    "sale": null,
    "pay": null,
    "return": {
        "code": 0,
        "messageText": "0"
    },
    "execution": "cetCompleted",
    "interpret": null,
    "vouchersPrint": [
    ]
}