Skip to main content

Transactions

A transaction is a ledger record of money movement — every payment, transfer, buy, or sell creates one. Use this service to query your transaction history, filter by status or date range, and settle completed transactions when funds are ready for disbursement.

import { createOakClient, createTransactionService } from '@oaknetwork/api';

const client = createOakClient({ ... });
const transactions = createTransactionService(client);

Methods

MethodDescription
list(query?)List transactions with optional filters
get(id)Get a transaction by ID
settle(id, request)Settle a completed transaction

List transactions

const result = await transactions.list({
limit: 20,
offset: 0,
});

if (result.ok) {
console.log(`Total: ${result.value.data.count}`);
for (const tx of result.value.data.transaction_list) {
console.log(` ${tx.id}${tx.type}${tx.status}`);
}
}

Query parameters

ParameterTypeDescription
limitnumberMaximum number of results
offsetnumberNumber of results to skip
customer_idstringFilter by customer UUID
type_liststringFilter by type (e.g., "installment_payment")
statusstringComma-separated statuses (e.g., "succeeded,captured")
payment_methodstringFilter by payment method (e.g., "pix")
dateFromstringStart date filter (YYYY-MM-DD)
dateTostringEnd date filter (YYYY-MM-DD)
source_currencystringFilter by source currency
destination_currencystringFilter by destination currency

Get a transaction

const result = await transactions.get('tx_abc123');

if (result.ok) {
const tx = result.value.data;
console.log('Status:', tx.status);
console.log('Provider:', tx.provider);
console.log('Created:', tx.created_at);
}

Settle a transaction

const result = await transactions.settle('tx_abc123', {
charge_id: 'ch_xyz789',
amount: 5000,
status: 'succeeded',
});

if (result.ok) {
console.log('Settlement successful');
}

Transaction statuses

StatusDescription
awaiting_confirmationTransaction created, waiting for confirmation
processingTransaction is being processed
capturedPayment has been captured
succeededTransaction completed successfully
failedTransaction failed

Transaction item fields

FieldTypeDescription
idstringTransaction ID
statusStatusCurrent status
typestringTransaction type
sourceobjectPayment source details
confirmbooleanWhether confirmation was requested
metadataobjectCustom metadata
providerstringPayment provider
created_atstringISO timestamp
updated_atstringISO timestamp