Esta seção exemplifica todos os métodos relacionados a transações e ordem de pagamento.
POST /api/transacao
Endpoint responsável por cadastrar uma ordem de pagamento, retornando o Id da transação em caso de sucesso.
Headers
Content-Type | application/json |
Authorization | Bearer {token} |
Request Body application/json
Schema:
IdEstabelecimento | Int32 | ID que identifica o estabelecimento solicitante da ordem de pagamento | Obrigatório |
IdDispositivo | Int32 | ID que identifica o dispositivo que solicitou a ordem de pagamento | Obrigatório |
IdRedeCredenciadaMetodosPagamento | Int32 | ID que identifica o tipo de venda (Venda Loja: 1) | Obrigatório |
IdEstabelecimentoOperador | Int32 | ID Que identifica o operador que solicitou a ordem de pagamento | Obrigatório |
Valor | Decimal | Valor da ordem de pagamento | Obrigatório |
JSON:
{
"IdEstabelecimento":3,
"idDispositivo":1,
"IdRedeCredenciadaMetodosPagamento":17,
"IdEstabelecimentoOperador":1,
"Valor":30
}
Exemplos de Implementação:
C#
Code Block | ||
---|---|---|
| ||
var client = new RestClient("https://localhost:44380/api/Transacao");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6ImNhaW8uZm9udGVzIiwianRpIjoiZDVkMmQ4ZmVlMDgwNDk2MWE3ZjQ3NWY2MjRiMTkxYmQiLCJOZXRDb3JlVXNlcklkIjoiNjdjNjVhMDQtOTM0NC00MzE0LTYwYzgtMDhkN2RjMGNkMmI2IiwiUm9sZUxldmVsIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvT3BlcmFkb3IiOiIwIiwiSWRDbGllbnRlQnJva2VyIjpbIjAiLCIwIl0sInJvbGUiOiJFc3RhYmVsZWNpbWVudG8iLCJuYmYiOjE1OTIyNTk1ODcsImV4cCI6MTU5MjI2MzE4NywiaWF0IjoxNTkyMjU5NTkyLCJpc3MiOiJTc29BdWRpZW5jZSIsImF1ZCI6IlNzb0F1ZGllbmNlIn0.ktfw3Hooj022BX0A_Vhyv7qq0led91t71oSrTBkA3OU");
request.AddParameter("application/json,text/plain", "{\"IdEstabelecimento\":3,\"idDispositivo\":1,\"IdRedeCredenciadaMetodosPagamento\":17, \"IdEstabelecimentoOperador\":1,\"Valor\":30}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content); |
PHP
Code Block | ||
---|---|---|
| ||
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://localhost:44380/api/Transacao",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS =>"{\"IdEstabelecimento\":3,\"idDispositivo\":1,\"IdRedeCredenciadaMetodosPagamento\":17, \"IdEstabelecimentoOperador\":1,\"Valor\":30}",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json",
"Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6ImNhaW8uZm9udGVzIiwianRpIjoiZDVkMmQ4ZmVlMDgwNDk2MWE3ZjQ3NWY2MjRiMTkxYmQiLCJOZXRDb3JlVXNlcklkIjoiNjdjNjVhMDQtOTM0NC00MzE0LTYwYzgtMDhkN2RjMGNkMmI2IiwiUm9sZUxldmVsIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvT3BlcmFkb3IiOiIwIiwiSWRDbGllbnRlQnJva2VyIjpbIjAiLCIwIl0sInJvbGUiOiJFc3RhYmVsZWNpbWVudG8iLCJuYmYiOjE1OTIyNTk1ODcsImV4cCI6MTU5MjI2MzE4NywiaWF0IjoxNTkyMjU5NTkyLCJpc3MiOiJTc29BdWRpZW5jZSIsImF1ZCI6IlNzb0F1ZGllbmNlIn0.ktfw3Hooj022BX0A_Vhyv7qq0led91t71oSrTBkA3OU"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
|
POST /api/transacao/autorizar
Endpoint responsável por autorizar uma ordem de pagamento, efetuando o débito na conta de origem e retornando um booleano para indicar o sucesso da operação.
Headers
Content-Type | application/json |
Authorization | Bearer {token} |
Request Body application/json
Schema:
IdOrdemTransacao | Int32 | ID que identifica a ordem de pagamento a ser autorizado o pagamento | Obrigatório |
Conta | String | String que identifica a conta de origem que irá efetuar o pagamento | Obrigatório |
JSON:
{
"IdOrdemTransacao":3,
"Conta":10777
}
Exemplos de Implementação:
C#
Code Block | ||
---|---|---|
| ||
var client = new RestClient("https://localhost:44380/api/Transacao/Autorizar");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6ImNhaW8uZm9udGVzIiwianRpIjoiZDVkMmQ4ZmVlMDgwNDk2MWE3ZjQ3NWY2MjRiMTkxYmQiLCJOZXRDb3JlVXNlcklkIjoiNjdjNjVhMDQtOTM0NC00MzE0LTYwYzgtMDhkN2RjMGNkMmI2IiwiUm9sZUxldmVsIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvT3BlcmFkb3IiOiIwIiwiSWRDbGllbnRlQnJva2VyIjpbIjAiLCIwIl0sInJvbGUiOiJFc3RhYmVsZWNpbWVudG8iLCJuYmYiOjE1OTIyNTk1ODcsImV4cCI6MTU5MjI2MzE4NywiaWF0IjoxNTkyMjU5NTkyLCJpc3MiOiJTc29BdWRpZW5jZSIsImF1ZCI6IlNzb0F1ZGllbmNlIn0.ktfw3Hooj022BX0A_Vhyv7qq0led91t71oSrTBkA3OU");
request.AddParameter("application/json,text/plain", "{\"IdOrdemTransacao\":3,\"Conta\":10777}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content); |
PHP
Code Block | ||
---|---|---|
| ||
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://localhost:44380/api/Transacao/Autorizar",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS =>"{\"IdOrdemTransacao\":3,\"Conta\":10777}",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json",
"Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6ImNhaW8uZm9udGVzIiwianRpIjoiZDVkMmQ4ZmVlMDgwNDk2MWE3ZjQ3NWY2MjRiMTkxYmQiLCJOZXRDb3JlVXNlcklkIjoiNjdjNjVhMDQtOTM0NC00MzE0LTYwYzgtMDhkN2RjMGNkMmI2IiwiUm9sZUxldmVsIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvT3BlcmFkb3IiOiIwIiwiSWRDbGllbnRlQnJva2VyIjpbIjAiLCIwIl0sInJvbGUiOiJFc3RhYmVsZWNpbWVudG8iLCJuYmYiOjE1OTIyNTk1ODcsImV4cCI6MTU5MjI2MzE4NywiaWF0IjoxNTkyMjU5NTkyLCJpc3MiOiJTc29BdWRpZW5jZSIsImF1ZCI6IlNzb0F1ZGllbmNlIn0.ktfw3Hooj022BX0A_Vhyv7qq0led91t71oSrTBkA3OU"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
|
GET /api/transacao/{idOrdemTransacao}
Endpoint responsável por buscar as informações de uma ordem de pagamento pelo ID da ordem, retornando um body com os dados da ordem.
Headers
Content-Type | application/json |
Authorization | Bearer {token} |
Request Query String application/json
Schema:
IdOrdemTransacao | Int32 | ID que identifica a ordem de pagamento a ser buscada | Obrigatório |
Response Body application/json
Schema:
IdOrdemTransacao | Int32 | ID que identifica a ordem de pagamento a ser buscada |
IdEstabelecimentoOperador | Int32 | ID Que identifica o operador que solicitou a ordem de pagamento |
IdOrdemTransacaoStatus | Int32? | Status da Ordem de Transacao (Aguardando Leitura: 1 Aguardando Pagamento: 2 Processando: 3 Sucesso: 4 Falha: 5) |
IdRedeCredenciada | Int32 | ID que identifica a rede credenciada |
Valor | Decimal? | Valor da ordem de pagamento |
Ativo | Boolean? | Campo que indica se a ordem de pagamento está ativa |
UsuarioInsercao | String | Campo que identifica o usuário que solicitou a ordem de pagamento |
DataHoraInsercao | DateTime | Data e Hora em que a ordem de pagamento foi criada |
UsuarioUltimaAtualizacao | String | Campo que identifica o usuário que fez a última modificação na ordem de pagamento |
DataUltimaAtualizacao | DateTime? | Data e Hora em da última atualização da ordem de pagamento |
...
C#
Code Block | ||
---|---|---|
| ||
var client = new RestClient("https://localhost:44380/api/OrdemTransacao?Id=1");
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6ImNhaW8uZm9udGVzIiwianRpIjoiZDVkMmQ4ZmVlMDgwNDk2MWE3ZjQ3NWY2MjRiMTkxYmQiLCJOZXRDb3JlVXNlcklkIjoiNjdjNjVhMDQtOTM0NC00MzE0LTYwYzgtMDhkN2RjMGNkMmI2IiwiUm9sZUxldmVsIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvIjoiMCIsIklkRXN0YWJlbGVjaW1lbnRvT3BlcmFkb3IiOiIwIiwiSWRDbGllbnRlQnJva2VyIjpbIjAiLCIwIl0sInJvbGUiOiJFc3RhYmVsZWNpbWVudG8iLCJuYmYiOjE1OTIyNTk1ODcsImV4cCI6MTU5MjI2MzE4NywiaWF0IjoxNTkyMjU5NTkyLCJpc3MiOiJTc29BdWRpZW5jZSIsImF1ZCI6IlNzb0F1ZGllbmNlIn0.ktfw3Hooj022BX0A_Vhyv7qq0led91t71oSrTBkA3OU");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content); |
PHP
...
language | php |
---|
...
Autorização de uma Transação (Identificadores VDLJ1 e VDPT3) e estará disponível apenas para Estabelecimentos Autenticados.
Para efetuar uma Transação Autorizada pelo TMPay, o Parceiro precisa seguir o seguinte fluxo:
Antes de utilizar os métodos dessa sessão, o Parceiro precisa se autenticar e enviar seu Token de Acesso, conforme solicitado nos demais métodos, para então realizar a autenticação do Estabelecimento. Essa autenticação é necessária para configurações de parâmetros de segurança na Câmara de Autorização.
Uma vez credenciado, o Estabelecimento poderá se Autenticar e gerar uma Ordem de Transação através do endpoint Cadastrar Ordem de Transação. Essa Ordem se refere a uma solicitação de venda e nenhuma movimentação financeira ocorre até a autenticação, leitura e confirmação do usuário do TARGET Conta Digital.
Após o cadastro dessa Ordem de Transação, o Estabelecimento poderá acompanhar o Status da mesma através do enpoint Obter Ordem de Transação por IDouObter Ordem de Transação por NSU, assim como solicitar o cancelamento através do endpoint Cancelar Ordem de Transação por IDouCancelar Ordem de Transação por NSU. Caso já tenha ocorrido a movimentação financeira referente à Ordem de Transação, o valor será estornado e o status da Ordem de Transação será Estornada. Do contrário o status da Ordem de Transação será Cancelada.
O Estabelecimento poderá acompanhar todas as vendas realizadas e Autorizadas pelo TMPay através do endpoint Listar Transações por Período.