Solved

Add Custom Credit Card Fields to WooCommerce Checkout page to replace Payment Gateways

Posted on 2013-06-06
13
1,782 Views
Last Modified: 2013-06-07
I'm working on a site where the client doesn't want payment processing to be handled online but rather for the user to submit their credit card data (via SSL of course) and then payment to be handled manually later.

I'm not very familiar with Woocommerce so I'm stumped.  All I've been able to do so far is turn off the existing payment gateways but I don't see where I can add custom credit card field elements.  Since I'm not using a payment gateway, custom addons for credit card gateways aren't all that helpful.

But I need to be able to add a custom field with a drop down menu to indicate Visa, Mastercard, American Express or Discover, A field for the name on the card, a field for the card number, expiration date field (two drop down menus for month and year) and a field for the security number on the back of the card.

I need it so that when the user submits the order, that information is emailed to the client and a notification comes up letting them know that their order has been submitted and to expect a call from a representative of the site.

Can anyone help?

Thank you!
0
Comment
Question by:Power_Pro
  • 6
  • 6
13 Comments
 
LVL 54

Expert Comment

by:Julian Hansen
ID: 39224858
So you want to store the CC details on your site - if so bear in mind that you usually have to go through a stringent procedure PCI-DSS to avoid backlash of your DB being hacked.
0
 

Author Comment

by:Power_Pro
ID: 39225263
Not stored...forwarded.  But if stored, I'd need to ensure security of course.  The point is to have the page work as though someone were filling out a form and faxing it but in this case, the information would be forwarded online.

Possible?
0
 
LVL 54

Expert Comment

by:Julian Hansen
ID: 39225309
Forwarded - to where? By Email?
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 
LVL 109

Expert Comment

by:Ray Paseur
ID: 39225616
You'll fail PCI compliance if you use email to transmit payment information.  You'll also fail PCI compliance if you do not transmit everything behind SSL.  It's complicated and the banking community has spent a fair amount of time, effort and money coming up with the correct guidelines.  You really want to follow their guidelines!  Start your learning adventure here:
http://en.wikipedia.org/wiki/PCI_compliance

Here is what I would do.  After you're thoroughly familiar with PCI, get the client and his banker together.  Have a plain-language discussion about how best to transmit the financial information.  Have the client explain his reasons for not wanting online payments (they may be perfectly legitimate or they may be grounded in ignorance). The banker will undoubtedly need some advance notice so he can have his technical and legal advisors available for a conference call.  Hash out all the details, memorialize the conversation with countersignatures on all copies of the notes.  Then come back to EE if you still have questions about the design of a compliant system.

Or just use PayPal ;-)
0
 
LVL 54

Expert Comment

by:Julian Hansen
ID: 39225770
Another option is that many payment gateways provide an authorisation service - where the client's cc details are captured but no money is taken from the account. A manual transaction can then be processed when you need to.
0
 

Author Comment

by:Power_Pro
ID: 39227426
Okay I just talked to the client and they're okay with not having credit card info transmitted given the complications.

So, what that means is I still need to customize WooCommerce to allow for an order to be captured, ie, the users information and what items they want... with a notice that payment will be handled via phone later.

https://bonzosfireworks.com/

Orders are not going to be shipped... it's all home delivery.  It's very local :D  So only orders from the state are allowed because they don't know the laws with regard to their merchandise in other states.  

So I need to add a promo code field, a state tax field, remove shipping and allow for an order to be accepted without a payment portal.

Do I need to start a new question or is this still substantively similar to the original concept?
0
 
LVL 54

Expert Comment

by:Julian Hansen
ID: 39227521
If the plugin does not handle this natively then you will need to customize it - which would require hiring someone - it is a bit too broad for this forum.
0
 

Author Comment

by:Power_Pro
ID: 39229799
It might actually handle it natively.

It has a testing feature right, that doesn't complete a transaction but logs the info (address, amount ordered, etc)?  That's actually all I need here.
0
 
LVL 54

Expert Comment

by:Julian Hansen
ID: 39229848
If that works for you but the question still remains - how is payment going to be made - will this be handled telephonically after the fact?

If so it sounds like you are trying to get a payment gateway to do the work of an online ordering system - i.e. order submission without payment. Most cart solutions will by default want to terminate in a payment of some kind - so this would be going against what is required.
0
 

Author Comment

by:Power_Pro
ID: 39230216
Actually I want to skip payment gateway entirely if that's at all possible.
0
 

Author Comment

by:Power_Pro
ID: 39230584
Can I configure it to auto validate without a payment gateway?  That would be an acceptable solution.
0
 

Author Comment

by:Power_Pro
ID: 39230629
I figured it out.  I set the Payment Gateway as COD and then edited the details so that the order would process.
0
 
LVL 54

Accepted Solution

by:
Julian Hansen earned 500 total points
ID: 39230639
Actually I want to skip payment gateway entirely if that's at all possible.

That is what I was referring to - you are wanting to take a cart / ecommerce tool and make it do something it was not designed to do.

In terms of your second question - validating without a PG - well that is what the PG does.

Typically your PG has 3 options (Payment, Deffered or Authenticate) - usually an authenticate is done in all cases - basically the PG checks the CC details with the bank to see if the card is valid - then depending on the option you select either debits the clients account immediately (payment) or just marks the transaction as authenticated and returns a positive to your site.

We use the Authenticate option a lot as our client has to by law send goods within a certain time of debiting the account - which is not always possible so they authenticate - this keeps the CC details on record with the PG and when the order is ready to go they go into the backend for the PG and initiate the transaction.

This is what I was referring to as a possible solution in an earlier post.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

SSL stands for “Secure Sockets Layer” and an SSL certificate is a critical component to keeping your website safe, secured, and compliant. Any ecommerce website must have an SSL certificate to ensure the safe handling of sensitive information like…
These days socially coordinated efforts have turned into a critical requirement for enterprises.
The purpose of this video is to demonstrate how to set up basic WordPress SEO. This will be demonstrated using a Windows 8 PC. The plugin used will be WordPress SEO by Yoast. Go to your WordPress login page. This will look like the following: myw…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question