O provider STNTransactionListProvider possui os métodos, listTransactions: e listTransactionsByPan:.
O método listTransactions: retorna um NSArray com as transações (STNTransactionModel:) passadas no aplicativo. A ultima transação passada será sempre a primeira no array.
// Array de transações
NSArray *transactionsList = [STNTransactionListProvider listTransactions];
for (STNTransactionModel *transaction in transactionsList)
{
NSLog(@"Valor da transação em centavos: %@", transaction.amount);
NSLog(@"Status da transação: %@", transaction.statusString);
NSLog(@"Tipo da transação: %@", transaction.typeString);
}
Para obter as transações filtrando por um cartão especifico, o método listTransactionsByPan: deve ser usado. Esse método solicitará a inserção de um cartão com chip. E retornará um array de transações dentro de um bloco.
STNTransactionListProvider *transactionListProvider = [[STNTransactionListProvider alloc] init];
// Array de transações
NSArray *transactions = [STNTransactionListProvider listTransactionsByPan:^(BOOL succeeded, NSArray *transactionsList, NSError *error)
{
if (succeeded) // verifica se a requisição ocorreu com sucesso
{
for (STNTransactionModel *transaction in transactionsList)
{
NSLog(@"Valor da transação em centavos: %@", transaction.amount);
NSLog(@"Status da transação: %@", transaction.statusString);
NSLog(@"Tipo da transação: %@", transaction.typeString);
}
} else
{
// trata o erro
NSLog(@"%@", error.description);
}
}];
Possíveis códigos de erro:
101, 304.