/* Options: Date: 2024-11-07 07:34:57 SwiftVersion: 5.0 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: StripeV1CreateCheckout.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/payment/stripe/v1/checkout", "POST") public class StripeV1CreateCheckout : IReturn, ICompany, Codable { public typealias Return = StripeCheckoutQueryResponse /** * The company id. */ // @ApiMember(Description="The company id.", IsRequired=true) public var companyId:String? /** * Country code for checkout */ // @ApiMember(Description="Country code for checkout", IsRequired=true) public var countryCode:String /** * Articles (Could be Service, rebate code types, etc.. */ // @ApiMember(Description="Articles (Could be Service, rebate code types, etc..", IsRequired=true) public var articles:[ArticleToCreate] = [] /** * 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 your own confirmation url after payment completed. */ // @ApiMember(Description="Optional to set your own confirmation url after payment completed.") public var confirmationUrl:String /** * If set, Checkout displays a back button and customers will be directed to this URL if they decide to cancel payment and return to your website. This parameter is not allowed if ui_mode is embedded. */ // @ApiMember(Description="If set, Checkout displays a back button and customers will be directed to this URL if they decide to cancel payment and return to your website. This parameter is not allowed if ui_mode is embedded.") public var cancelUrl:String /** * The UI mode of the Session. Defaults to hosted; One of: embedded, or hosted */ // @ApiMember(Description="The UI mode of the Session. Defaults to hosted; One of: embedded, or hosted", IsRequired=true) public var uiMode:String required public init(){} } public class StripeCheckoutQueryResponse : Codable { /** * The checkout session id */ // @ApiMember(Description="The checkout session id") public var number:String /** * 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 /** * Client secret to be used when initializing Stripe.js embedded checkout. */ // @ApiMember(Description="Client secret to be used when initializing Stripe.js embedded checkout.") public var clientSecret:String required public init(){} } public protocol ICompany { var companyId:String? { get set } }