Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Now that commerce_paypal module supports express checkout in 2.x, is there a difference between this module and the commerce_paypal module's implementation?
Comments
Comment #1
rszrama CreditAttribution: rszrama commentedIf I may, I'd like to suggest this module should simply be deprecated in favor of the Express Checkout implementation in the PayPal project. Back in December / January I basically provided a full integration of Express Checkout in conjunction with a PayPal engineer and got them to sign off on the integration. I reworked parts of the core PayPal module itself to support Express Checkout and support both the shortcut flow (clicking the PayPal button on the /cart form, a requirement for the API) and the mark flow (selected PayPal from the on-site checkout form). I also added a confirm order page that allows customers to return to your site and confirm their purchase before capturing payment, letting you embed into it checkout panes from other pages so you can still apply taxes, select shipping, add coupons, etc.
I notice there's some sort of recurring payment integration in this module, which Commerce PayPal 2.x does not support yet. However, my implementation of EC supports billing agreements, which combined with the Commerce Recurring framework can be a much more flexible (and cheaper) recurring payment option.
I'm not sure about migration options, but the modules are using the same string for the payment method machine name. My hunch is that people can just switch so long as they aren't using the recurring option and understand the differences in implementation. I'm definitely grateful for the maintainers taking the initiative to get this module out there when it wasn't supported yet, but it would probably be best to reduce the duplication given the current levels of support and development on the respective projects. Let me know what I can do to help.