/* Options: Date: 2024-11-21 12:03:40 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: SendCheckoutPaymentRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/payment/payson/v2/checkout/{Id}/sendpaymentrequest", "PUT") // @ValidateRequest(Validator="IsAuthenticated") public class SendCheckoutPaymentRequest : IReturn, ICompany, Codable { public typealias Return = PaysonCheckoutV2Response /** * The company id, if empty will use the company id for the user you are logged in with. */ // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") public var companyId:String? /** * The checkout id. The checkout must have status ReadyToShip - 5 */ // @ApiMember(Description="The checkout id. The checkout must have status ReadyToShip - 5", IsRequired=true, ParameterType="path") public var id:String required public init(){} } public class PaysonCheckoutV2Response : Codable { /** * The checkout id */ // @ApiMember(Description="The checkout id") public var id:String /** * The code snippet to for checkout module */ // @ApiMember(Description="The code snippet to for checkout module") public var snippet:String /** * The checkout status */ // @ApiMember(Description="The checkout status") public var status:Payson2CheckoutStatus required public init(){} } public protocol ICompany { var companyId:String? { get set } } public enum Payson2CheckoutStatus : String, Codable { case None case Created case FormsFilled case ReadyToPay case ProcessingPayment case ReadyToShip case Shipped case PaidToAccount case Canceled case Credited case Expired case Denied }