#shsolutions

1 messages · Page 1 of 1 (latest)

magic moatBOT
shell salmon
graceful estuary
#

Hello!

I'm just having a very hard time understanding how Stripe payment processing works honestly.

I've previously worked with several other processors, and I'm trying to integrate Stripe now.

For instance, what line of code actually processes the payment?

Normally I would get a return from the processing call and would be able to get the Transaction ID from that, but I don't see where this happens.

shell salmon
#

Cool. Let's back up a second.

#

Have you decided on what type of Stripe integration you want to build?

#

Like... are you planning on using Stripe Checkout or Stripe Elements?

#

Are you aware of the differences on that stuff already?

graceful estuary
#

In this case I'm building it into a .Net application.

shell salmon
#

Okay and what is "it"?

#

The easiest approach is going to be Stripe Checkout which involves a redirect to our hosted payment page.

#

Is that going to suffice for what you want?

graceful estuary
#

Credit card processing. The software has previously supported other processors, so I'm trying to build a class using Stripe so that I can move everything over to Stripe

#

I had to take a break from working on this due to some personal reasons but I had previously worked out some code but now I'm trying to finish it. I received some help from the discord group a few months ago to put what I have together together.

shell salmon
#

Okay can you share what you have so far?

graceful estuary
#

Sure. Just one moment.

shell salmon
#

Okay let's just start with the above

graceful estuary
#

I see that I create objects for the various parts but am confused about how it all comes together and where the card is actually processed.

shell salmon
#

So with what you shared so far, you are going to be creating PaymentMethods on your server.

#

You really don't want to be doing that

#

That means that you would be handling credit card details and that places you in the highest PCI Compliance scope.

#

You want to allow us to handle all the sensitive data for you.

#

I can also see in the above that you are creating Products and Prices

#

Are you planning on using Subscriptions?

graceful estuary
#

Some of our transactions would be subscriptions but not all.

#

So, some backstory I guess...

#

We are trying to implement the same credit card processor for both our website and desktop software. The issue we are running into is not with the website, which is well supported by most processors (Square, Stripe, etc.), but in integrating it into our desktop software.

#

So, our desktop software manages a large number of invoices and billable amounts for customers, so when we process a payment currently, it fills in all of the customer information (Name, Address, Invoice #, Amount, etc.). This streamlines things and it also prevents errors.

#

It works well.

#

But Stripe doesn't have a desktop / winforms control that processes credit card details...

#

So that's why the discord devs helped me with the code that I just sent you.

#

The majority of our payments will probably be through the website, but I want the same processor to handle both.

#

Also, from the standpoint of PCI Compliance, we do not store the card details ever and do not transmit them across our network. They are sent to Stripe for processing and that is it.

shell salmon
#

If the card details ever touch your server then you are in scope for SAQ D (highest level of PCI Compliance)

#

That said.

#

It sounds like with your "desktop software" you are actually saying you are taking MOTO payments, correct?

graceful estuary
#

They don't touch the server, the workstation communicates directly with Stripe.

#

That is correct.

shell salmon
graceful estuary
#

Oh... I have not. So, does that provide me with different controls or how does that work?

shell salmon
#

That is a slightly different flow that will show you how to indicate a PaymentIntent is a MOTO payment.

#

Once your account is approved to the flow then there will be docs for how to do that.

#

I'm happy to help you with the website portion. But you'll want to talk to our Support team about MOTO

graceful estuary
#

Gotcha. I appreciate the help.

I held off the website integration because I want to make sure that the processor we go with can do both.

#

I want to simplify things as much as possible.

shell salmon
#

Yep you can certainly do both with Stripe. The integration will look a bit different for the two pieces.

graceful estuary
#

Ok. And just to confirm that nothing has changed, there still isn't a winforms control for Stripe, correct?

#

That would be helpful, but last I saw it wasn't available.

shell salmon
#

Correct

#

Doesn't exist as far as I know

graceful estuary
#

OK, I really appreciate your help.