RazorpayRegistrationLink constructor

  1. @JsonSerializable(includeIfNull: false)
const RazorpayRegistrationLink({
  1. required String id,
  2. required String entity,
  3. required String type,
  4. required List<RazorpayLineItems> line_items,
  5. String? draft,
  6. int? date,
  7. String? customer_id,
  8. String? currency,
  9. RazorpayCustomerDetails? customer_details,
  10. String? order_id,
  11. int? expire_by,
  12. @JsonKey(toJson: _boolToInt, fromJson: _intToBool) bool? sms_notify,
  13. @JsonKey(toJson: _boolToInt, fromJson: _intToBool) bool? email_notify,
  14. @JsonKey(toJson: _boolToInt, fromJson: _intToBool) bool? partial_payment,
  15. IMap? notes,
  16. String? receipt,
  17. dynamic amount,
  18. String? payment_id,
  19. int? issued_at,
  20. int? paid_at,
  21. int? cancelled_at,
  22. int? expired_at,
  23. NotificationStatus? sms_status,
  24. NotificationStatus? email_status,
  25. int? gross_amount,
  26. int? tax_amount,
  27. int? taxable_amount,
  28. InvoiceStatus? status,
  29. int? amount_paid,
  30. int? amount_due,
  31. String? currency_symbol,
  32. int? billing_start,
  33. int? billing_end,
  34. bool? group_taxes_discounts,
  35. int? terms,
  36. int? comment,
  37. bool? view_less,
  38. dynamic idempotency_key,
  39. dynamic ref_num,
  40. String? auth_link_status,
  41. RazorpayAuthorizationToken? token,
  42. String? nach_form_url,
})

Implementation

@JsonSerializable(includeIfNull: false)
const factory RazorpayRegistrationLink({
  // Fields from RazorpayInvoice (ensure definition is complete)
  required String id,
  required String entity,
  required String type,
  required List<RazorpayLineItems>
      line_items, // Might be empty for auth links, required String invoice_number, required String short_url, // The important auth link URL, required int created_at, String? description,
  String? draft,
  int? date,
  String? customer_id,
  String? currency,
  RazorpayCustomerDetails? customer_details,
  String? order_id,
  int? expire_by,
  @JsonKey(toJson: _boolToInt, fromJson: _intToBool) bool? sms_notify,
  @JsonKey(toJson: _boolToInt, fromJson: _intToBool) bool? email_notify,
  @JsonKey(toJson: _boolToInt, fromJson: _intToBool) bool? partial_payment,
  IMap<dynamic>? notes,
  String? receipt,
  dynamic amount,
  String? payment_id,
  int? issued_at,
  int? paid_at,
  int? cancelled_at,
  int? expired_at,
  NotificationStatus? sms_status,
  NotificationStatus? email_status,
  int? gross_amount,
  int? tax_amount,
  int? taxable_amount,
  InvoiceStatus? status,
  int? amount_paid,
  int? amount_due,
  String? currency_symbol,
  int? billing_start,
  int? billing_end,
  bool? group_taxes_discounts,
  int? terms,
  int? comment,
  bool? view_less,
  dynamic idempotency_key,
  dynamic ref_num,

  // Registration specific fields in response
  String? auth_link_status, // Nullable status
  RazorpayAuthorizationToken?
      token, // Use token model defined in tokens_model.dart
  String? nach_form_url, // Nullable URL
}) = _RazorpayRegistrationLink;