/* Options: Date: 2026-11-08 12:08:39 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://devapi.billhighway.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: HeldPaymentChargeRefundRq.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/integrations/api/{integrationType}/heldpayment/chargerefund", Verbs="POST") open class HeldPaymentChargeRefundRq : IReturn { var integrationType:String? = null var NationalId:Int? = null var ChapterId:Int? = null var UserId:Int? = null var ContextIntegrationPartnerId:Int? = null var CallerIntegrationPartnerId:Int? = null var AuthenticationId:Int? = null var Amount:BigDecimal? = null var Description:String? = null var GatewayConfirmation:String? = null var CardInfo:HeldPaymentCreditCardChargeRefundDetails? = null companion object { private val responseType = HeldPaymentChargeRefundRs::class.java } override fun getResponseType(): Any? = HeldPaymentChargeRefundRq.responseType } open class HeldPaymentChargeRefundRs { var NationalId:Int? = null var ChapterId:Int? = null var IntegrationType:String? = null var ContextIntegrationPartnerId:Int? = null var CallerIntegrationPartnerId:Int? = null var GatewayResponse:HeldPaymentGatewaySaleResponse? = null var ChargeDetails:HeldPaymentChargeDetails? = null } open class HeldPaymentCreditCardChargeRefundDetails { var CardRef:String? = null var ExpMonth:Int? = null var ExpYear:Int? = null var CVV:String? = null var CardType:String? = null var NameOnCard:String? = null var Address1:String? = null var Address2:String? = null var City:String? = null var State:String? = null var PostalCode:String? = null var Country:String? = null } open class HeldPaymentGatewaySaleResponse { var FailureType:String? = null var IsDuplicate:Boolean? = null var IsSuccessful:Boolean? = null var ErrorCode:String? = null var Message:String? = null var GatewayId:Int? = null var ConfirmationNumber:String? = null var NetworkTransactionId:String? = null } open class HeldPaymentChargeDetails { var PaymentType:String? = null var Amount:BigDecimal? = null var IntegrationType:String? = null var Currency:String? = null var CardDetails:HeldPaymentCreditCardChargeDetails? = null var AchDetails:HeldPaymentAchChargeDetails? = null } open class AttributeItem { var Name:String? = null var Value:String? = null } open class CreditCardBillingAddressItem { var Address1:String? = null var Address2:String? = null var City:String? = null var PostalCode:String? = null var Region:String? = null var Country:String? = null var Attributes:ArrayList = ArrayList() } open class HeldPaymentCreditCardChargeDetails { var CardType:String? = null var ExpMonth:Int? = null var ExpYear:Int? = null var Last4:String? = null var Address:CreditCardBillingAddressItem? = null var VerificationResult:CreditCardChargeVerificationResult? = null } open class HeldPaymentAchChargeDetails { var AccountType:String? = null var RoutingNumber:String? = null var AccountNumberLast4:String? = null var BankName:String? = null var VerificationResult:AchChargeVerificationResult? = null } open class CreditCardChargeVerificationResult { var NetworkVerificationAttempted:Boolean? = null var CvvVerificationResult:String? = null var AddressVerificationResult:String? = null var PostalCodeVerificationResult:String? = null } open class AchChargeVerificationResult { var NetworkVerificationAttempted:Boolean? = null var Result:String? = null } open class AttributeItem { var Name:String? = null var Value:String? = null }