/* Options: Date: 2026-11-08 12:02:44 SwiftVersion: 5.0 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://devapi.billhighway.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: ccPaymentByGroup.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack public class ccPaymentByGroup : ccPaymentByGroup, IReturn, ICanBeRecurring { public typealias Return = ccPaymentByGroupResponse required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } // @DataContract(Namespace="www.billhighway.com/api") public class ccPaymentByGroupResponse : LegacyApiResponse { // @DataMember(Name="ccPaymentByGroupResult") public var results:SoapArrayList? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case results } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) results = try container.decodeIfPresent(SoapArrayList.self, forKey: .results) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if results != nil { try container.encode(results, forKey: .results) } } } // @DataContract(Namespace="www.billhighway.com/api") public class ccPaymentByGroup : IDTOHasApiKey, Codable { // @DataMember(Name="apiKey", Order=1) public var apiKey:String? // @DataMember(Name="featureID", Order=2) public var featureID:Int? // @DataMember(Name="clientID", Order=3) public var clientID:Int? // @DataMember(Name="groupID", Order=4) public var groupID:Int? // @DataMember(Name="Amount", Order=5) public var amount:Double? // @DataMember(Name="nameOnCard", Order=6) public var nameOnCard:String? // @DataMember(Name="cardType", Order=7) public var cardType:String? // @DataMember(Name="cardNumber", Order=8) public var cardNumber:String? // @DataMember(Name="expMonth", Order=9) public var expMonth:String? // @DataMember(Name="expYear", Order=10) public var expYear:String? // @DataMember(Name="cvv", Order=11) public var cvv:String? // @DataMember(Name="address", Order=12) public var address:String? // @DataMember(Name="city", Order=13) public var city:String? // @DataMember(Name="state", Order=14) public var state:String? // @DataMember(Name="postalCode", Order=15) public var postalCode:String? // @DataMember(Name="email", Order=16) public var email:String? // @DataMember(Name="memo", Order=17) public var memo:String? // @DataMember(Name="occurs", Order=18) public var occurs:String? // @DataMember(Name="numberOfOccurrences", Order=19) public var numberOfOccurences:String? required public init(){} } public protocol IDTOHasApiKey { var apiKey:String? { get set } } public protocol ICanBeRecurring { var occurs:String? { get set } var numberOfOccurences:String? { get set } } public class SoapArrayList : ArrayList { required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } // @DataContract(Namespace="www.billhighway.com/api") public class LegacyApiResponse : IHaveErrorField, Codable { // @DataMember public var amount:Double? // @DataMember public var confirmationNumber:String? // @DataMember public var responseCode:String? // @DataMember public var responseDescription:String? // @DataMember public var resultCode:ResultCode? required public init(){} }