startPayment method
Future<Payment?>
startPayment(
- PaymentParameters paymentParameters,
- PromptParameters promptParameters
override
Implementation
@override
Future<Payment?> startPayment(paymentParameters, promptParameters) async {
var amountMoney = {
"amount": paymentParameters.amountMoney.amount,
"currencyCode": paymentParameters.amountMoney.currencyCode.name
};
var appFeeMoney = paymentParameters.appFeeMoney != null
? {
"amount": paymentParameters.appFeeMoney!.amount,
"currencyCode": paymentParameters.appFeeMoney!.currencyCode.name
}
: null;
var tipMoney = paymentParameters.tipMoney != null
? {
"amount": paymentParameters.tipMoney!.amount,
"currencyCode": paymentParameters.tipMoney!.currencyCode.name
}
: null;
var params = <String, dynamic>{
'paymentParameters': {
...paymentParameters.toJson(),
"amountMoney": amountMoney,
"appFeeMoney": appFeeMoney,
"tipMoney": tipMoney
},
'promptParameters': promptParameters.toJson(),
};
final response = await methodChannel.invokeMethod<Map>('startPayment', params);
if (response != null) {
final paymentJson = castPaymentMap(response);
return Payment.fromJson(paymentJson);
}
return null;
}