| POST | /transferTicket/payTopupWith3DSecure | Charge the customer the topup diff via Borgun 3DS and complete the topup |
|---|
import 'package:servicestack/servicestack.dart';
class PayTopupWith3DSecureResult implements IConvertible
{
bool? ok;
int? statusCode;
String? code;
String? message;
int? transferLogId;
String? status;
String? newTicketTokenId;
String? paymentReference;
String? authCode;
String? lastFourDigits;
double? amountIsk;
PayTopupWith3DSecureResult({this.ok,this.statusCode,this.code,this.message,this.transferLogId,this.status,this.newTicketTokenId,this.paymentReference,this.authCode,this.lastFourDigits,this.amountIsk});
PayTopupWith3DSecureResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ok = json['ok'];
statusCode = json['statusCode'];
code = json['code'];
message = json['message'];
transferLogId = json['transferLogId'];
status = json['status'];
newTicketTokenId = json['newTicketTokenId'];
paymentReference = json['paymentReference'];
authCode = json['authCode'];
lastFourDigits = json['lastFourDigits'];
amountIsk = JsonConverters.toDouble(json['amountIsk']);
return this;
}
Map<String, dynamic> toJson() => {
'ok': ok,
'statusCode': statusCode,
'code': code,
'message': message,
'transferLogId': transferLogId,
'status': status,
'newTicketTokenId': newTicketTokenId,
'paymentReference': paymentReference,
'authCode': authCode,
'lastFourDigits': lastFourDigits,
'amountIsk': amountIsk
};
getTypeName() => "PayTopupWith3DSecureResult";
TypeContext? context = _ctx;
}
class PayTopupWith3DSecureRequest implements IConvertible
{
String? sessionToken;
String? borgunCardToken;
String? borgunMpiToken;
int? amountMinor;
String? currency;
String? paymentPhoneNumber;
PayTopupWith3DSecureRequest({this.sessionToken,this.borgunCardToken,this.borgunMpiToken,this.amountMinor,this.currency,this.paymentPhoneNumber});
PayTopupWith3DSecureRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
sessionToken = json['sessionToken'];
borgunCardToken = json['borgunCardToken'];
borgunMpiToken = json['borgunMpiToken'];
amountMinor = json['amountMinor'];
currency = json['currency'];
paymentPhoneNumber = json['paymentPhoneNumber'];
return this;
}
Map<String, dynamic> toJson() => {
'sessionToken': sessionToken,
'borgunCardToken': borgunCardToken,
'borgunMpiToken': borgunMpiToken,
'amountMinor': amountMinor,
'currency': currency,
'paymentPhoneNumber': paymentPhoneNumber
};
getTypeName() => "PayTopupWith3DSecureRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
'PayTopupWith3DSecureResult': TypeInfo(TypeOf.Class, create:() => PayTopupWith3DSecureResult()),
'PayTopupWith3DSecureRequest': TypeInfo(TypeOf.Class, create:() => PayTopupWith3DSecureRequest()),
});
Dart PayTopupWith3DSecureRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /transferTicket/payTopupWith3DSecure HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<PayTopupWith3DSecureRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<AmountMinor>0</AmountMinor>
<BorgunCardToken>String</BorgunCardToken>
<BorgunMpiToken>String</BorgunMpiToken>
<Currency>String</Currency>
<PaymentPhoneNumber>String</PaymentPhoneNumber>
<SessionToken>String</SessionToken>
</PayTopupWith3DSecureRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <PayTopupWith3DSecureResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel"> <AmountIsk>0</AmountIsk> <AuthCode>String</AuthCode> <Code>String</Code> <LastFourDigits>String</LastFourDigits> <Message>String</Message> <NewTicketTokenId>String</NewTicketTokenId> <Ok>false</Ok> <PaymentReference>String</PaymentReference> <Status>String</Status> <StatusCode>0</StatusCode> <TransferLogId>0</TransferLogId> </PayTopupWith3DSecureResult>