Developer Network

Documentação

Informações e instruções das APIs dos produtos Locaweb.

Capturar transação

Como capturar transações

Endpoint – Produção

Segue abaixo as informações de verbo HTTP e URI:

Verbo HTTP URI produção
POST https://api.gatewaylocaweb.com.br/v1/transacao/:id/capturar

Endpoint – Ambiente de Testes (Sandbox)

Segue abaixo as informações de verbo HTTP e URI:

Verbo HTTP URI Sandbox
POST https://api-sandbox.gatewaylocaweb.com.br/v1/transacao/:id/capturar

OBS.: No “:id” você precisará passar o id da transação que você deseja capturar.

Dados da requisição – Estrutura

O Id da transação será passado no próprio endereço , portanto o único dado necessário passar é o token.

Os dados deverão ser enviados em formato JSON com a seguinte estrutura:

Campo Descrição
token Campo que contem o token do gateway que identifica o usuário.

Exemplo do corpo da Requisição

Exemplo já em formato JSON que é o formato recebido pelo gateway.

1
{ "token":"3a5bbed0-50d4-012f-8d73-0026bb5a6240" }
1
2
3
curl 'https://api.gatewaylocaweb.com.br/v1/transacao/150/capturar' \
-H "Content-Type: application/json" \
-d '{ "token":"3a5bbed0-50d4-012f-8d73-0026bb5a6240"}'
1
2
3
4
5
<?php
  require 'LocawebGateway.php';
  $transacao = LocawebGateway::capturar(150)->sendRequest();
  var_dump($transacao);
?>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<%
  Set gateway = New LocawebGateway
  Set transacao = gateway.Capturar(999) 'O parâmetro é o ID da transação.'

  Response.Write("Dados da transação")
  Response.Write("ID: " & transacao.ID & "")
  Response.Write("Status: " & transacao.Status & "")
  Response.Write("Número do pedido: " & transacao.NumeroPedido & "")
  Response.Write("Meio de pagamento: " & transacao.MeioPagamento & "")
  Response.Write("URL de acesso: " & transacao.UrlAcesso & "")
  Response.Write("Detalhes: ")

  'A propriedade Detalhes é um objeto do tipo "Scripting.Dictionary".'
  'As chaves do dicionário variam de acordo com o meio de pagamento da transação.'
  Dim key : For Each key In transacao.Detalhes.keys()
    Response.Write("- " & key & ": " & transacao.Detalhes(key) & "")
  Next

  If transacao.TemErro Then
    Response.Write("Erros encontrados")
    Response.Write("Código de erro: " & transacao.ErroCodigo & "")
    Response.Write("Mensagem de erro: " & transacao.ErroMensagem & "")
  End If

  'Sempre libere os recursos dos objetos após utilizá-los.'
  Set transacao = Nothing
  Set gateway = Nothing
%>
1
2
require "locaweb-gateway"
transacao = Locaweb::Gateway.capturar(150)
1
2
from locaweb_gateway import LocawebGateway
transacao = LocawebGateway.capturar(150)

Exemplo de Retorno

Se a resposta ocorreu com sucesso, o Gateway de Pagamentos da Locaweb retornará o status “paga”, como visto abaixo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
  "transacao": {
    "id": 314,
    "status": "paga",
    "meio_pagamento": "redecard_ws",
    "numero_pedido": 123,
    "total": "100.00",
    "detalhes": {
      "numero_sequencial": "948",
      "numero_comprovante_venda": "7227",
      "numero_autenticacao": "9002",
      "numero_autorizacao": "4243",
      "url_comprovante": "https://ecommerce.redecard.com.br/pos_virtual/cupom.asp?DATA=20120306&TRANSACAO=201&NUMAUTOR=4243&NUMCV=7227&FILIACAO=1234567890"
    },
    "erro": null
  }
}