/* Options: Date: 2026-11-08 11:52:11 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: CreditCardPaymentCollection.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/payments/creditcard", Verbs="POST") open class CreditCardPaymentCollection : IReturn { var CreditCardPaymentList:ArrayList = ArrayList() companion object { private val responseType = CreditCardPaymentReply::class.java } override fun getResponseType(): Any? = CreditCardPaymentCollection.responseType } @Route(Path="/api/CreditCard/Payment", Verbs="POST") open class CreditCardPayment : CreditCardPayment(), IReturn { var SubscriptionInfo:SubscriptionParameters? = null companion object { private val responseType = CreditCardPaymentResult::class.java } override fun getResponseType(): Any? = CreditCardPayment.responseType } @Route(Path="/api/CreditCard/Payment", Verbs="POST") open class CreditCardPayment : CreditCardPayment(), IReturn { companion object { private val responseType = CreditCardPaymentResponse::class.java } override fun getResponseType(): Any? = CreditCardPayment.responseType } open class CreditCardPaymentReply { var ClassName:String? = null var UniqueId:String? = null var CreatedDateTime:Date? = null var ClientId:Int? = null var TransactionId:String? = null var ErrorCode:Int? = null var ErrorMessage:String? = null } open class CreditCardPayment { var ClassName:String? = null var UniqueId:String? = null var CreatedDateTime:Date? = null var ClientId:Int? = null var GroupId:String? = null var UserId:String? = null var BhUserId:Int? = null var Amount:String? = null var AutoPay:Boolean? = null var CurrencyType:String? = null var Country:String? = null var CardReferenceOrCardNumber:String? = null var StoreCardInfo:Boolean? = null var Address1:String? = null var Address2:String? = null var BillingCity:String? = null var BillingState:String? = null var PreferredEmailAddress:String? = null var Memo:String? = null var OpportunityId:String? = null var ExpMonth:Int? = null var ExpYear:Int? = null var Cvv:String? = null var PostalCode:String? = null var Location:String? = null var NameOnCard:String? = null var CardType:String? = null var InvoiceList:ArrayList = ArrayList() } open class CreditCardPayment { var Header:ApiClientHeader? = null var BillingAddress:AddressInformation? = null var CardInfo:CreditCardInformation? = null var PaymentInfo:PaymentInformation? = null } @DataContract(Namespace="www.billhighway.com/api") open class CreditCardPayment : IDTOHasApiKey { @DataMember(Name="apiKey", Order=1) @SerializedName("apiKey") var APIKey:String? = null @DataMember(Name="clientId", Order=2) @SerializedName("clientId") var ClientID:Int? = null @DataMember(Name="groupId", Order=3) @SerializedName("groupId") var GroupId:Int? = null @DataMember(Name="amount", Order=4) @SerializedName("amount") var Amount:BigDecimal? = null @DataMember(Name="nameOnCard", Order=5) @SerializedName("nameOnCard") var NameOnCard:String? = null @DataMember(Name="cardNumber", Order=6) @SerializedName("cardNumber") var CardNumber:String? = null @DataMember(Name="cvv", Order=7) @SerializedName("cvv") var CVV:String? = null @DataMember(Name="expMonth", Order=8) @SerializedName("expMonth") var ExpMonth:Int? = null @DataMember(Name="expYear", Order=9) @SerializedName("expYear") var ExpYear:Int? = null @DataMember(Name="address", Order=10) @SerializedName("address") var Address:String? = null @DataMember(Name="city", Order=11) @SerializedName("city") var City:String? = null @DataMember(Name="state", Order=12) @SerializedName("state") var State:String? = null @DataMember(Name="postalCode", Order=13) @SerializedName("postalCode") var PostalCode:String? = null @DataMember(Name="emailAddress", Order=14) @SerializedName("emailAddress") var EmailAddress:String? = null @DataMember(Name="memo", Order=15) @SerializedName("memo") var Memo:String? = null @DataMember(Name="occurs", Order=16) @SerializedName("occurs") var Occurs:String? = null @DataMember(Name="numberOfOccurences", Order=17) @SerializedName("numberOfOccurences") var NumberOfOccurences:String? = null }