Stripe Payment

1.5.1 Phoenix -
Mon Feb 12, 2024 1:59 pm
File size:
2.63 MiB
Validated for:
Phoenix -
MD5 checksum:
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 -

OsCommerce 2.3.x
PHP 5.4-5.6
Stripe SCA 3.0
- Initial release

- update all SQL to use actual table name instead of global variable
- add javascript to 'footer_scripts' template block, so loaded after jQuery in Phoenix and remove $ undefined error javascript error
- 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
- refactor javascript in payment form to remove redundant fields and some dependancies on a specific theme

- 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
- removed duplicated language constant
- Fixed javascript error to allow to save cards
- Updated account card module
- changed save card tick box to bootstrap slider
- Updated Stripe SDK to 7.61/3.01

- Update for Phoenix
- Fixed error when some address modules are not used/filled in
- Updated code in all modules to match 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

- 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 core compatibility.

- Fixed variable error in includes/modules/content/account/cm_account_stripe_sca_cards.php

Phoenix up to
- Fixed sql error on card error response
- Fixed delete card token undefined variable
- Fixed db error in delete stripe orders hook

- Fixed variable error in includes/modules/content/account/cm_account_stripe_sca_cards.php
- Fixed delete card token undefined variable
- Fixed db error in delete stripe orders hook
- Updated all modules to match actual Phoenix core coding
- moved:
from default to override template

- Fixed glitch when the billing or shipping address was changed once the customer was already on checkout_confirmation.php.
In that case, the addresses were not updated in the order.

- Separated card input field into 3 separate fields: number, expiry date, cvc. Thanks to @heatherbell for the suggestion, info source and testing

- Vertical center placeholders in the new fields. Thanks to @heatherbell for the suggestion

- Fixed error in some cases when log events was used. (Phoenix version only)
- Added switch to use card data input in 3 separate lines or 1 line (Phoenix version only)
- Updated API to v10.5.0 2022-11-15 (all Phoenix versions)

- Fixed deprecated error in customer account module under PHP 8.2.
- Secure empty return values in payment_intent.php.
- Added receipt e-mail
Donate to Raiwa. Thank you for donating, it allows me to spend more time developing free contributions for you to use.
TESTED 8.0-8.2
  • Author raiwa
  • Last updated Mon Feb 12, 2024 11:43 am
  • Total Downloads 3086
  • Rating
  • Categories Payment
stripe_store_02_new.png stripe_admin_01.png stripe_store_02.png stripe_store_03.png stripe_store_04.png
  • Addon Revisions/Downloads
    Phoenix Version(s)