🚀Criando uma transação
Esta página contém instruções de como solicitar a criação de uma transação na API da 4P Finance.
Last updated
Esta página contém instruções de como solicitar a criação de uma transação na API da 4P Finance.
Last updated
Para realizar transações, é necessário executar uma chamada para a API e obter como retorno o Identificador da Transação/TID ( Transation ID ), que deverá ser enviado para o smart contract / endereço, ambos retornados pela 4P Finance.
Com o TID e o endereço do smart contract, o próximo passo é executar o método DoTransaction do smart contract iniciando assim a transação, passando como parâmetro o TID e Valor a ser transferido, após o usuário aprovar na sua carteira.
A requisição para realizar a criação/registro de uma transação deverá ter como corpo da solicitação JSON as informações necessárias para registrar a transação. Esses dados serão os dados referente a transação e os dados do produto ou serviço a ser cobrado.
POST
https://api.4p.finance/v1/transaction/create/
Realiza a solicitação do registro de uma transação pelo gateway e o monitoramento da mesma.
Observe que o retorno contém o data
onde temos a chave address_smart_contract
, e no seu valor, o endereço do smart contract, que deverá receber o Valor em criptomoeda a ser transferido.
Observe também, que dentro do data
temos o tid
e no seu valor o Identificador da Transação registrada. Esse valor deverá ser passado como parâmetro na execução do método DoTransaction do smart contract.
Veja abaixo um exemplo em JavaScript que executa a chamada do método DoTransaction enviado o TID como parâmetro.
Após a autorização do usuário na carteira e registro na blockchain, você receberá como retorno os dados da transação na blockchain. Também é possível aguardar a confirmação de blocos para garantir no front-end uma confirmação imediata para o usuário.
Embora sua aplicação receba, após a execução da transferência, retorno da blockchain com os dados da transação e confirmação via front-end; por segurança, o gateway também irá enviar notificações para a sua URL de retorno, assim que obter uma confirmação da transferência. Isso garantirá que, mesmo que o front-end ( em caso de aplicação web ) perca conexão, ou por algum motivo não receba o retorno da blockchain, a fim de confirmar a transação ao usuário, o webhook da 4P Finance irá enviar uma confirmação da transação para sua aplicação.
Saiba mais sobre as notificações e callbacks na próxima sessão.
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
x-api-key*
String
Sua chave API.
transaction_data*
Object
Objeto que deverá conter os dados da transação.
transaction*
Object
Objeto principal.
buyer_name*
String
Nome do cliente/usuário.
buyer_email*
String
E-mail do cliente/usuário.
total_discount*
Integer
Total de desconto da transação. Exemplo: 2010 = R$ 20,10.
amount_brl*
Integer
Valor total da compra em BRL/REAL. Exemplo: 18990 = R$ 189,90.
amount_crypto*
String
Valor total da compra convertido para a criptomoeda/token e que será cobrado na transação.
chain_id*
String
ID da rede/blockchain que será executada a transação. Exemplo: 137.
currency_symbol*
String
Símbolo da moeda/token que será transferido na transação. Exemplo: MATIC.
custom_id*
String
Identificador único/personalizado da transação na sua aplicação. Esse identificador deverá ser gerado por sua aplicação para fins de controle.
notification_url*
String
URL de retorno de sua aplicação que receberá as notificações de status da transação via POST.
transaction_items*
Array
Array que deverá conter os dados dos objetos/itens ( produtos ou serviço ).
description*
String
Descrição do item / produto ou serviço.
quantity*
Integer
Quantidade do item.
discount*
Integer
Valor do desconto do item. Exemplo: 2000 = R$ 20,00.
amount*
Integer
Valor do item. Exemplo: 4999 = R$ 49,99.