encryptPaymentCard method

Future<void> encryptPaymentCard()

Implementation

Future<void> encryptPaymentCard() async {
  if (_paymentModel.amount.isNotEmpty &&
      _paymentModel.cardNumber.isNotEmpty &&
      _paymentModel.cvv.isNotEmpty &&
      _paymentModel.expiryDate.isNotEmpty) {
    setBusy(true);
    rebuildUi();
    try {
      final response = await _paymentService.encryptCard(
        EncryptCardRequest(
          penzuraYacho: CryptoUtil.encrypt(_paymentModel.cardNumber.trim()),
          merchantReference: paymentReference, // encrypted PAN
        ),
      );
      setBusy(false);
      if (response.statusCode == 200) {
        isWebView = true;
        initializeWebView();
      }
    } catch (e) {
      // Handle errors (e.g., log them or show a message)
    } finally {
      setBusy(false);
      rebuildUi();
    }
  }
}