TransactionResult.approved constructor
TransactionResult.approved({
- required String requestIdempotencyKey,
- required int amountMinorUnits,
- required String currency,
- required GatewayTransactionResponse gatewayResponse,
- String? referenceId,
- String? transactionId,
- EntryMode entryMode = EntryMode.unknown,
- CardSummary? card,
- DateTime? completedAt,
Implementation
factory TransactionResult.approved({
required String requestIdempotencyKey,
required int amountMinorUnits,
required String currency,
required GatewayTransactionResponse gatewayResponse,
String? referenceId,
String? transactionId,
EntryMode entryMode = EntryMode.unknown,
CardSummary? card,
DateTime? completedAt,
}) {
if (gatewayResponse.status != TransactionResultStatus.approved) {
throw ArgumentError(
'TransactionResult.approved requires a gatewayResponse with '
'status=approved (was ${gatewayResponse.status.wire}). The SDK '
'is not allowed to synthesize an approval.',
);
}
return TransactionResult(
status: TransactionResultStatus.approved,
requestIdempotencyKey: requestIdempotencyKey,
amountMinorUnits: amountMinorUnits,
currency: currency,
referenceId: referenceId,
transactionId: transactionId ?? gatewayResponse.gatewayTransactionId,
entryMode: entryMode,
card: card,
gatewayResponse: gatewayResponse,
completedAt: completedAt,
);
}