/* Options: Date: 2026-11-08 12:08:16 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://devapi.billhighway.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: HeldPaymentChargeRefundRq.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class HeldPaymentCreditCardChargeRefundDetails implements IConvertible { String? CardRef; int? ExpMonth; int? ExpYear; String? CVV; String? CardType; String? NameOnCard; String? Address1; String? Address2; String? City; String? State; String? PostalCode; String? Country; HeldPaymentCreditCardChargeRefundDetails({this.CardRef,this.ExpMonth,this.ExpYear,this.CVV,this.CardType,this.NameOnCard,this.Address1,this.Address2,this.City,this.State,this.PostalCode,this.Country}); HeldPaymentCreditCardChargeRefundDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CardRef = json['CardRef']; ExpMonth = json['ExpMonth']; ExpYear = json['ExpYear']; CVV = json['CVV']; CardType = json['CardType']; NameOnCard = json['NameOnCard']; Address1 = json['Address1']; Address2 = json['Address2']; City = json['City']; State = json['State']; PostalCode = json['PostalCode']; Country = json['Country']; return this; } Map toJson() => { 'CardRef': CardRef, 'ExpMonth': ExpMonth, 'ExpYear': ExpYear, 'CVV': CVV, 'CardType': CardType, 'NameOnCard': NameOnCard, 'Address1': Address1, 'Address2': Address2, 'City': City, 'State': State, 'PostalCode': PostalCode, 'Country': Country }; getTypeName() => "HeldPaymentCreditCardChargeRefundDetails"; TypeContext? context = _ctx; } class HeldPaymentGatewaySaleResponse implements IConvertible { String? FailureType; bool? IsDuplicate; bool? IsSuccessful; String? ErrorCode; String? Message; int? GatewayId; String? ConfirmationNumber; String? NetworkTransactionId; HeldPaymentGatewaySaleResponse({this.FailureType,this.IsDuplicate,this.IsSuccessful,this.ErrorCode,this.Message,this.GatewayId,this.ConfirmationNumber,this.NetworkTransactionId}); HeldPaymentGatewaySaleResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { FailureType = json['FailureType']; IsDuplicate = json['IsDuplicate']; IsSuccessful = json['IsSuccessful']; ErrorCode = json['ErrorCode']; Message = json['Message']; GatewayId = json['GatewayId']; ConfirmationNumber = json['ConfirmationNumber']; NetworkTransactionId = json['NetworkTransactionId']; return this; } Map toJson() => { 'FailureType': FailureType, 'IsDuplicate': IsDuplicate, 'IsSuccessful': IsSuccessful, 'ErrorCode': ErrorCode, 'Message': Message, 'GatewayId': GatewayId, 'ConfirmationNumber': ConfirmationNumber, 'NetworkTransactionId': NetworkTransactionId }; getTypeName() => "HeldPaymentGatewaySaleResponse"; TypeContext? context = _ctx; } class AttributeItem implements IConvertible { String? Name; String? Value; AttributeItem({this.Name,this.Value}); AttributeItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Name = json['Name']; Value = json['Value']; return this; } Map toJson() => { 'Name': Name, 'Value': Value }; getTypeName() => "AttributeItem"; TypeContext? context = _ctx; } class CreditCardBillingAddressItem implements IConvertible { String? Address1; String? Address2; String? City; String? PostalCode; String? Region; String? Country; List? Attributes; CreditCardBillingAddressItem({this.Address1,this.Address2,this.City,this.PostalCode,this.Region,this.Country,this.Attributes}); CreditCardBillingAddressItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Address1 = json['Address1']; Address2 = json['Address2']; City = json['City']; PostalCode = json['PostalCode']; Region = json['Region']; Country = json['Country']; Attributes = JsonConverters.fromJson(json['Attributes'],'List',context!); return this; } Map toJson() => { 'Address1': Address1, 'Address2': Address2, 'City': City, 'PostalCode': PostalCode, 'Region': Region, 'Country': Country, 'Attributes': JsonConverters.toJson(Attributes,'List',context!) }; getTypeName() => "CreditCardBillingAddressItem"; TypeContext? context = _ctx; } class CreditCardChargeVerificationResult implements IConvertible { bool? NetworkVerificationAttempted; String? CvvVerificationResult; String? AddressVerificationResult; String? PostalCodeVerificationResult; CreditCardChargeVerificationResult({this.NetworkVerificationAttempted,this.CvvVerificationResult,this.AddressVerificationResult,this.PostalCodeVerificationResult}); CreditCardChargeVerificationResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { NetworkVerificationAttempted = json['NetworkVerificationAttempted']; CvvVerificationResult = json['CvvVerificationResult']; AddressVerificationResult = json['AddressVerificationResult']; PostalCodeVerificationResult = json['PostalCodeVerificationResult']; return this; } Map toJson() => { 'NetworkVerificationAttempted': NetworkVerificationAttempted, 'CvvVerificationResult': CvvVerificationResult, 'AddressVerificationResult': AddressVerificationResult, 'PostalCodeVerificationResult': PostalCodeVerificationResult }; getTypeName() => "CreditCardChargeVerificationResult"; TypeContext? context = _ctx; } class HeldPaymentCreditCardChargeDetails implements IConvertible { String? CardType; int? ExpMonth; int? ExpYear; String? Last4; CreditCardBillingAddressItem? Address; CreditCardChargeVerificationResult? VerificationResult; HeldPaymentCreditCardChargeDetails({this.CardType,this.ExpMonth,this.ExpYear,this.Last4,this.Address,this.VerificationResult}); HeldPaymentCreditCardChargeDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CardType = json['CardType']; ExpMonth = json['ExpMonth']; ExpYear = json['ExpYear']; Last4 = json['Last4']; Address = JsonConverters.fromJson(json['Address'],'CreditCardBillingAddressItem',context!); VerificationResult = JsonConverters.fromJson(json['VerificationResult'],'CreditCardChargeVerificationResult',context!); return this; } Map toJson() => { 'CardType': CardType, 'ExpMonth': ExpMonth, 'ExpYear': ExpYear, 'Last4': Last4, 'Address': JsonConverters.toJson(Address,'CreditCardBillingAddressItem',context!), 'VerificationResult': JsonConverters.toJson(VerificationResult,'CreditCardChargeVerificationResult',context!) }; getTypeName() => "HeldPaymentCreditCardChargeDetails"; TypeContext? context = _ctx; } class AchChargeVerificationResult implements IConvertible { bool? NetworkVerificationAttempted; String? Result; AchChargeVerificationResult({this.NetworkVerificationAttempted,this.Result}); AchChargeVerificationResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { NetworkVerificationAttempted = json['NetworkVerificationAttempted']; Result = json['Result']; return this; } Map toJson() => { 'NetworkVerificationAttempted': NetworkVerificationAttempted, 'Result': Result }; getTypeName() => "AchChargeVerificationResult"; TypeContext? context = _ctx; } class HeldPaymentAchChargeDetails implements IConvertible { String? AccountType; String? RoutingNumber; String? AccountNumberLast4; String? BankName; AchChargeVerificationResult? VerificationResult; HeldPaymentAchChargeDetails({this.AccountType,this.RoutingNumber,this.AccountNumberLast4,this.BankName,this.VerificationResult}); HeldPaymentAchChargeDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AccountType = json['AccountType']; RoutingNumber = json['RoutingNumber']; AccountNumberLast4 = json['AccountNumberLast4']; BankName = json['BankName']; VerificationResult = JsonConverters.fromJson(json['VerificationResult'],'AchChargeVerificationResult',context!); return this; } Map toJson() => { 'AccountType': AccountType, 'RoutingNumber': RoutingNumber, 'AccountNumberLast4': AccountNumberLast4, 'BankName': BankName, 'VerificationResult': JsonConverters.toJson(VerificationResult,'AchChargeVerificationResult',context!) }; getTypeName() => "HeldPaymentAchChargeDetails"; TypeContext? context = _ctx; } class HeldPaymentChargeDetails implements IConvertible { String? PaymentType; double? Amount; String? IntegrationType; String? Currency; HeldPaymentCreditCardChargeDetails? CardDetails; HeldPaymentAchChargeDetails? AchDetails; HeldPaymentChargeDetails({this.PaymentType,this.Amount,this.IntegrationType,this.Currency,this.CardDetails,this.AchDetails}); HeldPaymentChargeDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PaymentType = json['PaymentType']; Amount = JsonConverters.toDouble(json['Amount']); IntegrationType = json['IntegrationType']; Currency = json['Currency']; CardDetails = JsonConverters.fromJson(json['CardDetails'],'HeldPaymentCreditCardChargeDetails',context!); AchDetails = JsonConverters.fromJson(json['AchDetails'],'HeldPaymentAchChargeDetails',context!); return this; } Map toJson() => { 'PaymentType': PaymentType, 'Amount': Amount, 'IntegrationType': IntegrationType, 'Currency': Currency, 'CardDetails': JsonConverters.toJson(CardDetails,'HeldPaymentCreditCardChargeDetails',context!), 'AchDetails': JsonConverters.toJson(AchDetails,'HeldPaymentAchChargeDetails',context!) }; getTypeName() => "HeldPaymentChargeDetails"; TypeContext? context = _ctx; } class AttributeItem implements IConvertible { String? Name; String? Value; AttributeItem({this.Name,this.Value}); AttributeItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Name = json['Name']; Value = json['Value']; return this; } Map toJson() => { 'Name': Name, 'Value': Value }; getTypeName() => "AttributeItem"; TypeContext? context = _ctx; } class HeldPaymentChargeRefundRs implements IConvertible { int? NationalId; int? ChapterId; String? IntegrationType; int? ContextIntegrationPartnerId; int? CallerIntegrationPartnerId; HeldPaymentGatewaySaleResponse? GatewayResponse; HeldPaymentChargeDetails? ChargeDetails; HeldPaymentChargeRefundRs({this.NationalId,this.ChapterId,this.IntegrationType,this.ContextIntegrationPartnerId,this.CallerIntegrationPartnerId,this.GatewayResponse,this.ChargeDetails}); HeldPaymentChargeRefundRs.fromJson(Map json) { fromMap(json); } fromMap(Map json) { NationalId = json['NationalId']; ChapterId = json['ChapterId']; IntegrationType = json['IntegrationType']; ContextIntegrationPartnerId = json['ContextIntegrationPartnerId']; CallerIntegrationPartnerId = json['CallerIntegrationPartnerId']; GatewayResponse = JsonConverters.fromJson(json['GatewayResponse'],'HeldPaymentGatewaySaleResponse',context!); ChargeDetails = JsonConverters.fromJson(json['ChargeDetails'],'HeldPaymentChargeDetails',context!); return this; } Map toJson() => { 'NationalId': NationalId, 'ChapterId': ChapterId, 'IntegrationType': IntegrationType, 'ContextIntegrationPartnerId': ContextIntegrationPartnerId, 'CallerIntegrationPartnerId': CallerIntegrationPartnerId, 'GatewayResponse': JsonConverters.toJson(GatewayResponse,'HeldPaymentGatewaySaleResponse',context!), 'ChargeDetails': JsonConverters.toJson(ChargeDetails,'HeldPaymentChargeDetails',context!) }; getTypeName() => "HeldPaymentChargeRefundRs"; TypeContext? context = _ctx; } // @Route("/integrations/api/{integrationType}/heldpayment/chargerefund", "POST") class HeldPaymentChargeRefundRq implements IReturn, IConvertible { String? integrationType; int? NationalId; int? ChapterId; int? UserId; int? ContextIntegrationPartnerId; int? CallerIntegrationPartnerId; int? AuthenticationId; double? Amount; String? Description; String? GatewayConfirmation; HeldPaymentCreditCardChargeRefundDetails? CardInfo; HeldPaymentChargeRefundRq({this.integrationType,this.NationalId,this.ChapterId,this.UserId,this.ContextIntegrationPartnerId,this.CallerIntegrationPartnerId,this.AuthenticationId,this.Amount,this.Description,this.GatewayConfirmation,this.CardInfo}); HeldPaymentChargeRefundRq.fromJson(Map json) { fromMap(json); } fromMap(Map json) { integrationType = json['integrationType']; NationalId = json['NationalId']; ChapterId = json['ChapterId']; UserId = json['UserId']; ContextIntegrationPartnerId = json['ContextIntegrationPartnerId']; CallerIntegrationPartnerId = json['CallerIntegrationPartnerId']; AuthenticationId = json['AuthenticationId']; Amount = JsonConverters.toDouble(json['Amount']); Description = json['Description']; GatewayConfirmation = json['GatewayConfirmation']; CardInfo = JsonConverters.fromJson(json['CardInfo'],'HeldPaymentCreditCardChargeRefundDetails',context!); return this; } Map toJson() => { 'integrationType': integrationType, 'NationalId': NationalId, 'ChapterId': ChapterId, 'UserId': UserId, 'ContextIntegrationPartnerId': ContextIntegrationPartnerId, 'CallerIntegrationPartnerId': CallerIntegrationPartnerId, 'AuthenticationId': AuthenticationId, 'Amount': Amount, 'Description': Description, 'GatewayConfirmation': GatewayConfirmation, 'CardInfo': JsonConverters.toJson(CardInfo,'HeldPaymentCreditCardChargeRefundDetails',context!) }; createResponse() => HeldPaymentChargeRefundRs(); getResponseTypeName() => "HeldPaymentChargeRefundRs"; getTypeName() => "HeldPaymentChargeRefundRq"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: { 'HeldPaymentCreditCardChargeRefundDetails': TypeInfo(TypeOf.Class, create:() => HeldPaymentCreditCardChargeRefundDetails()), 'HeldPaymentGatewaySaleResponse': TypeInfo(TypeOf.Class, create:() => HeldPaymentGatewaySaleResponse()), 'AttributeItem': TypeInfo(TypeOf.Class, create:() => AttributeItem()), 'CreditCardBillingAddressItem': TypeInfo(TypeOf.Class, create:() => CreditCardBillingAddressItem()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'CreditCardChargeVerificationResult': TypeInfo(TypeOf.Class, create:() => CreditCardChargeVerificationResult()), 'HeldPaymentCreditCardChargeDetails': TypeInfo(TypeOf.Class, create:() => HeldPaymentCreditCardChargeDetails()), 'AchChargeVerificationResult': TypeInfo(TypeOf.Class, create:() => AchChargeVerificationResult()), 'HeldPaymentAchChargeDetails': TypeInfo(TypeOf.Class, create:() => HeldPaymentAchChargeDetails()), 'HeldPaymentChargeDetails': TypeInfo(TypeOf.Class, create:() => HeldPaymentChargeDetails()), 'HeldPaymentChargeRefundRs': TypeInfo(TypeOf.Class, create:() => HeldPaymentChargeRefundRs()), 'HeldPaymentChargeRefundRq': TypeInfo(TypeOf.Class, create:() => HeldPaymentChargeRefundRq()), });