TransactionDAO é o objeto responsável por controlar o banco de dados do SDK. Este objeto diponibiliza alguns métodos para buscar dados das transações salvas no banco.
Os métodos disponíveis são:
| Método | Tipo do retorno | Descrição | 
|---|---|---|
| getLastTransactionId() | int | Retorna o TRANSACTION_ID da última transação processada pelo SDK | 
| getAllTransactionsOrderByIdDesc() | List<TransactionObject> | Retorna todas as trasnações processadas pelo SDK ordenadas do maior TRANSACTION_ID para o menor | 
| getAllTransactions() | List<TransactionObject> | Retorna todas as trasnações processadas pelo SDK | 
| findTransactionWithId(Integer transactionId) | TransactionObject | Busca uma transação pelo TRANSACTION_ID | 
| findTransactionWithAuthorizationCode(String authorizationCode) | TransactionObject | Busca uma transação pelo AUTHORIZATION_CODE | 
| findTransactionWithInitiatorTransactionKey(String initiatorTransactionKey) | TransactionObject | Busca uma transação pelo INITIATOR_TRANSACTION_KEY | 
| findTransactionByFilter(Map<String, String> filters) | List<TransactionObject> | Busca uma transação de acordo com o filtro escolhido (CHAVE, VALOR) (Ex: "ATK", "32019832938120") | 
| findTransactionWithATK() | TransactionObject | Busca uma transação através do ATK (NSU, StoneID) passado. | 
A base de dados contém os seguintes campos:
| Campo | Tipo | Descrição | 
|---|---|---|
| TRANSACTION_ID | String | Id da transação | 
| ATK | String | Identificador da transação que é retornado pelo autorizador ( RECIPIENT_TRANSACTION_IDENTIFICATION, StoneID ou ATK) | 
| INITIATOR_TRANSACTION_KEY | String | Identificador da transação gerador pela aplicação que iniciou a transação (ITK) | 
| AMOUNT | String | Valor da transação | 
| TYPE_OF_TRANSACTION | String | Tipo de transação | 
| INSTALMENT_TYPE | String | Tipo de parcelamento | 
| NUMBER_OF_INSTALMENT | String | Quantidade de parcelas | 
| CARD_HOLDER_NUMBER | String | Cartão usado na transação no formato 65434******'834 | 
| CARD_BRAND | String | Bandeira do cartão | 
| CARD_HOLDER_NAME | String | Nome do portador do cartão | 
| AUTHORIZATION_CODE | String | Código de autorização gerado pelo emissor do cartão | 
| DATE | String | Dia da transação no formato: yyyy-MM-dd | 
| TIME | String | Hora da transação no formato: HH:mm:ss | 
| TIME_TO_PASS_TRANSACTION | String | Tempo de execução da transação | 
| SHORT_NAME | String | Nome customizado exibido na fatura do portador do cartão (máximo de 14 caracteres) | 
| EMAIL_CLIENT | String | Email do cliente (usado para enviar o comprovante) | 
| ACTION_CODE | String | Código de retorno da transação | 
| STATUS_OF_TRANSACTION | String | Status da transação | 
| BALANCE | String | Saldo do voucher (ex.: Ticket, Sodexo) | 
| CAPTURE | String | Define se a transação foi realizada com captura automática ou não. | 
| PINPAD_USED | String | Pinpad utilizado na transação | 
| CANCELLATION_DATE | String | Data do cancelamento no formato: yyyy-MM-dd | 
| SUB_MERCHANT_CATEGORY_CODE | String | MCC do lojista que efetuou a transação (Campo restrito para subAdquirentes) | 
| SUB_MERCHANT_ADDRESS | String | Endereço do lojista que efetuou a transação (Campo restrito para subAdquirentes) | 
