/* Options: Date: 2024-11-21 11:55:15 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: PaysonV1CreateCheckout.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/payment/payson/v1/checkout", Verbs="POST") open class PaysonV1CreateCheckout : IReturn, ICompany { /** * The company id. */ @ApiMember(Description="The company id.", IsRequired=true) var CompanyId:UUID? = null /** * Internal reference id (Could be booking, could be Article..) */ @ApiMember(Description="Internal reference id (Could be booking, could be Article..)") var InternalReferenceId:String? = null /** * The booking id. */ @ApiMember(Description="The booking id.", IsRequired=true) var BookingId:Int? = null /** * 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.") var CheckoutUrl:Uri? = null /** * Optional to set your own confirmation url after payment completed. */ @ApiMember(Description="Optional to set your own confirmation url after payment completed.") var ConfirmationUrl:Uri? = null /** * The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3, 4 = HomePageNew */ @ApiMember(Description="The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3, 4 = HomePageNew", IsRequired=true) var PaymentOrigin:PaymentOrigin? = null /** * 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) var Language:String? = null /** * Articles (Could be Service, rebate code types, etc.. */ @ApiMember(Description="Articles (Could be Service, rebate code types, etc..", IsRequired=true) var Articles:ArrayList? = null /** * Determins if it's a test call */ @ApiMember(Description="Determins if it's a test call") var TestMode:String? = null companion object { private val responseType = PaysonCheckoutV2Response::class.java } override fun getResponseType(): Any? = PaysonV1CreateCheckout.responseType } open class PaysonCheckoutV2Response { /** * The checkout id */ @ApiMember(Description="The checkout id") var Id:UUID? = null /** * The code snippet to for checkout module */ @ApiMember(Description="The code snippet to for checkout module") var Snippet:String? = null /** * The checkout status */ @ApiMember(Description="The checkout status") var Status:Payson2CheckoutStatus? = null } open interface ICompany { var CompanyId:UUID? } enum class PaymentOrigin { HomePage, Embedded, Admin, Apps, HomePageNew, } enum class Payson2CheckoutStatus { None, Created, FormsFilled, ReadyToPay, ProcessingPayment, ReadyToShip, Shipped, PaidToAccount, Canceled, Credited, Expired, Denied, }