BokaMera.API.Host

<back to all web services

PaysonCheckout2IPNCallBack

The following routes are available for this service:
POST/payment/payson/v2/ipncallbackIPN callback for payson checkout 2.0IPN callback for payson checkout 2.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 PaysonCheckout2IPNCallBack 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 checkout id.
    */
    // @ApiMember(Description="The checkout id.")
    String? checkout;

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

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

    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        BookingId = json['BookingId'];
        checkout = json['checkout'];
        ArticleTypeId = json['ArticleTypeId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'BookingId': BookingId,
        'checkout': checkout,
        'ArticleTypeId': ArticleTypeId
    };

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

TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: <String, TypeInfo> {
    'IpnCallBackResponse': TypeInfo(TypeOf.Class, create:() => IpnCallBackResponse()),
    'PaysonCheckout2IPNCallBack': TypeInfo(TypeOf.Class, create:() => PaysonCheckout2IPNCallBack()),
});

Dart PaysonCheckout2IPNCallBack 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/payson/v2/ipncallback HTTP/1.1 
Host: api.bokamera.se 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PaysonCheckout2IPNCallBack 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>
  <checkout>00000000-0000-0000-0000-000000000000</checkout>
</PaysonCheckout2IPNCallBack>
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>