listPayments method

Future<SquarePaymentResponse> listPayments({
  1. required ListPaymentRequest request,
  2. String? authToken,
})

Retrieves a list of payments taken by the account making the request.

Results are eventually consistent, and new payments or changes to payments might take several seconds to appear.

The maximum results per page is 100.

Implementation

Future<SquarePaymentResponse> listPayments({
  required ListPaymentRequest request,
  String? authToken,
}) async {

  authToken ??= authenticationService.getCachedToken()?.accessToken;

  Map<String, String> headers = {
    "Authorization": "Bearer ${authToken ?? ""}",
    'Content-Type': 'application/json; charset=UTF-8',
    'Accept': 'application/json',

  };

  Uri endpoint = Uri.https(
      baseUrl, "/v2/payments", request.toJson().toQueryParam());

  //print (endpoint.toString());

  var response = await
  http.get(endpoint,  headers: headers);

  if (response.statusCode == 200) {
    print (jsonDecode(response.body));
    return SquarePaymentResponse.fromJson(jsonDecode(response.body));
  }
  else {
    print (response.body);
    throw PaymentException(statusCode: response.statusCode, message: SquarePaymentResponse.fromJson(jsonDecode(response.body)).errors?[0].detail?.toString());
  }
}