This method retrieves the posted merchant payout transactions. For payload explanations for both request and response, click here
using OneKhusa.SDK; 
using OneKhusa.SDK.Models.Transactions.SingleDisbursements; 
using OneKhusa.SDK.Models.Constants.Shared; 

//code omitted for brevity 

OneKhusaResponse<List<GetPayoutsResponse>> response = await client 
    .Transactions 
    .SingleDisbursements 
    .GetPayoutsAsync(new GetPayoutsRequest 
    { 
        MerchantAccountNumber = 12345678, 
        TransactionDate = new DateTime(2026, 2, 1), 
        IsIncremental = false, 
        PageNumber = 1, 
        NumberOfReturnedRows = 20, 
        SearchBy = SearchFields.TransactionReferenceNumber, 
        SearchText = string.Empty 
    }); 

if (response is { IsSuccess: true, Data: not null }) 
{ 
    foreach (var payout in response.Data) 
    { 
        Console.WriteLine($""" 
            BeneficiaryAccountNumber: {payout.BeneficiaryAccountNumber}; 
            BeneficiaryName: {payout.BeneficiaryName}; 
            ConnectorName: {payout.ConnectorName};  
            CurrencyCode: {payout.CurrencyCode}; 
            TransactionReferenceNumber: {payout.TransactionReferenceNumber}; 
            TransactionAmount: {payout.TransactionAmount}; 
            TransactionDescription: {payout.TransactionDescription}; 
            TransactionDate: {payout.TransactionDate}; 
            TransactionStatusCode: {payout.TransactionStatusCode}; 
            TransactionStatusName: {payout.TransactionStatusName} 
        """); 
    } 
    return; 
}
//it means an error has occurred: RFC7807 compliant error object
Console.WriteLine($"""
        Type: {response.Error?.Type};
        Title: {response.Error?.Title};
        Detail: {response.Error?.Detail};
        ErrorCode: {response.Error?.ErrorCode};
        Status: {response.Error?.Status};
        Instance: {response.Error?.Instance};
        Errors: {string.Join(";", response.Error?.Errors ?? [])}
""");
Console.ReadLine();