Skip to main content

Overview

The Akatus.ConsultaStatus.Consulta class provides functionality to query the current status of a transaction in the Akatus payment system. This allows you to retrieve detailed information about a transaction including its payment status, value, dates, and reference ID.

Consulta Class

consultaStatusTransacao()

Queries the status of a transaction in the Akatus system.
public Akatus.ConsultaStatus.Retorno consultaStatusTransacao(string idTransacao)
idTransacao
string
required
The transaction ID (GUID format) from Akatus. This is the unique identifier assigned by Akatus when the transaction was created.

Returns

Returns an Akatus.ConsultaStatus.Retorno object containing the transaction details.

Retorno Structure

The Retorno class contains the following properties returned from the status query:
Valor
decimal
The transaction amount/value
DataCriacao
DateTime?
The date and time when the transaction was created
DataStatusAtual
DateTime?
The date and time when the current status was set
Status
Akatus.Enums.StatusTransacao
The current payment status. Possible values:
  • aguardandoPagamento - Awaiting Payment
  • emAnalise - Under Analysis
  • aprovado - Approved
  • cancelado - Canceled
  • processando - Processing
  • completo - Complete
  • devolvido - Refunded
  • estornado - Reversed
  • chargeback - Chargeback
Referencia
string
Your store’s transaction ID (if one was provided during transaction creation)

Usage Example

Akatus.ConsultaStatus.Consulta consulta = new Akatus.ConsultaStatus.Consulta();

// Query transaction status
Akatus.ConsultaStatus.Retorno retorno = consulta.consultaStatusTransacao("00000000-0000-0000-0000-0000000000");

// Access the returned data
decimal amount = retorno.Valor;
DateTime? created = retorno.DataCriacao;
DateTime? statusDate = retorno.DataStatusAtual;
Akatus.Enums.StatusTransacao status = retorno.Status;
string reference = retorno.Referencia;

Configuration Requirements

Before using the Consulta class, ensure you have configured the following settings in your Web.Config:
<appSettings>
  <!-- Akatus - Environment ('producao' or 'testes') -->
  <add key="AkatusAmbiente" value="testes"/>
  
  <!-- Akatus - API Key -->
  <add key="AkatusApiKey" value="YOUR-API-KEY"/>
  
  <!-- Akatus - Email -->
  <add key="AkatusEmail" value="youremail@company.com"/>
</appSettings>

Error Handling

The method may throw exceptions in the following scenarios:
  • Invalid XML format: If the API response is not valid XML
  • Empty response: If the XML response contains no child nodes
  • Network errors: If the HTTP request fails
Example error handling:
try
{
    Akatus.ConsultaStatus.Consulta consulta = new Akatus.ConsultaStatus.Consulta();
    Akatus.ConsultaStatus.Retorno retorno = consulta.consultaStatusTransacao("transaction-id");
}
catch (System.ArgumentException ex)
{
    // Handle XML parsing errors
    Console.WriteLine("Error: " + ex.Message);
}
catch (Akatus.RestExcepction ex)
{
    // Handle HTTP errors
    Console.WriteLine("HTTP Error: " + ex.StatusCode);
    foreach (string error in ex.ErrorMessages)
    {
        Console.WriteLine(error);
    }
}

API Endpoint

The method makes a GET request to:
  • Production: http://www.akatus.com/api/v1/transacao-simplificada/{transactionId}.xml
  • Test: http://dev.akatus.com/api/v1/transacao-simplificada/{transactionId}.xml
Query parameters include your email and API key for authentication.

Build docs developers (and LLMs) love