notifyBy method

Future<Response<RazorpayNotifyResponse>> notifyBy({
  1. required String invoiceId,
  2. required NotifyMedium medium,
  3. void callback(
    1. RazorpayApiException?,
    2. Response<RazorpayNotifyResponse>?
    )?,
})

Send/re-send notification for invoice by given medium

@param invoiceId - The unique identifier of the invoice @param medium - Possible values: sms, email

Implementation

Future<Response<RazorpayNotifyResponse>> notifyBy({
  required String invoiceId,
  required NotifyMedium medium,
  void Function(RazorpayApiException?, Response<RazorpayNotifyResponse>?)?
      callback,
}) async {
  if (invoiceId.isEmpty) {
    throw ArgumentError(MISSING_ID_ERROR);
  }
  // Convert enum to string for URL
  final mediumString = medium.toString().split('.').last;
  final url = '$BASE_URL/$invoiceId/notify_by/$mediumString';

  return api.post<RazorpayNotifyResponse>(
    {'url': url},
    fromJsonFactory: RazorpayNotifyResponse.fromJson,
    callback: callback,
  );
}