BokaMera.API.Host

<back to all web services

PaysonV2CreateCheckout

The following routes are available for this service:
POST/payment/payson/v2/checkoutCreate an checkout for Booking. Note if existing checkouts already exists, i will invalidate those.Create payson checkout (requires settings for Payson Checkout 2.0)
"use strict";
/** @typedef {'None'|'Created'|'FormsFilled'|'ReadyToPay'|'ProcessingPayment'|'ReadyToShip'|'Shipped'|'PaidToAccount'|'Canceled'|'Credited'|'Expired'|'Denied'} */
export var Payson2CheckoutStatus;
(function (Payson2CheckoutStatus) {
    Payson2CheckoutStatus["None"] = "None"
    Payson2CheckoutStatus["Created"] = "Created"
    Payson2CheckoutStatus["FormsFilled"] = "FormsFilled"
    Payson2CheckoutStatus["ReadyToPay"] = "ReadyToPay"
    Payson2CheckoutStatus["ProcessingPayment"] = "ProcessingPayment"
    Payson2CheckoutStatus["ReadyToShip"] = "ReadyToShip"
    Payson2CheckoutStatus["Shipped"] = "Shipped"
    Payson2CheckoutStatus["PaidToAccount"] = "PaidToAccount"
    Payson2CheckoutStatus["Canceled"] = "Canceled"
    Payson2CheckoutStatus["Credited"] = "Credited"
    Payson2CheckoutStatus["Expired"] = "Expired"
    Payson2CheckoutStatus["Denied"] = "Denied"
})(Payson2CheckoutStatus || (Payson2CheckoutStatus = {}));
export class PaysonCheckoutV2Response {
    /** @param {{Id?:string,Snippet?:string,Status?:Payson2CheckoutStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The checkout id */
    Id;
    /**
     * @type {string}
     * @description The code snippet to for checkout module */
    Snippet;
    /**
     * @type {Payson2CheckoutStatus}
     * @description The checkout status */
    Status;
}
/** @typedef {'HomePage'|'Embedded'|'Admin'|'Apps'|'HomePageNew'} */
export var PaymentOrigin;
(function (PaymentOrigin) {
    PaymentOrigin["HomePage"] = "HomePage"
    PaymentOrigin["Embedded"] = "Embedded"
    PaymentOrigin["Admin"] = "Admin"
    PaymentOrigin["Apps"] = "Apps"
    PaymentOrigin["HomePageNew"] = "HomePageNew"
})(PaymentOrigin || (PaymentOrigin = {}));
export class PaysonV2CreateCheckout {
    /** @param {{CompanyId?:string,BookingId?:number,CheckoutUrl?:string,ConfirmationUrl?:string,PaymentOrigin?:PaymentOrigin,Language?:string,CountryCode?:string,TestMode?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The company id. */
    CompanyId;
    /**
     * @type {number}
     * @description The booking id. */
    BookingId;
    /**
     * @type {string}
     * @description Optional to set the checkout url. This url will be redirected to if payment is interupted for some reason. */
    CheckoutUrl;
    /**
     * @type {string}
     * @description Optional to set your own confirmation url after payment completed. */
    ConfirmationUrl;
    /**
     * @type {PaymentOrigin}
     * @description The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3 */
    PaymentOrigin;
    /**
     * @type {string}
     * @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. */
    Language;
    /**
     * @type {string}
     * @description Country code for checkout */
    CountryCode;
    /**
     * @type {boolean}
     * @description Determins if it's a test call */
    TestMode;
}

JavaScript PaysonV2CreateCheckout DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /payment/payson/v2/checkout HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","BookingId":0,"PaymentOrigin":"HomePage","Language":"String","CountryCode":"String","TestMode":false}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Snippet":"String","Status":"None"}