/* Options: Date: 2024-11-21 11:31:22 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: QvicklyV1CreateCheckout.* //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 QvicklyV1CreateCheckout : IReturn, ICompany, Codable { public typealias Return = QvicklyCheckoutQueryResponse /** * The company id. */ // @ApiMember(Description="The company id.", IsRequired=true) public var companyId:String? /** * An internal reference id (Could be booking, rebate code etc.) */ // @ApiMember(Description="An internal reference id (Could be booking, rebate code etc.)") public var bookingId:String /** * An internal reference id (Could be booking, rebate code etc.) */ // @ApiMember(Description="An internal reference id (Could be booking, rebate code etc.)", IsRequired=true) public var internalReferenceId:String /** * 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 /** * Articles (Could be Service, rebate code types, etc.. */ // @ApiMember(Description="Articles (Could be Service, rebate code types, etc..", IsRequired=true) public var articles:[ArticleToCreate] = [] 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 }