createPayment method

Future<CreatePaymentResponse> createPayment(
  1. CreatePaymentRequest paymentItems
)

Implementation

Future<CreatePaymentResponse> createPayment(CreatePaymentRequest paymentItems) async {
  try {
    _client = MyHttpClient(baseUrlTonder);
    Response? response = await _client?.post(
        Uri.parse('api/v1/business/${paymentItems.business_pk}/payments/'),
        body: json.encode(paymentItems.toMap()),
        headers: {
          'Content-Type': 'application/json',
          'Authorization': 'Token $apiKeyTonder'
        }
    );

    if (response!.statusCode >= 200 ||response.statusCode < 300) {
      final jsonResponse = json.decode(response.body) as Map<String, dynamic>;
      return CreatePaymentResponse.fromJson(jsonResponse);
    } else {
      throw Exception(response.statusCode);
    }
  } catch (e) {
    throw Exception(e);
  }
}