Jump to content
Andrea Raimondi

Anyone knows of a good Delphi library encapsulating Stripe payments?

Recommended Posts

Is that helpful somehow ?
Not sure if this is still actual.

 

Or the commercial TMS CLoud Pack.

But I would always check if this is still currently working, the cloud APIs change too frequently.

Share this post


Link to post

nSoftware has an E-Payment Integrator that supports Stripe:

https://www.nsoftware.com/in/epayment/

https://www.nsoftware.com/kb/xml/02191401.rst

 

If you are interested, then I would suggest that you buy their full Red Carpet Subscription instead of a single component.  https://www.nsoftware.com/subscriptions/

They have a rather large component set and they offer support for multiple languages.

 

Talk to Irida Haznedar, my account rep and see if you can get a discount.  (sales@nsoftware.com)

 

nSoftware is a highly recommended company.

 

Share this post


Link to post
On 6/27/2020 at 9:13 PM, Darian Miller said:

nSoftware has an E-Payment Integrator that supports Stripe:

https://www.nsoftware.com/in/epayment/

https://www.nsoftware.com/kb/xml/02191401.rst

 

If you are interested, then I would suggest that you buy their full Red Carpet Subscription instead of a single component.  https://www.nsoftware.com/subscriptions/

They have a rather large component set and they offer support for multiple languages.

 

Talk to Irida Haznedar, my account rep and see if you can get a discount.  (sales@nsoftware.com)

 

nSoftware is a highly recommended company.

 

The problem I have with that company is that everything costs waaaaaay too much. I am a single developer and for now I am just exploring options.

Share this post


Link to post

It appears that, so far, I don't have many 😄 Chilkat is DLL based (which is a big no-no for me) and /n is just way too expensive. 

 

Tms does not support it as far as I can see. 

 

I might need to roll my own. 

Share this post


Link to post

There used to be an open source project at https://github.com/gmurt/ksStripe but the repository is no longer available. 

 

I have a copy but haven't tried it yet, it seems not to be compatible with my XE4. It's licensed under Apache and I assume I can re-upload it to github. 

 

Let me know if anyone is interested to contribute to it?

Share this post


Link to post

I have been working on my stripe library recently as I’ve integrated it into our own software. I can’t remember removing it from GitHub, weird... I’ll re-upload it to GitHub later today.

 

It’s really easy to use so might be of use to you.

  • Like 3

Share this post


Link to post
18 minutes ago, Graham Murt said:

I have been working on my stripe library recently as I’ve integrated it into our own software. I can’t remember removing it from GitHub, weird... I’ll re-upload it to GitHub later today.

 

It’s really easy to use so might be of use to you.

Hello Graham the original developer of KsStripe! That'l be great! I just wonder, how difficult will it be to back-port it to earlier XE* versions of Delphi. I might do that when I need it :)

Share this post


Link to post

Yes, it should be able to be ported back to xe4. Not sure what the unsupported code would be... If it’s the generics use, I can refactor this to use standard TObjectLists

 

will upload the code this afternoon UK time.

Share this post


Link to post
47 minutes ago, Graham Murt said:

Yes, it should be able to be ported back to xe4. Not sure what the unsupported code would be... If it’s the generics use, I can refactor this to use standard TObjectLists

 

will upload the code this afternoon UK time.

I think it's not about generics, but the use of 'System.Net.URLClient, System.Net.HttpClient, System.Net.HttpClientComponent’ which were introduced since XE7.

 

I'm not sure the best replacement for the rest client for supporting older Delphi versions, maybe Indy? But my choice will be mORMot's rest client if I were you.

Share this post


Link to post

Imho Indy is a better option because of its popularity and versatility.

And I say this even though I use mORMot myself.

 

But of course it would be good to leave support for newer versions based on System.Net.HttpClient.
This means that it is best to pack the REST client into a new class and change its implementation as needed: Indy or System.Net.HttpClient

Edited by Jacek Laskowski

Share this post


Link to post

Agree that Indy is more generic, but I guess Indy needs OpenSSL in order to support httpS ( I guess Stripe needs https, not sure)?

Edited by Edwin Yip

Share this post


Link to post

No problem, I’ll add Indy support before I upload. Should have this uploaded in the next couple of hours.

  • Thanks 1

Share this post


Link to post

Just uploaded and added support for Indy for pre-XE8 development.  Not fully tested with Indy but the demo works here if I force it to use Indy rather than TNetHttpClient.

 

https://github.com/gmurt/ksStripe

 

I've only really added support for features I use in my application... if you need it extended, let me know.

Edited by Graham Murt

Share this post


Link to post
16 hours ago, Edwin Yip said:

@Graham Murt, before using Stripe, have you used other payment processor such as FastSpring? How do you compare them? Thanks!

I've not used FastSpring before I'm afraid.  Stripe seemed to tick all the boxes for me so I didn't look elsewhere.

  • Like 1

Share this post


Link to post
3 hours ago, Vincent Parrett said:

404 - did you forget to make the repo public?

Same here

Share this post


Link to post

Just realised it relies on JsonDataObjects which is my preferred library... I’ll add a conditional in so it uses Delphi’s default JSON library by default.

Share this post


Link to post
8 hours ago, Graham Murt said:

I've not used FastSpring before I'm afraid.  Stripe seemed to tick all the boxes for me so I didn't look elsewhere.

@Graham Murt, would you share with us all your tick boxes?

Since Stripe only handles the payment, I assume, if you write desktop software, you'll have to send license keys to the customers? One difficulty I foresee will be, although we can implement our back-end server for generating and sending activation/license keys, this is not the difficult part, the question will be - which reliable email sending service to use?

Share this post


Link to post
1 hour ago, Graham Murt said:

Apologies guys, yep. Forgot to make public. Should be visible now.

Thanks! I confirm it compiles with XE4

Share this post


Link to post
1 hour ago, Edwin Yip said:

@Graham Murt, would you share with us all your tick boxes?

Since Stripe only handles the payment, I assume, if you write desktop software, you'll have to send license keys to the customers? One difficulty I foresee will be, although we can implement our back-end server for generating and sending activation/license keys, this is not the difficult part, the question will be - which reliable email sending service to use?

I'm not exactly sure what you are asking here, Stripe is a payment gateway - license keys would need to be handled by your own software.  If you're simply asking what email service I use, I use the SES service from Amazon Web Services.  I also have written an interface to this service so I'll upload that shortly to my GitHub page.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×