getSessionToken method
Get a session token for Hosted Payment Fields
According to Mobibox HPF documentation, session tokens require checkout authentication parameters (operation, order, hash).
URL parameters (returnUrl, successUrl, etc.) are managed internally as placeholders.
Reference: https://docs.mobibox.io/docs/guides/hosted_payment_fields
orderNumber - Order number/ID
orderAmount - Order amount
orderCurrency - Order currency (e.g., 'USD')
orderDescription - Order description
recurringInit - Initialize recurring payment (optional)
scheduleId - Schedule ID for recurring payments (optional)
reqToken - Request card token for future payments (optional)
cardToken - Array of card tokens for returning customers (optional)
Implementation
Future<String> getSessionToken({
required String orderNumber,
required String orderAmount,
required String orderCurrency,
required String orderDescription,
bool? recurringInit,
String? scheduleId,
bool? reqToken,
List<String>? cardToken,
}) async {
if (_sessionTokenService == null) {
throw Exception(
'MobiPay not initialized. Please call initialize() first.',
);
}
return _sessionTokenService!.getSessionToken(
orderNumber: orderNumber,
orderAmount: orderAmount,
orderCurrency: orderCurrency,
orderDescription: orderDescription,
recurringInit: recurringInit,
scheduleId: scheduleId,
reqToken: reqToken,
cardToken: cardToken,
);
}