Transação com Token

Para criar uma transação com token é necessário enviar um POST para o seguinte recurso:

REQUISIÇÃO

👍

POST

/v1/transactions

PROPRIEDADETIPOTAMANHOOBRIGATÓRIODESCRIÇÃO
referenceIdTexto100SimNúmero de identificação da loja.
amountNúmero16SimValor da transação sem pontuação. Os dois últimos dígitos são os centavos. (Ex: amount: 100 = R$ 1,00)
descriptionTexto300NãoDescrição da transação.
customer.nameTexto100SimNome do portador do cartão.
customer.documentTexto18NãoNúmero do CPF/CNPJ do portador do cartão.
card.typeNúmero1NãoDefault 1 - Configura as opcões disponíveis. 1 Configura cartão de crédito. 2 Configura cartão de débito.
card.captureBoolanoSimtrue = Autoriza e confirma a transação .
false = Autorização, mas não confirma a transação, necessitando realizar a confirmação (Captura) noutra requisição.
card.installmentsNúmero2SimNúmero de parcelas.
card.interestTypeNúmero1NãoDefault: 3 - Operações disponíveis:
3. Parcelado Loja
4. Parcelado Administrador
card.authenticateNúmero1NãoDefault: 3 - Opções disponíveis:
1. Autorizar só transações autenticadas
2. Autorizar transações autenticadas ou não autenticadas
3. Autorizar sem autenticação
card.softDescriptorTexto22NãoTexto a ser exibido na fatura do portador do cartão.SoftDescriptor
card.recurrentBooleano-NãoInformar "recurrent": true caso a transação seja recorrente
cardInfo.tokenTexto100SimToken gerado anteriormente pela operação de Tokenização.
cardInfo.cvvNúmero4NãoCódigo de segurança do cartão. Ao informar torna a transação mais segura.
{
   "referenceId": "19893211234",
   "amount": "1000",
   "description": "Mouse sem fio",
   "customer": {
      "name": "Comprador Teste",
      "document": "12345678909"
   },
   "payment": {
       "card": {
          "type": 1,
          "capture": false,
          "installments": 1,
          "interestType": 3,
          "authenticate": 3,
          "softDescriptor": "Pagamento GATE2all",
          "recurrent": false,
          "cardInfo": {
              "token": "4b6a2aa5-de91-4d52-a4d1-f265f208e5a321"
          }
       }
   }
}
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;

URL obj = new URL("https://api.gate2all.com.br/v1/transactions");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

con.setRequestMethod("POST");
con.setRequestProperty("content-type", "application/json");
con.setRequestProperty("authenticationApi", "demo");
con.setRequestProperty("authenticationKey", "demo");

String body = "{"
      + "\"referenceId\": \"123456789\","
      + "\"amount\": \"1000\","
      + "\"description\": \"TV LG 42\","
      + "\"postBackUrl\": \"http://requestb.in/qkg1clqk\","
      + "    \"customer\": {"
      + "        \"name\": \"LUIS A R ROMERO\","
      + "        \"document\": \"12345678909\""
      + "   },"
      + "    \"payment\": {"
      + "        \"card\": {"
      + "           \"type\": 1,"
      + "           \"capture\": true,"
      + "           \"installments\": 1,"
      + "           \"interestType\": 3,"
      + "           \"softDescriptor\": \"EC02\","
      + "           \"cardInfo\": {"
      + "               \"token\": \"7a7820d0-ff6d-484a-8b8e-988d6d0ec0cc21\""
      + "           }"
      + "        }"
      + "    }"
      + "   "
      + "}";

con.setDoOutput(true);
DataOutputStream dos = new DataOutputStream(con.getOutputStream());
dos.writeBytes(body);
dos.flush();
dos.close();

Scanner scanner = new Scanner(new BufferedReader(new InputStreamReader(con.getInputStream())));
String response = scanner.nextLine();
scanner.close();

System.out.println(response);

RESPOSTA

PROPRIEDADETIPOTAMANHODESCRIÇÃO
transactionIdTexto150Identificador da transação do GATE2all.
dtTransactionDataHora19Data e hora da transação.
card.providerTexto100Nome da instituição financeira.
card.providerVersionTexto11Versão da Integração do Fornecedor
card.providerReferenceTexto100Referência da instituição.
card.providerMessageTexto100Mensagem da instituição.
card.providerCodeTexto100Codigo de resposta da instituição.
card.codAuthorizationTexto100Codigo de autorização da instituição.
card.authenticationECITexto100Indicador de autenticação da transação.Códigos ECI
cardInfo.numberTexto20Número do cartão truncado.
cardInfo.brandTexto20Bandeira do cartão.Bandeiras.
cardInfo.expirationMonthNúmero2Mês da validade do cartão. Formato MM
cardInfo.expirationYearNúmero4Ano da validade do cartão. Formato YYYY
cardInfo.cvvNúmero4Código de segurança do cartão truncado
statusNúmero2Status da transação retornado pelo GATE2all catálogo.