/* Options: Date: 2026-10-14 06:35:53 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: CustomerAppInvoicePayRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v1/c/app/invoices/{Uid}/pay", "POST") public class CustomerAppInvoicePayRequest : CustomerAppSessionRequest, IReturn { public typealias Return = CustomerAppResponse public var uid:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case uid } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) uid = try container.decodeIfPresent(String.self, forKey: .uid) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if uid != nil { try container.encode(uid, forKey: .uid) } } } public class CustomerAppResponse : Codable { public var boot:CustomerAppBoot? public var customer:CustomerAppMe? public var addresses:[CustomerAppAddress] = [] public var cards:[CustomerAppCard] = [] public var notif:CustomerAppNotif? public var recurring:[CustomerAppRecurrence] = [] public var booked:CourierBookOrderResponse? public var sent:Bool? public var token:String? public var needsName:Bool? public var name:String? public var url:String? public var clientSecret:String? public var publishableKey:String? public var message:String? public var reopenStep:String? public var customers:[CourierCustomerRow] = [] public var run:RunResult? public var responseStatus:ResponseStatus? required public init(){} } public class CustomerAppSessionRequest : Codable { public var slug:String? public var profile:String? required public init(){} } public class CourierBookPageView : Codable { public var available:Bool? public var bookingOn:Bool? public var business:CourierTrackBusiness? public var profile:CourierBookProfile? public var profiles:[CourierBookProfileLink] = [] public var cardEnabled:Bool? public var publishableKey:String? public var appUrl:String? public var today:String? public var weekday:Int? public var nowMin:Int? required public init(){} } public class CustomerAppBoot : Codable { public var profile:String? public var available:Bool? public var reason:String? public var authMethod:String? public var slug:String? public var page:CourierBookPageView? public var manifestUrl:String? required public init(){} } public class CustomerAppMe : Codable { public var contactId:Int? public var firstName:String? public var lastName:String? public var name:String? public var phone:String? public var needsName:Bool? public var billingMode:String? public var accountCode:String? public var addresses:[CustomerAppAddress] = [] public var cards:[CustomerAppCard] = [] public var notif:CustomerAppNotif? public var orders:[CustomerAppOrder] = [] public var recurring:[CustomerAppRecurrence] = [] public var invoices:[CustomerAppInvoice] = [] public var today:String? public var nowMin:Int? required public init(){} } public class CustomerAppAddress : Codable { public var id:Int? public var label:String? public var street:String? public var unit:String? public var city:String? public var zip:String? public var lat:Double? public var lng:Double? public var inArea:Bool? required public init(){} } public class CustomerAppCard : Codable { public var id:Int? public var label:String? public var brand:String? public var last4:String? public var isDefault:Bool? required public init(){} } public class CustomerAppNotif : Codable { public var texts:Bool? public var push:Bool? public var promos:Bool? required public init(){} } public class CustomerAppRecurrence : Codable { public var id:Int? public var weekday:Int? public var startMin:Int? public var endMin:Int? public var cadence:String? public var levelCode:String? public var units:Int? public var handoff:String? public var address:String? public var paused:Bool? public var payMode:String? public var cardLast4:String? public var nextDate:String? public var skippedDate:String? public var aheadDays:Int? required public init(){} } public class CourierCustomerRow : Codable { public var contactId:Int? public var name:String? public var phone:String? public var billingMode:String? public var accountCode:String? public var orders:Int? public var lastOrderAt:Date? public var unbilled:Int? public var unbilledAmount:Double? public var cards:Int? required public init(){} } public class RunResult : Codable { public var invoices:Int? public var orders:Int? public var total:Double? public var skipped:[String] = [] required public init(){} } public class CourierTrackBusiness : Codable { public var name:String? public var phone:String? required public init(){} } public class CourierBookProfile : Codable { public var code:String? public var name:String? public var shape:String? public var template:String? public var unitOne:String? public var unitMany:String? public var unitOneEs:String? public var unitManyEs:String? public var facilityNoun:String? public var facilityNounEs:String? public var facilityName:String? public var levels:[CourierBookLevel] = [] public var asap:Bool? public var recurring:Bool? public var payTiming:String? public var finalAfterCount:Bool? public var cancelFee:Double? public var missedFee:Double? public var missedWaitMin:Int? public var serviceArea:[String] = [] public var zips:[String] = [] public var handoffs:HandoffOptions? required public init(){} } public class CourierBookProfileLink : Codable { public var code:String? public var name:String? public var shape:String? required public init(){} } public class CustomerAppOrder : Codable { public var id:Int? public var code:String? public var status:String? public var state:String? public var active:Bool? public var levelCode:String? public var levelName:String? public var units:Int? public var unitsFound:Int? public var address:String? public var unit:String? public var zip:String? public var dropAddress:String? public var recipientName:String? public var handoff:String? public var isAsap:Bool? public var dayIx:Int? public var dateText:String? public var startMin:Int? public var endMin:Int? public var driverFirstName:String? public var etaMin:Int? public var promise:String? public var payMode:String? public var amount:Double? public var charged:Double? public var tip:Double? public var cardLast4:String? public var recurrenceId:Int? public var steps:[CustomerAppStep] = [] required public init(){} } public class CustomerAppInvoice : Codable { public var uid:String? public var number:String? public var dateText:String? public var total:Double? public var balance:Double? public var paid:Bool? required public init(){} } public class CourierBookLevel : Codable { public var code:String? public var name:String? public var ready:String? public var withinMin:Int? public var inBy:String? public var surcharge:Double? public var days:[Int] = [] public var deadlineMin:Int? required public init(){} } public class HandoffOptions : Codable { public var hand:Bool? public var porch:Bool? public var desk:Bool? public var sigRequired:Bool? public var idRequired:Bool? public var codeRequired:Bool? required public init(){} } public class CustomerAppStep : Codable { public var key:String? public var done:Bool? public var time:String? required public init(){} } public class CourierBookOrderResponse : Codable { public var done:Bool? public var needsAction:Bool? public var clientSecret:String? public var setupIntentId:String? public var code:String? public var trackUrl:String? public var icsUrl:String? public var windowText:String? public var promise:String? public var total:Double? public var payTiming:String? public var cardLast4:String? public var repeats:String? public var linkSentBy:String? public var reopenStep:String? public var responseStatus:ResponseStatus? required public init(){} }