Stripe SCA is a refactored version of the standard Stripe payments to update the Stripe API to v3 and support the SCA process flow. Other than using different Stripe API calls to set up and process payments, the main change is to defer order fulfillment to a web hook called by Stripe after the payment has been authorised.
Phoenix 18.104.22.168 - 22.214.171.124+
PHP 7.0 - 7.4
Stripe SCA 3.0
- Initial release
- update all SQL to use actual table name instead of global variable
- add Bootstrap classes to form controls to improve appearance in Phoenix, and fix card element not being visible in Phoenix
- hide 'add card' prompt in payment form when token save configuration is false
- stop logging to event table when configuration logging setting is false
- set module public title to 'Credit Card (Stripe SCA)' so enabling multiple credit card modules is less confusing
- fix save card icon display in Phoenix 'my account' page
- remove configuration option to validate CVC, as card fields are managed by Stripe
- update webhook to change email link for account history to string literal
- update configuration to accept both live and test keys and use correct key when toggling between live and test selection
- implement authorise only option. Authorised transactions must be captured using the Stripe dashboard, which will then fire the call to the webhook and complete the order process
- fix missing payment method in customer order confirmation email
- separate web hook signing secrets for test and live
- attempt to resolve 'cannot access empty property' error in stripe_sca.php, line 393
- fix web hook signing secret
- add hooks for Discount Codes BS module
- make card number field style consistant with card name field
- add call to $order_total_modules->process(); when creating a new temporary order
- Stripe apiKey not set correctly in webhook.php and payment_intent.php
- improve checking for Discount Codes BS module
- implement raiwa refactoring of order processing, moving most out of webhook and into after_process function of payment module and include hooks to a number of common order processing modules
Note that setting of several customer columns in order table is commented out to enable module to run in standard system
- Remove a number of English prompts and messages from processing modules and define them in language file
- remove hooks to third party order processing modules
- update order status with error message if webhook receives error
- fix missing information in order status for successful payment, and assume customer received email
- add order comment to preparing order status and save into order status history
- update order status history with success order status
- remove customer notified flag from "Stripe [Transactions]" order status
- fix stripe error in payment intent hook not being passed back to browser
- fix stripe error with saved card not being shown to user
- allow stripe error detaching card from customer to still delete saved card from store database
- remove cart items from Stripe transaction metadata to fix error when too many items
- fix missing totals from customer email
- Stripe amount not handling shipping and tax correctly
- Stop creating multiple 'preparing' order records as cart changed
- Remove potential SQL injection
- Tidy account saved cards when multiple cards
- remove potential webhook secret exposure
- Added line to reset attributes variable between each product in order e-mail
- Fixed order total sort order not saved in database
- Update for Phoenix 126.96.36.199+
- removed duplicated language constant
- Updated account card module
- changed save card tick box to bootstrap slider
- Updated Stripe SDK to 7.61/3.01
- Update for Phoenix 188.8.131.52+
- Fixed error when some address modules are not used/filled in
- Updated code in all modules to match 184.108.40.206 core code base
- Removed zone_id from the requires list to allow installation without state module.
- Added code to update the order comment if it has been changed during checkout.
- Moved the order comment to payment confimation (by default:"pending") status. Thanks to @14Steve14 for to point it out.
- Modified Card information details on checkout confirmation. Thanks to @mhsuffolk for the suggestion
- Fixed bug in webhook. Thanks to @BrockleyJohn for the report and fix
- Added hook to auto delete unfinished Stripe orders (Preparing [Stripe SCA] order status).
- Tested with Phoenix 220.127.116.11
- Shorten Card information details on checkout confirmation. Thanks to @mhsuffolk for the suggestion
- Fixed bug for disabled/empty days in delete stripe orders hook.
- Fixed incompatibility in the delete stripe orders hook with some Database versions. Thanks to @lecarlb for the report and testing
- Updated deprecated tep_mail function to Notifications::mail( for Phoenix 18.104.22.168+ core compatibility.
Donate to Raiwa. Thank you for donating, it allows me to spend more time developing free contributions for you to use.