-
Notifications
You must be signed in to change notification settings - Fork 9
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Paystack SDK fails to load non-card channels when card is excluded
🐛 Bug Description
The payment process fails with the error message "card payments are not supported. please reach out to your merchant for further information" when a transaction is launched with an access_code initialized for non-card channels like bank_transfer, bank, or ussd.
The transaction initialization succeeds and works correctly when the required channel is card. The error only occurs when the Paystack UI is launched for payment methods other than card.
When i use payment channel card
🔄 To Reproduce
Steps to reproduce the behavior:
- Server-Side: Initialize a transaction using the Paystack API, ensuring the
channelsarray in the request includes only non-card options (e.g.,["bank_transfer", "bank", "ussd"]) and does not include"card". - Server-Side: Obtain the resulting
access_code. - Flutter App: Call the
launch()method of thePaystackPluginusing theaccess_codefrom step 2. - See Error: The Paystack UI displays a critical error immediately upon launch or when trying to load the payment options: "card payments are not supported. please reach out to your merchant for further information".
✅ Expected Behavior
When the access_code is initialized for non-card payment channels (bank_transfer, bank, ussd), the Paystack UI should load the available payment options (excluding card) and allow the user to complete the transaction successfully.
📱 Smartphone (Example)
- Device: [e.g. iPhone 16]
- OS: [e.g. iOS 17.5]
- Paystack Flutter SDK Version: [^0.0.1-alpha.2]
➕ Additional Context
- The server-side transaction initialization is confirmed to be successful and returns a valid
access_code. - When the server-side initialization includes the
"card"channel, the payment flow works correctly. - The issue is that the SDK appears to check for card support regardless of the configured channels, and if the card channel is not available (either due to account setting or deliberate channel exclusion), it throws this misleading error, blocking all other payment methods.
- The merchant account on the Paystack dashboard has
bank_transferandussdenabled.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request