How to process credit cards?

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca
I'll be coding an interface on an existing site where people can pay online with a credit card to order food. It will work basically like a shopping cart system where they can add the items and such. Then they enter their credit card and submit and then it will show up in the kitchen where they can start prepping the order. All of this should be fairly easy to do, except, I'm really not sure how the credit card part works. Ex: once the information is submitted to my site, what do I do with it, so that the owner of the restaurant gets the money in their account? I found some 3rd party services that will do it, but they all want a monthly fee, on top of a fee per transaction AND a percentage. This is not a charity.

They already do accept credit cards via an interact terminal at the store as well as when they do deliveries. Is there a way I can interface with that somehow? I'm not sure how these types of systems work as I've never worked with them before. Just looking for some pointers.

Long story short I want to accept credit cards online with a fully custom site and make it seamless to the user, so open to any suggestions that could make that happen. This is for fast food, so anything that has high fees is not going to work, most transactions are small enough, but could go in the 100's. (ex: huge group order)

Oh and I do have SSL setup on the site through letsencrypt, is that good enough or does it need to be one of the more expensive ones that makes the url bar green?
 

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca
That's the most intuitive one I found so far, did not come up in my own search. Forgot to mention I'm in Canada, so if I use any kind of 3rd party it probably has to be based here right? The transactions need to be in CAD.

I contacted the person I'm doing the site for since they have credit card terminals. Maybe the service that offers those already has an online processor as part of the package too. They're probably already paying for the service. Failing that then I'll look at an online processor. Just don't like the idea that a lot of them seem to have a monthly fee on top of a percentage and flat fee. I can live with 1 of those fees but not all 3.
 

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca

That's good info to have too, as I'll want to make sure I'm compliant. Considering all the breaches these days I want to make sure I won't be one of them and that I do things right. I won't be storing credit card numbers (at least not for longer than needed for the sale to take place) so I imagine that will make things easier.
 
Last edited:

mxnerd

Diamond Member
Jul 6, 2007
6,799
1,103
126
Test card numbers

https://www.simplify.com/commerce/docs/testing/test-card-numbers

==

Went to Let's Encrypt's website and its SSL Certificate issued by itself is trusted by Chrome / Firefox.

So think it's OK for your purpose.

e6dh7m.png


Or test your SSL here.

https://www.ssllabs.com/ssltest/
 
Last edited:

mxnerd

Diamond Member
Jul 6, 2007
6,799
1,103
126
There is code that can specify what currency you are proceesing

Code:
$payment = Simplify_Payment::createPayment(array(
        'amount' => '1000',
        'token' => '[TOKEN ID]',
        'description' => 'payment description',
        'reference' => '7a6ef6be31',
        'currency' => 'USD'
));

==

Don't think you can interface that interact CC machine. That will be a recipe for security breach.
 
Last edited:

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca
Good to know I can specify currency. So I'll keep that simplify site as an option. Going to wait and see what the customer says though, the service that provides their interac machines may also have an API for online stuff.
 

Carson Dyle

Diamond Member
Jul 2, 2012
8,173
524
126
With my last company, we used Authorize.net to process card payments. I built a couple of shopping carts around it, some applications for customers to pay bills, and some manual processing forms on an intranet for in-house sales people to run cards that they took over the phone.

The programming is pretty straightforward. You send off the card and cardholder info and you receive a response that you parse and determine the success/failure of the transaction. For successes, you get a transaction number that you generally want to store. Failures will have both a code and a text response giving the reason for the failure. From what I remember, the merchant determines the level of security/fraud prevention, such as requiring an address match from information entered by the cardholder.

There's always going to be a percentage of the transaction paid and a small per transaction fee - any brick and mortar merchant pays these on all credit card transactions. I think a small monthly fee is also fairly standard for the processor.
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,449
126
My advice would be to not reinvent the wheel, and use an ordering plugin like ChowNow to handle online ordering for your restaurant site.

https://get.chownow.com/

They will handle the credit card payments for you, and give you an interface for editing the menu without the restaurateurs having to learn code.

If you really want to roll your own solution, Stripe seems to be a good way to go for payment processing.
 
Last edited:

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca
Chownow is actually what they are with right now. The idea is we want to integrate the system right into the site and not have to pay a 3rd party. Customer will pay me instead since I already do the rest of the site anyway.

I'll have a closer look at the solutions mentioned so far, once I get around to starting. Probably in the next few weeks actually. Ideally want something that won't charge too much per month and that does not charge a percentage of sales. The CC company already charges a percentage of sales, so if the processor charges too that's a bit much. Then add taxes and there's basically hardly no profit left.
 

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca
Been pondering on the various solutions as I started working on this project again. Stripe does indeed look good and developer friendly. I also like that there's no monthly fee. 2.9% and 30 cents per transaction. Does that sound decent? I'm not sure what the going rate is for this sort of thing.

Is that percentage ON TOP of what Visa, Mastercard etc charges? Or does that include those fees as well?

Also is there any rules of thumb, laws, regulations etc I need to be aware of when dealing with CCs? Obviously need to be diligent and how I handle them and want to make sure I follow all best practices.
 

bbhaag

Diamond Member
Jul 2, 2011
6,932
2,319
146
Been pondering on the various solutions as I started working on this project again. Stripe does indeed look good and developer friendly. I also like that there's no monthly fee. 2.9% and 30 cents per transaction. Does that sound decent? I'm not sure what the going rate is for this sort of thing.

Is that percentage ON TOP of what Visa, Mastercard etc charges? Or does that include those fees as well?

Also is there any rules of thumb, laws, regulations etc I need to be aware of when dealing with CCs? Obviously need to be diligent and how I handle them and want to make sure I follow all best practices.
Not sure on how that rate is for internet transactions but I can tell you it seems comparable to what I pay for my POS system at my brick and mortar location. I pay around 2.7 to 3% for every transaction that gets ran through the tricky part is it can be more depending on what card the customer is using.

Like if they have a higher rate cashback card or a rewards card like getting airline miles the percentage can be more. Most people don't realize this when they sign up for a card that has these types of benefits. The irony is they think they are saving money by signing up for these cards but most merchants realize this and add extra to their margin to account for the higher fee.
 

mxnerd

Diamond Member
Jul 6, 2007
6,799
1,103
126
https://squareup.com/pricing
https://squareup.com/help/us/en/article/5068-what-are-square-s-fees

Square’s standard processing fee is 2.75% for contactless payments, swiped or inserted chip cards, and swiped magstripe cards. (Apparently you need to use their hardware to get this rate https://squareup.com/shop/hardware/us/en )

*Edit*
Online also 2.9% + 30¢
:oops:

==

Payments that are manually keyed-in, processed using Card on File, or manually entered using Virtual Terminal have a 3.5% + 15¢ fee. Invoices cost 2.9% + 30¢ or 3.5% + 15¢ if processed using Card on File.

https://squareup.com/us/en/developers

==
Stripe
https://stripe.com/pricing
https://stripe.com/docs/api

==

Stripe/Square are aggregators. Easy signup.

 
Last edited:

Red Squirrel

No Lifer
May 24, 2003
68,871
12,827
126
www.anyf.ca
Thanks so seems this is in the ballpark then. Did not sign up yet, kinda waiting last minute as I don't want to pay for nothing, but I'll be ready to play around with this soon and test.