API de Transações
Criar Transação Pix
Antes de prosseguir, certifique-se que leu todos os tópicos seção Primeiros Passos.
Estrutura
Para criar uma transação pix é utilizada a estrutura, conforme Tabela 01:
Método |
POST |
---|---|
URL |
https://api.asteroidetecnologia.com.br
|
Recurso |
/transactions/create |
Endpoint |
https://api.asteroidetecnologia.com.br/transactions/create
|
Request Body - JSON
Para criar uma transação com o pix é preciso enviar o Request Body JSON, conforme exemplo:
(em seguida veja o que cada parâmetro significa).
{ "tipo": "pix", "venda_id": "99999", "identificador": "99999", "valor_total": "100.00", "dias_vencimento" : "1", "comprador": { "nome": "John Doe", "documento": "12345678909" } }
Parâmetros
Parâmetro | Padrão | Descrição |
---|---|---|
tipo:String |
not null | O tipo da transação, que neste caso é pix |
venda_id:String |
not null | Um código interno de sua aplicação que você precisa associar à transação |
identificador:String |
not null | O mesmo que venda_id |
dias_vencimento:Integer |
2 | O total de dias que o código do pix será válido |
valor_total:Float |
not null | O valor da transação |
comprador.nome:String |
not null | O nome do comprador |
comprador.documento:String |
not null | O documento do comprador (CPF ou CNPJ) |
comprador.email:String |
null | O e-mail do comprador |
comprador.ddd:Integer |
null | O DDD do telefone do comprador |
comprador.telefone:Integer |
null | O telefone do comprador |
comprador.logradouro:String |
null | O logradouro do endereço do comprador. Exemplo: Rua da Consolação, Avenida Paulista, Praça Dom Gaspar, etc. |
comprador.numero:String |
null | O número do endereço do comprador |
comprador.complemento:String |
null | O complemento do endereço do comprador. Exemplo: Casa 1, Apto 2, Sala 3, etc. |
comprador.bairro:String |
null | O bairro do endereço do comprador |
comprador.cidade:String |
null | A cidade do endereço do comprador |
comprador.estado:String |
null | A UF do estado do endereço do comprador. Ex. SP, SC, RS, RJ, etc. |
comprador.cep:String |
null | A CEP do endereço do comprador |
Exemplos
Veja alguns exemplos de como realizar uma requisição à API de Transações enviando o Request Body JSON para criar uma transação de pix.
# certifique-se de ter o comando "curl" instalado \ curl -X POST https://api.asteroidetecnologia.com.br/transactions/create \ -H 'Content-Type: application/json' \ -H 'asteroide-key: SEU_TOKEN_AQUI' \ -H 'asteroide-pass: SUA_SENHA_AQUI' \ -d '{ "tipo": "pix", "venda_id": "99999", "identificador": "99999", "valor_total": "100.00", "dias_vencimento": "1", "comprador": { "nome": "John Doe", "documento": "12345678909" } }'
// certifique-se de ter a extensão php_curl instalada $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.asteroidetecnologia.com.br/transactions/create', CURLOPT_RETURNTRANSFER => true, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_HTTPHEADER => array( 'Content-Type: application/json', 'asteroide-key: SEU_TOKEN_ASTEROIDE', 'asteroide-pass: SUA_SENHA_ASTEROIDE', ), CURLOPT_POSTFIELDS => json_encode(array( 'tipo' => 'pix', 'venda_id' => '99999', 'identificador' => '99999', 'valor_total' => '100.00', 'dias_vencimento' => '1', 'comprador' => array( 'nome' => 'John Doe', 'documento' => '12345678909' ) )), )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo 'cURL Error #:' . $err; } else { echo $response; }
// No mesmo diretório do arquivo "package.json" // npm install --save request var request = require("request"); var options = { method: 'POST', url: 'https://api.asteroidetecnologia.com.br/transactions/create', headers: { 'Content-Type': 'application/json', 'asteroide-key': 'SEU_TOKEN_ASTEROIDE', 'asteroide-pass': 'SUA_SENHA_ASTEROIDE' }, json: true body : { tipo: "pix", venda_id: "99999", identificador: "99999", valor_total: "100.00", dias_vencimento: "1", comprador: { nome: "John Doe", documento: "12345678909" } } }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
Retorno JSON - Sucesso
No caso de sucesso você deverá ver algo como:
{ "http_status": 201, "body": { "seu_id": "ABC123", "codigo_pagamento": "GopBWLb9Faz36VtIFwrqVrpSiwnt3zDpTBh", "qtd_parcelas": 1, "tipo": "pix", "guid": "venda.605505c1900f47.44927268", "tid": "GopBWLb9Faz36VtIFwrqVrpSiwnt3zDpTBh", "proof_of_sale": "GopBWLb9Faz36VtIFwrqVrpSiwnt3zDpTBh", "codigo_autorizacao": "GopBWLb9Faz36VtIFwrqVrpSiwnt3zDpTBh", "provider": "VALID", "location": "qrcodepix-h.bb.com.br/pix/v2/dd4b03f7-5655-43ac-8250-930f36ed3e00", "mensagem": "Cobrança ASTEROIDE", "qrcode": "00020101021226870014br.gov.bcb.pix2565qrcodepix-h.bb.com.br/pix/v2/dd4b03f7-5655-43ac-8250-930f36ed3e005204000053039865406100.005802BR5920ALAN GUIACHERO BUENO6008BRASILIA62070503***6304C6A1", "chave": "testqrcode01@bb.com.br" } }
Retorno JSON - Erros
Caso o usuário informe algum dado errado será retornado código com uma mensagem de erro.
Verifique as tabelas após este exemplo para conhecer os códigos e mensagens retornados.
{ "http_status": 400, "body": { "errors": { "2016": "Documento do comprador não pode estar vazio" } } }
Tabela códigos e mensagens de erros: transação
Código | Mensagem |
---|---|
1001 |
Identificador não pode estar vazio |
1002 |
Identificador não pode ter mais de 50 caracteres |
1003 |
Valor da Venda não pode estar vazio |
1004 |
Valor da Venda não pode ser igual ou inferior a zero |
1005 |
Tipo de transação inválido. Tipos aceitos: credit, boleto ou pix |
1006 |
Quantidade de Parcelas não pode ser igual ou inferior a zero |
1007 |
Asteroide Key é inválido |
1008 |
GUID inválido |
1009 |
Comprador inválido |
Tabela códigos e mensagens de erros: comprador
Código | Mensagem |
---|---|
2001 |
Nome do comprador não pode estar vazio |
2002 |
Nome do comprador não pode conter mais de 150 caracteres |
2003 |
Documento do comprador não pode conter mais de 50 caracteres |
2004 |
Email do comprador não pode conter mais de 200 caracteres |
2005 |
DDD do telefone do comprador não pode conter mais de 2 caracteres |
2006 |
Número de telefone do comprador não pode conter mais de 15 caracteres |
2007 |
Endereço do comprador não pode conter mais de 100 caracteres |
2008 |
Número do endereço do comprador não pode conter mais de 100 caracteres |
2009 |
Complemento do endereço do comprador não pode conter mais de 100 caracteres |
2010 |
Bairro do endereço do comprador não pode conter mais de 100 caracteres |
2011 |
Cidade do endereço do comprador não pode conter mais de 100 caracteres |
2012 |
Estado do endereço do comprador não pode conter mais de 2 caracteres |
2013 |
CEP do endereço do comprador não pode conter mais de 8 caracteres |
2014 |
GUID inválido |
2015 |
Tipo de documento do comprador deve ser CPF ou CNPJ |
2016 |
Documento do comprador não pode estar vazio |
2017 |
Preencha o CPF corretamente |
2018 |
Preencha o CNPJ corretamente |
2019 |
Endereço do comprador não pode estar vazio |
2020 |
Número do endereço do comprador não pode estar vazio |
2021 |
Bairro do endereço do comprador não pode estar vazio |
2022 |
Cidade do endereço do comprador não pode estar vazia |
2023 |
Estado do endereço do comprador não pode estar vazio |
2024 |
CEP do endereço do comprador não pode estar vazio |