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: 'testapi.bokamera.se', 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 .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/billmate/v1/ipncallback HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","BookingId":"String","data":{"number":"String","status":"String","orderid":"String","url":"String"},"ArticleTypeId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

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