/* Options: Date: 2024-07-03 14:53:57 SwiftVersion: 5.0 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: QvicklyCheckoutv1CreateCheckout.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/payment/billmate/v1/checkout", "POST") public class QvicklyCheckoutv1CreateCheckout : IReturn, ICompany, Codable { public typealias Return = QvicklyCheckoutQueryResponse /** * The company id. */ // @ApiMember(Description="The company id.", IsRequired=true) public var companyId:String? /** * The booking id. */ // @ApiMember(Description="The booking id.", IsRequired=true) public var bookingId:Int /** * Optional to set the checkout url. This url will be redirected to if payment is interupted for some reason. */ // @ApiMember(Description="Optional to set the checkout url. This url will be redirected to if payment is interupted for some reason.") public var checkoutUrl:Uri /** * Optional to set your own confirmation url after payment completed. */ // @ApiMember(Description="Optional to set your own confirmation url after payment completed.") public var confirmationUrl:Uri /** * The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3 */ // @ApiMember(Description="The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3", IsRequired=true) public var paymentOrigin:PaymentOrigin /** * If you want to have another language (sv, fi, dk, no, en) than the default language in system settings, specify it here. Leave empty if default language should be used. */ // @ApiMember(Description="If you want to have another language (sv, fi, dk, no, en) than the default language in system settings, specify it here. Leave empty if default language should be used.", IsRequired=true) public var language:String /** * Determins if it's a test call */ // @ApiMember(Description="Determins if it's a test call") public var testMode:Bool required public init(){} } public class QvicklyCheckoutQueryResponse : Codable { /** * The checkout id */ // @ApiMember(Description="The checkout id") public var number:Int /** * The url for checkout module to be placed in a iframe */ // @ApiMember(Description="The url for checkout module to be placed in a iframe") public var url:String /** * The checkout status */ // @ApiMember(Description="The checkout status") public var status:String required public init(){} } public protocol ICompany { var companyId:String? { get set } } public enum PaymentOrigin : String, Codable { case HomePage case Embedded case Admin case Apps case HomePageNew }