BokaMera.API.Host

<back to all web services

QvicklyCheckoutIpnCallBack

The following routes are available for this service:
POST/payment/billmate/v1/ipncallbackIPN callback for Qvickly checkout 1.0IPN callback for Qvickly checkout 1.0

export class IpnCallBackResponse
{
    public Message: string;
    public Success: boolean;

    public constructor(init?: Partial<IpnCallBackResponse>) { (Object as any).assign(this, init); }
}

export class ServerDataResponse
{
    public HTTP_HOST: string;
    public HTTP_CONNECTION: string;
    public HTTP_CACHE_CONTROL: string;
    public HTTP_ACCEPT: string;
    public HTTP_USER_AGENT: string;
    public HTTP_ACCEPT_ENCODING: string;
    public HTTP_ACCEPT_LANGUAGE: string;
    public PATH: string;
    public SERVER_SOFTWARE: string;
    public SERVER_NAME: string;
    public SERVER_ADDR: string;
    public SERVER_PORT: string;
    public REMOTE_ADDR: string;
    public REMOTE_PORT: string;
    public GATEWAY_INTERFACE: string;
    public SERVER_PROTOCOL: string;
    public REQUEST_METHOD: string;
    public QUERY_STRING: string;
    public REQUEST_TIME: string;

    public constructor(init?: Partial<ServerDataResponse>) { (Object as any).assign(this, init); }
}

export class CredentialsResponse
{
    public hash: string;
    public id: string;
    public version: string;
    public client: string;
    public serverdata: ServerDataResponse;
    public time: string;
    public test: string;
    public language: string;

    public constructor(init?: Partial<CredentialsResponse>) { (Object as any).assign(this, init); }
}

export class QvicklyIpnCallbackResponseData
{
    public number: string;
    public status: string;
    public orderid: string;
    public url: string;

    public constructor(init?: Partial<QvicklyIpnCallbackResponseData>) { (Object as any).assign(this, init); }
}

export class QvicklyCheckoutIpnCallBack implements ICompany
{
    /** @description 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 CompanyId?: string;

    /** @description The booking id. */
    // @ApiMember(Description="The booking id.")
    public BookingId: number;

    /** @description The payment credentials. */
    // @ApiMember(Description="The payment credentials.")
    public credentials: CredentialsResponse;

    /** @description The payment ipn callback data. */
    // @ApiMember(Description="The payment ipn callback data.")
    public data: QvicklyIpnCallbackResponseData;

    public constructor(init?: Partial<QvicklyCheckoutIpnCallBack>) { (Object as any).assign(this, init); }
}

TypeScript QvicklyCheckoutIpnCallBack 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

HTTP + JSON

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

POST /payment/billmate/v1/ipncallback HTTP/1.1 
Host: testapi.bokamera.se 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","BookingId":0,"credentials":{"hash":"String","id":"String","version":"String","client":"String","serverdata":{"HTTP_HOST":"String","HTTP_CONNECTION":"String","HTTP_CACHE_CONTROL":"String","HTTP_ACCEPT":"String","HTTP_USER_AGENT":"String","HTTP_ACCEPT_ENCODING":"String","HTTP_ACCEPT_LANGUAGE":"String","PATH":"String","SERVER_SOFTWARE":"String","SERVER_NAME":"String","SERVER_ADDR":"String","SERVER_PORT":"String","REMOTE_ADDR":"String","REMOTE_PORT":"String","GATEWAY_INTERFACE":"String","SERVER_PROTOCOL":"String","REQUEST_METHOD":"String","QUERY_STRING":"String","REQUEST_TIME":"String"},"time":"String","test":"String","language":"String"},"data":{"number":"String","status":"String","orderid":"String","url":"String"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Message":"String","Success":false}