POST | /payment/payson/v1/checkout | Create an checkout for Booking. Note if existing checkouts already exists, i will invalidate those. | Create payson checkout (requires settings for Payson Checkout 1.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 PaysonV1CreateCheckout {
/** @param {{CompanyId?:string,InternalReferenceId?:string,BookingId?:number,CheckoutUrl?:string,ConfirmationUrl?:string,PaymentOrigin?:PaymentOrigin,Language?:string,Articles?:ArticleToCreate[],TestMode?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The company id. */
CompanyId;
/**
* @type {string}
* @description Internal reference id (Could be booking, could be Article..) */
InternalReferenceId;
/**
* @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, 4 = HomePageNew */
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 {ArticleToCreate[]}
* @description Articles (Could be Service, rebate code types, etc.. */
Articles;
/**
* @type {string}
* @description Determins if it's a test call */
TestMode;
}
export class ArticleToCreate {
/** @param {{ArticleId?:number,ArticleTypeId?:number,Quantity?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
ArticleId;
/** @type {number} */
ArticleTypeId;
/** @type {number} */
Quantity;
}
JavaScript PaysonV1CreateCheckout DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /payment/payson/v1/checkout HTTP/1.1
Host: api.bokamera.se
Accept: application/json
Content-Type: application/json
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","InternalReferenceId":"String","BookingId":0,"PaymentOrigin":"HomePage","Language":"String","Articles":[{"ArticleId":0,"ArticleTypeId":0,"Quantity":0}],"TestMode":"String"}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"Snippet":"String","Status":"None"}