Transações
Resumo
API responsável por monitorar o recurso de transações feitas dentro do sistema. Ela possui status pré-definidos de acordo com uma progressão cronológica e casos de cancelamento e retentativas devido à qualquer tipo de instabilidade.
Como funciona
opened_order
Quando um usuário inicia uma solicitação de compra ou venda, é criado um Pedido com o status opened_order.
pending_payment
Ao selecionar o meio de pagamento e gerar a solicitação de pagamento, o status do Pedido é alterado para pending_payment.
processing_payment
Ao ser reconhecido o pagamento por meio do gateway, a ordem é processada e aguarda o retorno do gateway para o recolhimento do valor pago, identificado pelo status processing_payment.
approved_payment
Aprovado e recebido o pagamento, o status do pedido é alterado para approved_payment e é iniciado o processo de envio do token.
queue_send_token
Quando o token entra na fila para ser mintado/transferido, ele recebe o status queue_send_token.
success_send_token
Quando o token foi devidamente enviado ao seu destinatário, o fluxo de compra termina com o status success_send_token.
failed
Caso haja falha em algum dos passos anteriores, o status failed é aplicado e o pedido entra em uma fila de retentativas.
cancelled
Caso o numero de retentativas em algum dos status seja maior que o estipulado ou, em caso de leilões, quando o lance dado é superado por outro, o envio do token é cancelado, seguindo o fluxo com o status cancelled.
refounded
Caso o cancelamento de um pedido ocorra antes do envio do Token com sucesso para seu comprador, o pagamento do mesmo será estornado para a origem e resultará no status de refounded.
Objeto Transaction
Endpoints
GET /v1/transactions
POST /v1/transactions
GET /v1/transactions/:transactionId
PATCH /v1/transactions/:transactionId
Transações
(JWT) Lista as transações recentes do usuário logado
GET https://goblockchain.io/gotokens-api/v1/transactions
Lista informações básicas das transações recentes do usuário logado.
Nível de permissionamento necessário: qualquer
Query Parameters
limit
String
Limite de resultados da busca
offset
String
Quantidade de resultados para avançar da busca
lastStatus
String
Último status da transação
Headers
authorization*
Bearer
JWT
{
"transactions": [
{
"id":"wda8971da3w2"
"item":{
"tokenId": "8wad12wa3ds",
"communityId": "8f7es7fs65",
"companyId": "ef7sef5sef"
},
"operation":{
"type": "buy",
},
"payment": {
"price": "120",
"decimals": "2",
"currency": "ETH",
"method": "pix",
}
"lastStatus": "success_send_token"
},
{
"id":"2"
"item":{
"tokenId": "ferswad85f8",
"communityId": "8f7es7fs65",
"companyId": "ef7sef5sef"
},
"operation":{
"type": "sell",
},
"payment": {
"price": "70",
"decimals": "2",
"currency": "MATIC",
"method": "credit_card",
}
"lastStatus": "processing_payment"
},
]
}id- StringIdentificador único de uma transação.
item- ObjectArmazena informações relativas ao item da transação.
tokenId- StringIdentificador que guarda a referência ao ID do token no banco de dados.
communityId- StringIdentificador que guarda a referência ao ID da comunidade gestora do token.
companyId- StringIdentificador que guarda a referência ao ID da empresa gestora do token.
operation- ObjectArmazena dados gerais de transação
type- StringTipo de operação da transação (
buypara operação de compra,sellpara operação de vendas,bidpara operação de lance em leilões,rent_outpara itens postos para alugar erentpara tokens alugados).
payment- ObjectArmazena dados relativos ao pagamento da transação
price- StringValor relativo ao preço agregado à transação do Token, seja para uma operação de compra, venda ou aluguel
decimals- StringNúmero de casas decimais que deve ser considerado em relação ao campo price.
currency- StringNome da moeda utilizada para o pagamento da transação, podendo ser relativo à moedas tradicionais ou criptomoedas.
method- StringNome do meio de pagamento utilizado na transação.
lastStatus- StringInforma o último status conhecido da transação, podendo ser
opened_order,pending_payment,processing_payment,approved_payment,queue_send_token,success_send_token,failed,cancelledourefounded.
1
Acesso restrito ao recurso.
10
Credenciais de acesso expiradas. Por favor, execute novamente sua autenticação na plataforma.
(JWT) Cria uma nova transação
POST https://goblockchain.io/gotokens-api/v1/transactions
Nível de permissionamento necessário: sistema
Headers
authorization*
Bearer
JWT
Request Body
item*
Object
Objeto com informações referentes ao token da transação
operation*
Object
Objeto com informações referentes à natureza da transação
payment*
Object
Objeto com informações referentes ao pagamento da transação
{
"id":"sef897sef",
"userId": "w87d9a45fs",
"item":{
"tokenId": "f79sef456",
"collectionId": "78sefd2s",
"companyId": "789wease1f"
},
"operation":{
"type": "buy",
"from": "0x00001",
"to": "0x02002",
},
"payment":{
"price": "120",
"decimals": "2"
"currency": "ETH",
"method": null,
"priceInBrl": null,
"expirationDate": "05/05/2020 18:20:25"
},
"lastStatus": "opened_order",
"historyStatus": [
{
"date" : "05/05/2020 18:15:20",
"status": "opened_order",
"retries": null,
"error": null
}
]
}id- StringIdentificador único de uma transação.
userId- StringIdentificador próprio do usuário que iniciou a transação.
item- ObjectArmazena informações relativas ao item da transação.
tokenId- StringIdentificador que guarda a referência ao ID do token no banco de dados.
communityId- StringIdentificador que guarda a referência ao ID da comunidade gestora do token.
companyId- StringIdentificador que guarda a referência ao ID da empresa gestora do token.
operation- ObjectArmazena dados gerais de transação
type- StringTipo de operação da transação (
buypara operação de compra,sellpara operação de vendas,bidpara operação de lance em leilões,rent_outpara itens postos para alugar erentpara tokens alugados).from- StringEndereço de origem da operação.
to- StringEndereço de destino da operação.
payment- ObjectArmazena dados relativos ao pagamento da transação
price- StringValor relativo ao preço agregado à transação do Token, seja para uma operação de compra, venda ou aluguel
decimals- StringNúmero de casas decimais que deve ser considerado em relação ao campo price.
currency- StringNome da moeda utilizada para o pagamento da transação, podendo ser relativo à moedas tradicionais ou criptomoedas.
method- StringNome do meio de pagamento utilizado na transação.
lastStatus- StringInforma o último status conhecido da transação, podendo ser
opened_order,pending_payment,processing_payment,approved_payment,queue_send_token,success_send_token,failed,cancelledourefounded.
historyStatus- Array of ObjectsArmazena o histórico de status de uma dada transação
date- DateTimeArmazena a data de criação do status em questão
status- StringArmazena o status. Segue o fluxo explicitado acima.
retries- IntegerArmazena a quantidade de retentativas de progresso de um status. É utilizado caso ocorra uma instabilidade interna ou externa relativa ao meio de pagamento.
error- StringArmazena a mensagem de erro de um retry.
1
Acesso restrito ao recurso.
10
Credenciais de acesso expiradas. Por favor, execute novamente sua autenticação na plataforma.
(JWT) Lista os dados de uma transação do usuário logado
GET https://goblockchain.io/gotokens-api/v1/transactions/:transactionId
Essa requisição busca maior detalhamento em relação às transações de um usuário, trazendo todo o conteúdo associado à ela.
Nível de permissionamento necessário: qualquer
Headers
authorization*
Bearer
JWT
{
"id":"sef897sef",
"userId": "w87d9a45fs",
"item":{
"tokenId": "f79sef456",
"collectionId": "78sefd2s",
"companyId": "789wease1f"
},
"operation":{
"type": "buy",
"from": "0x00001",
"to": "0x01000"
},
"transactionHash": "ed784fes48es4f1fes8",
"payment":{
"price": "120",
"decimals": "2"
"currency": "ETH",
"method": "pix",
"priceInBrl": "685020",
"expirationDate": "05/05/2020 18:20:25"
},
"lastStatus": "success_send_token",
"historyStatus": [
{
"date" : "05/05/2020 18:15:20",
"status": "opened_order",
"retries": null,
"error": null
},
{
"date" : "05/05/2020 18:15:25",
"status": "pending_payment",
"retries": null,
"error": null
},
{
"date" : "05/05/2020 18:17:05",
"status": "processing_payment",
"retries": 1,
"error": "500 Internal Server Error"
},
{
"date" : "05/05/2020 18:17:25",
"status": "approved_payment",
"retries": null,
"error": "500 Internal Server Error"
},
{
"date" : "05/05/2020 18:17:45",
"status": "queue_send_token",
"retries": null,
"error": null
},
{
"date" : "05/05/2020 18:18:30",
"status": "success_send_token",
"retries": null,
"error": null
}
]
}id- StringIdentificador único de uma transação.
item- ObjectArmazena informações relativas ao item da transação.
tokenId- StringIdentificador que guarda a referência ao ID do token no banco de dados.
communityId- StringIdentificador que guarda a referência ao ID da comunidade gestora do token.
companyId- StringIdentificador que guarda a referência ao ID da empresa gestora do token.
operation- ObjectArmazena dados gerais de transação
type- StringTipo de operação da transação (
buypara operação de compra,sellpara operação de vendas,bidpara operação de lance em leilões,rent_outpara itens postos para alugar erentpara tokens alugados).from- StringEndereço de origem da operação.
to- StringEndereço de destino da operação.
transactionHash- StringEndereço de hash da transação em WEB3.
payment- ObjectArmazena dados relativos ao pagamento da transação
price- StringValor relativo ao preço agregado à transação do Token, seja para uma operação de compra, venda ou aluguel
decimals- StringNúmero de casas decimais que deve ser considerado em relação ao campo price.
currency- StringNome da moeda utilizada para o pagamento da transação, podendo ser relativo à moedas tradicionais ou criptomoedas.
method- StringNome do meio de pagamento utilizado na transação.
lastStatus- StringInforma o último status conhecido da transação, podendo ser
opened_order,pending_payment,processing_payment,approved_payment,queue_send_token,success_send_token,failed,cancelledourefounded.
historyStatus- Array of ObjectsArmazena o histórico de status de uma dada transação
date- DateTimeArmazena a data de criação do status em questão
status- StringArmazena o status. Segue o fluxo explicitado acima.
retries- IntegerArmazena a quantidade de retentativas de progresso de um status. É utilizado caso ocorra uma instabilidade interna ou externa relativa ao meio de pagamento.
error- StringArmazena a mensagem de erro de um retry.
1
Acesso restrito ao recurso.
10
Credenciais de acesso expiradas. Por favor, execute novamente sua autenticação na plataforma.
(Webhook) Edita dados de uma transação
PATCH https://goblockchain.io/gotokens-api/v1/transactions/:transactionId
Nível de permissionamento necessário: sistema
Headers
authorization*
Bearer
JWT
Request Body
payment
Object
Objeto com informações referentes ao pagamento da transação
lastStatus
String
Último status da transação
historyStatus
Objeto
Objeto com detalhamentos referentes aos status da transação
transactionHash
String
Hash identificador da transação em WEB3
{
"id":"sef897sef",
"userId": "w87d9a45fs",
"item":{
"tokenId": "f79sef456",
"collectionId": "78sefd2s",
"companyId": "789wease1f"
},
"operation":{
"type": "buy",
"from": "0x00001",
"to": "0x01000"
},
"transactionHash": "ed784fes48es4f1fes8",
"payment":{
"price": "120",
"decimals": "2"
"currency": "ETH",
"method": "pix",
"priceInBrl": "685220",
"expirationDate": "05/05/2020 18:20:25"
},
"lastStatus": "opened_order",
"historyStatus": [
{
"date" : "05/05/2020 18:15:20",
"status": "opened_order",
"retries": null,
"error": null
},
{
"date" : "05/05/2020 18:15:25",
"status": "pending_payment",
"retries": null,
"error": null
},
]
}id- StringIdentificador único de uma transação.
userId- StringIdentificador próprio do usuário que iniciou a transação.
item- ObjectArmazena informações relativas ao item da transação.
tokenId- StringIdentificador que guarda a referência ao ID do token no banco de dados.
communityId- StringIdentificador que guarda a referência ao ID da comunidade gestora do token.
companyId- StringIdentificador que guarda a referência ao ID da empresa gestora do token.
operation- ObjectArmazena dados gerais de transação
type- StringTipo de operação da transação (
buypara operação de compra,sellpara operação de vendas,bidpara operação de lance em leilões,rent_outpara itens postos para alugar erentpara tokens alugados).from- StringEndereço de origem da operação.
to- StringEndereço de destino da operação.
transactionHash- StringEndereço de hash da transação em WEB3.
payment- ObjectArmazena dados relativos ao pagamento da transação
price- StringValor relativo ao preço agregado à transação do Token, seja para uma operação de compra, venda ou aluguel.
decimals- StringNúmero de casas decimais que deve ser considerado em relação ao campo price.
currency- StringNome da moeda utilizada para o pagamento da transação, podendo ser relativo à moedas tradicionais ou criptomoedas.
method- StringNome do meio de pagamento utilizado na transação.
lastStatus- StringInforma o último status conhecido da transação, podendo ser
opened_order,pending_payment,processing_payment,approved_payment,queue_send_token,success_send_token,failed,cancelledourefounded.
historyStatus- Array of ObjectsArmazena o histórico de status de uma dada transação
date- DateTimeArmazena a data de criação do status em questão
status- StringArmazena o status. Segue o fluxo explicitado acima.
retries- IntegerArmazena a quantidade de retentativas de progresso de um status. É utilizado caso ocorra uma instabilidade interna ou externa relativa ao meio de pagamento.
error- StringArmazena a mensagem de erro de um retry.
1
Acesso restrito ao recurso.
10
Credenciais de acesso expiradas. Por favor, execute novamente sua autenticação na plataforma.
Last updated
Was this helpful?