fetchSettlements method
Future<Response<RazorpayApiResponse<RazorpayTransfer> > >
fetchSettlements({
- RazorpayPaginationOptions? pageParams,
- void callback(
- RazorpayApiException?,
- Response<
RazorpayApiResponse< ?RazorpayTransfer> >
Fetch settlement details for transfers (using expand) Note: This specific JS function might be redundant if 'all' supports expand. Kept for parity, but using 'expand' with 'all' might be preferred.
Implementation
Future<Response<RazorpayApiResponse<RazorpayTransfer>>> fetchSettlements({
RazorpayPaginationOptions? pageParams, // Added pagination
void Function(
RazorpayApiException?,
Response<RazorpayApiResponse<RazorpayTransfer>>?,
)? callback,
}) async {
// Use the 'all' method with expand parameter
final transferQuery = RazorpayTransferQuery(
from: pageParams?.from,
to: pageParams?.to,
count: pageParams?.count,
skip: pageParams?.skip,
// expand: ['recipient_settlement'] // Assuming this is the correct expand key
);
// Build query parameters carefully
final queryParams = {
...transferQuery.toJson(),
'expand[]': 'recipient_settlement', // Hardcode expand here
};
queryParams.removeWhere((key, value) => value == null);
return api.get<RazorpayApiResponse<RazorpayTransfer>>(
{
'url': '/transfers',
'data': queryParams,
},
callback: callback,
fromJsonFactory: (json) => RazorpayApiResponse<RazorpayTransfer>.fromJson(
json,
(itemJson) =>
RazorpayTransfer.fromJson(itemJson! as Map<String, dynamic>),
),
);
}