BokaMera.API.Host

<back to all web services

QvicklyCheckoutv1CreateCheckout

The following routes are available for this service:
POST/payment/billmate/v1/checkoutCreate an checkout for Booking. Note if existing checkouts already exists, i will invalidate those.Create Qvickly checkout (requires settings for Billmat Checkout 1.0)
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class QvicklyCheckoutQueryResponse:
    # @ApiMember(Description="The checkout id")
    number: int = 0
    """
    The checkout id
    """


    # @ApiMember(Description="The url for checkout module to be placed in a iframe")
    url: Optional[str] = None
    """
    The url for checkout module to be placed in a iframe
    """


    # @ApiMember(Description="The checkout status")
    status: Optional[str] = None
    """
    The checkout status
    """


class PaymentOrigin(str, Enum):
    HOME_PAGE = 'HomePage'
    EMBEDDED = 'Embedded'
    ADMIN = 'Admin'
    APPS = 'Apps'
    HOME_PAGE_NEW = 'HomePageNew'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class QvicklyCheckoutv1CreateCheckout(ICompany):
    # @ApiMember(Description="The company id.", IsRequired=true)
    company_id: Optional[str] = None
    """
    The company id.
    """


    # @ApiMember(Description="The booking id.", IsRequired=true)
    booking_id: int = 0
    """
    The booking id.
    """


    # @ApiMember(Description="Optional to set the checkout url. This url will be redirected to if payment is interupted for some reason.")
    checkout_url: Optional[str] = None
    """
    Optional to set the checkout url. This url will be redirected to if payment is interupted for some reason.
    """


    # @ApiMember(Description="Optional to set your own confirmation url after payment completed.")
    confirmation_url: Optional[str] = None
    """
    Optional to set your own confirmation url after payment completed.
    """


    # @ApiMember(Description="The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3", IsRequired=true)
    payment_origin: Optional[PaymentOrigin] = None
    """
    The payment origin id. HomePage = 0, Embedded = 1, Admin = 2, Apps = 3
    """


    # @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)
    language: Optional[str] = None
    """
    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="Determins if it's a test call")
    test_mode: bool = False
    """
    Determins if it's a test call
    """

Python QvicklyCheckoutv1CreateCheckout DTOs

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

HTTP + OTHER

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

POST /payment/billmate/v1/checkout HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

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

{"Number":0,"Url":"String","Status":"String"}