/* Options: Date: 2026-11-08 12:03:42 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: CreditCardPaymentRefund.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/api/CreditCard/Payment/Refund", Verbs="POST") open class CreditCardPaymentRefund : CreditCardPaymentRefund(), IReturn { companion object { private val responseType = CreditCardPaymentRefundResult::class.java } override fun getResponseType(): Any? = CreditCardPaymentRefund.responseType } open class CreditCardPaymentRefundResult : CreditCardCloudServiceResponse() { var TransactionRecordID:Long? = null var FailureType:PaymentFailureType? = null var IsOverpayment:Boolean? = null var PaymentNotFound:Boolean? = null } open class ApiClientHeader { var ClientId:Int? = null var Referrer:String? = null var IpAddress:String? = null var LoggedInUserId:Int? = null var GroupId:Int? = null var Task:String? = null var Machine:String? = null var Location:String? = null var CreatedBy:Int? = null var CampaignId:Int? = null var ReCaptchaScore:BigDecimal? = null } open class CreditCardRefundInformation { var CurrencyCode:String? = null var GatewayTransactionId:String? = null var Amount:BigDecimal? = null var Memo:String? = null var MemberPaymentId:Long? = null var Type:PaymentTransactionType? = null var ReasonId:Int? = null var UserId:Int? = null } open class CreditCardPaymentRefund { var Header:ApiClientHeader? = null var RefundInfo:CreditCardRefundInformation? = null } open interface IHaveErrorField { var IsError:Boolean? } enum class PaymentFailureType(val value:Int) { @SerializedName("0") None(0), @SerializedName("1") Gateway(1), @SerializedName("2") PaymentTransaction(2), @SerializedName("3") KeyProcurment(3), @SerializedName("4") CardVerification(4), } open class CreditCardCloudServiceResponse : IHaveErrorField { 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 var IsError:Boolean? = null } open interface IHaveErrorField { var IsError:Boolean? } enum class PaymentTransactionType(val value:Int) { @SerializedName("0") None(0), @SerializedName("1") MemberPayment(1), @SerializedName("2") DonationPayment(2), @SerializedName("3") PmiPayment(3), @SerializedName("4") MemberPaymentRefund(4), @SerializedName("5") DonationRefund(5), @SerializedName("6") SmpPayment(6), }