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
import 'package:servicestack/servicestack.dart';

class IpnCallBackResponse implements IConvertible
{
    String? Message;
    bool? Success;

    IpnCallBackResponse({this.Message,this.Success});
    IpnCallBackResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Message = json['Message'];
        Success = json['Success'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Message': Message,
        'Success': Success
    };

    getTypeName() => "IpnCallBackResponse";
    TypeContext? context = _ctx;
}

class QvicklyIpnCallbackResponseData implements IConvertible
{
    String? number;
    String? status;
    String? orderid;
    String? url;

    QvicklyIpnCallbackResponseData({this.number,this.status,this.orderid,this.url});
    QvicklyIpnCallbackResponseData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        number = json['number'];
        status = json['status'];
        orderid = json['orderid'];
        url = json['url'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'number': number,
        'status': status,
        'orderid': orderid,
        'url': url
    };

    getTypeName() => "QvicklyIpnCallbackResponseData";
    TypeContext? context = _ctx;
}

class QvicklyCheckoutIpnCallBack implements ICompany, IConvertible
{
    /**
    * 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.")
    String? CompanyId;

    /**
    * Internal reference id (Could be booking, could be Article..)
    */
    // @ApiMember(Description="Internal reference id (Could be booking, could be Article..)")
    String? BookingId;

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

    /**
    * Article type (Could be Service, rebate code types, etc..
    */
    // @ApiMember(Description="Article type (Could be Service, rebate code types, etc..", IsRequired=true)
    int? ArticleTypeId;

    QvicklyCheckoutIpnCallBack({this.CompanyId,this.BookingId,this.data,this.ArticleTypeId});
    QvicklyCheckoutIpnCallBack.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        BookingId = json['BookingId'];
        data = JsonConverters.fromJson(json['data'],'QvicklyIpnCallbackResponseData',context!);
        ArticleTypeId = json['ArticleTypeId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'BookingId': BookingId,
        'data': JsonConverters.toJson(data,'QvicklyIpnCallbackResponseData',context!),
        'ArticleTypeId': ArticleTypeId
    };

    getTypeName() => "QvicklyCheckoutIpnCallBack";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.bookmore.com', types: <String, TypeInfo> {
    'IpnCallBackResponse': TypeInfo(TypeOf.Class, create:() => IpnCallBackResponse()),
    'QvicklyIpnCallbackResponseData': TypeInfo(TypeOf.Class, create:() => QvicklyIpnCallbackResponseData()),
    'QvicklyCheckoutIpnCallBack': TypeInfo(TypeOf.Class, create:() => QvicklyCheckoutIpnCallBack()),
});

Dart QvicklyCheckoutIpnCallBack DTOs

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

HTTP + XML

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: api.bookmore.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<QvicklyCheckoutIpnCallBack xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <ArticleTypeId>0</ArticleTypeId>
  <BookingId>String</BookingId>
  <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
  <data xmlns:d2p1="http://schemas.datacontract.org/2004/07/QvicklyIntegration.Models.Payment">
    <d2p1:number>String</d2p1:number>
    <d2p1:orderid>String</d2p1:orderid>
    <d2p1:status>String</d2p1:status>
    <d2p1:url>String</d2p1:url>
  </data>
</QvicklyCheckoutIpnCallBack>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<IpnCallBackResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <Message>String</Message>
  <Success>false</Success>
</IpnCallBackResponse>