Payment Gateways

Hi all

Does anyone have any experience with Payment Gateways and CakePHP?

I’ve been asked to look at the possibility, there doesn’t seem to be a lot out there - the awesome CakePHP list is blank for e-Commerce

I did find a quick tutorial on Stripe integration - might look at giving this a go

Payment Gateways usually have a generic PHP API package which you can use.

There is nothing really CakePHP specific that needs to be implemented for these kind of API packages because in the end you/your user calls a controller action which calls the Payment Gateway and checks for its response.

And depending on the response of the Payment Gateway you do all the different things which could happen like

  • payment successful => send mail => show success page
  • payment rejected => log that error => show error page
  • maybe a timeout error => log that error => show error page
  • whatever other situations can occur

But what you do exactly with the different types of responses is up to you (just like you see in your Stripe example)

1 Like

Thanks Kevin, will check out over the next few days and try the Stripe example.

I note sometimes wistfully the many first party packages on Laravel like payment gateways to easily handle subscriptions etc, however it is strongly opinionated and probably wouldn’t do exactly what we need anyway

Regards,
Brian

This may very well be the case. Laravel’s community is quite bigger and therefore has a broader support for all kinds of plugins and pre-configured functionality to just install, adjust a few config values and it “just works”.

If you feel you can provide a CakePHP plugin providing such functionality we would of course greatly appreciate this but currently we are primarily focused on releasing CakePHP 5.

1 Like

What do you mean @KevinPfeifer? Cakephp have not bigger community! Cakephp have not plugins…? As said above @daryl must use laravel so it means he is right @daryl? Why does not Cakephp develops this kind of plugins yet, i hope Cakephp 5 has improving version and provide some pre-build configuration like

1:- no need install separately Authentication and Authorization Plugin. In every project we have to install these two plugins and configuration them, so it’s just time consuming.

2:- cakephp 5 need build in support frontend frameworks like Vuejs reactjs.

3:- there must be need flexible and simple data validation and data sanitizing… Currently I have to do manually sanitize data before save but I think Cakephp must do it own without need manually… let suppose if user enter javascript alert popup into field then cakephp save them as a same without sanitizing so it will danger for application because when that record open in view javascript trigger alert popup on screen so cakephp must provide sanitizing data.

4:- Atleast provide one pre-build temple for login register action and forget password system in controller level not on plugin level. When someone installing cakephp then this template will come default and on the menu bar provide login registeration tabs

5:- there must be one default Route for Api’s

Please add on that points in cakephp 5, it will definately smash other frameworks in market you know what I am talking about :smiley:

@shaan007 you have to understand that not all cakephp applications need authentication and authorization built into their apps. This alone is reason enough to not have that built into the core framework but instead have them installable as plugins.

The same goes for modern frontend frameworks in Cake. There is of course GitHub - ishanvyas22/asset-mix: Provides helpers functions for CakePHP to use Laravel Mix. which lets you easily get started with a modern framework approach but its definitely not plug-n-play like it is in other frameworks.

It is one of my personal projects after Cake5 is released to get at least a separate app template running which has Vite with Tailwind running but that will take some time.

about the API route topic: you do know there is just a bit of code disabled in the config/routes.php, right?

2 Likes

Yeah I agree with you @KevinPfeifer but it’s time demands to use this plugin by default into cakephp because if application need Authentication Authorization then developer use it easily with zero configuration… but now we have to install these plugin and config them and testing all stuff.
@KevinPfeifer I really glad to know that finally cakephp5 comming with one default template with Tailwind css and vite js compiler., Right now I have to do this all manually…not with vite but I am using webpack.

I can imagine cakephp 5 really monster and cakephp 5 going in right direction… keep it up @KevinPfeifer and add on new features which save the developer’s time.

Two way data binding

Backup cli command

4 Migration files provide about users table profile table and on for product or post even session table class for database session, I know it’s already exist in config folder.

I am eagerly waiting cakephp 5. When it will officially launch @KevinPfeifer?

Backup CLI Command: GitHub - LordSimal/cakephp-dump-sql: A CakePHP 4 plugin to export SQL

Two way data binding is not on my radar because that is something each developer has to decide themselves if they want to go into that direction or not.

In the end what I feel you desire is some demo applications which showcase (and be a base) for your further application which have these kind of functionality already pre-configured.

Even though you should be able to create that on your own anyway (since - well - you have to do basically the same thing for the rest of your custom project anyway)

We are in the final stage of Cake5 but we have not yet nailed down an exact date but there aren’t any major changes happening with what is currently present in the 5.x branch.

Hi Kevin

Yes, totally understood - CakePHP5 is really close :smiley:

Unfortunately, I don’t have time to create a plugin, or maintain but I will have a look at the existing available APIs like Stripe.

There are a lot of gateways on the plugin page, but they’re all v1.x / v2.x - perhaps this needs archiving?
https://plugins.cakephp.org/packages?category=payment-processing

That plugins page is ancient. I personally only look at GitHub - FriendsOfCake/awesome-cakephp: A curated list of amazingly awesome CakePHP plugins, resources and shiny things.

1 Like

Not all developers need those plugins (e.g. Auth). All frameworks have it as a plugin which needs to be added. If you go thru some framework tutorials, you will see it as such. The idea is not to make Cakephp ‘bloated’ with un-needed stuff.

I would always recommend using the official sdk, as some plugins that uses those official-sdk are out-of-date, or doesn’t have much functionality. A very good example are the AWS-plugins, which lack advance features. These plugins are only useful in small-simple apps.

Unfortunately, it pops up high in search results. Might be a project for someone to maintain as people will often check an official page first and come away thinking there is a lack of plugins actively maintained

Yeah I agree @yousuo but most of the project need these plugin when need to authenticate user so then I have to do same coding for that task and it really time consuming but yes I am already generate a pre build code where I have not to repeat the same code again.