Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Quickbooks Merchant Service v1.0


MediaHound

Recommended Posts

  • Replies 106
  • Created
  • Last Reply

Top Posters In This Topic

The issue I'm having is the certificate signing request GUI provided in cPanel does not allow you to fill out the Common Name (and "pass phrase" is not mapped to it!)

IMPORTANT: When creating this certificate the Common Name (Your Name) needs to be EXACTLY your.url:your.application.name.

 

Now to figure how to do the CSR the old fashioned way...

Link to comment
Share on other sites

parmenio, could you post some code examples of what your using behind each of these, and if your not using any and left them blank, could you let us know?

 

Subscribe URL: * * Need https URL

Change URL: * * Need https URL

Cancel URL: * * Need https URL

Login URL:

Marketing URL:

Link to comment
Share on other sites

The issue I'm having is the certificate signing request GUI provided in cPanel does not allow you to fill out the Common Name (and "pass phrase" is not mapped to it!)

Now to figure how to do the CSR the old fashioned way...

 

MediaHound,

 

I will try to help you out as I have time, but I will be swamped with work for the next month. In order to create the key and CSR, you will probably need shell access to your account. I was unable to create the key / CSR from cPanel itself. To see if Shell access is enabled on your account from cPanel, in the "Security" category, you might see something that says "SSH/Shell Access," and try to connect by going to Java Telnet Applet if its available. If you cannot get in that way, you may need to email technical support of your webhost and request shell access (this is what I had to do). They should provide the details about how to get in through there. Once in, you can simply type in the commands the tutorial describes using openssl. It helps a LOT if you have some experience with basic UNIX commands to allow you to navigate your way through different directories. Otherwise, you can run the commands for openSSL in the shell prompt, and then manage the actual key, csr, and crt files you will create via File Manager in cPanel. Of course, if you are running a Windows-based server, then I suppose everything will be different.

 

I hope this is helpful and not confusing. Otherwise, be sure to let me know how you're doing! It may be helpful when I try to type up my own version of a step-by-step guide on how to get this darn thing to work. QBMS is the most difficult payment module I have ever had to work with, but it may also be one of the most secure.

 

Best of luck,

Parmenio

Link to comment
Share on other sites

That sounds great Parmenio, thanks.

 

I created my CSR, submitted it, and got it signed. I was fed back my two certificates.

 

I put them together into one file named intuit.pem and put it in a secure, non- web accessible URL.

 

I then visited my confirm appid url and got this error

 

There is a problem with sharing your financial data between applications.

 

Error Message: Auth ID does not exist

Exception from other package:

AuthException: (-90) Auth ID does not exist

 

 

Maybe these obstacles will help to prepare some step-by-step guide or be useful for others as we figure it all out.

Link to comment
Share on other sites

One thing I will suggest is to use a path for the ticket to be created in a place most people will have access to.

I wrote it to /tmp and luckily I can access /tmp but I can see this being a problem for most users.

intuit.php

<?php
//This script is accessed by Intuit's QBMS to return data from a request.

$PHP_ConnectionTicket = $_POST['conntkt'];
$PHP_AppData = $_POST['appdata'];
$PHP_AppID = $_POST['appid'];

$handle = fopen("/tmp/ticket.txt", "w");
fwrite($handle, $PHP_ConnectionTicket."\n");
fwrite($handle, $PHP_AppData."\n");
fwrite($handle, $PHP_AppID."\n");

?>

 

I presume that some people might need to change line 8 to a location thats not prevented access with a jail or cage...

Link to comment
Share on other sites

One thing I will suggest is to use a path for the ticket to be created in a place most people will have access to.

I wrote it to /tmp and luckily I can access /tmp but I can see this being a problem for most users.

intuit.php

<?php
//This script is accessed by Intuit's QBMS to return data from a request.

$PHP_ConnectionTicket = $_POST['conntkt'];
$PHP_AppData = $_POST['appdata'];
$PHP_AppID = $_POST['appid'];

$handle = fopen("/tmp/ticket.txt", "w");
fwrite($handle, $PHP_ConnectionTicket."\n");
fwrite($handle, $PHP_AppData."\n");
fwrite($handle, $PHP_AppID."\n");

?>

 

I presume that some people might need to change line 8 to a location thats not prevented access with a jail or cage...

 

I agree that /tmp is not the best directory to use for most person's setups, and I will use another address once I write my own tutorial for the osCommerce community. I do caution you put your ticket file somewhere secure once you have received it. You do not want anybody besides yourself to be able to read that file!

Link to comment
Share on other sites

intuit.pem should look something like this:

 

-----BEGIN RSA PRIVATE KEY-----
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
keyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfokeyinfo
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
certinfocertinfocertinfocertinfocertinfocertinfocertinfocertinfo
-----END CERTIFICATE-----

Link to comment
Share on other sites

If you get this error in your /tmp/curlerrors.txt

* About to connect() to webmerchantaccount.quickbooks.com:443
* Connected to webmerchantaccount.ctcfe.quickbooks.com (12.149.175.48) port 443
* error setting certificate verify locations
* Closing connection #0

 

make sure to give the webserver permissions to read from /your/path/to/usr/share/ssl/certs/ and permission to read /your/path/to/usr/share/ssl/certs/intuit.cer

Link to comment
Share on other sites

  • 4 weeks later...

I'm trying to follow the external tutorial found at http://idnforums.intuit.com/messageview.as...p;threadid=7743 and am stuck on step number 2. I was wondering if anyone could help me out.

 

"When creating the application, Quickbooks will ask for an “https:\\” callback url for various functions. It is VERY important that these URLs have a VALID SSL certificate issued by a recognized Certificat Authority (CA). We use RapidSSL here and have never had any trouble with their service or certificates. "

 

Does anyone know what the callback URLs would be for the following on a standard OSC installation?

 

Subscribe URL: * * Need https URL

Change URL: * * Need https URL

Cancel URL: * * Need https URL

Login URL:

Marketing URL:

 

I have https://www.mydomain.com but not sure what else would be required.

 

Any help would be greatly appreciated.

 

My client thought they were doing me a favor by signing up for Quickbook Merchant Services, but it's turning out to be an absolute nightmare making it work with OSC, which I love and can usually make work with anything :-(

 

Thank you!

Edited by montyrach

Rachel M.

Link to comment
Share on other sites

  • 3 weeks later...
That sounds great Parmenio, thanks.

 

I created my CSR, submitted it, and got it signed. I was fed back my two certificates.

 

I put them together into one file named intuit.pem and put it in a secure, non- web accessible URL.

 

I then visited my confirm appid url and got this error

 

There is a problem with sharing your financial data between applications.

 

Error Message: Auth ID does not exist

Exception from other package:

AuthException: (-90) Auth ID does not exist

Maybe these obstacles will help to prepare some step-by-step guide or be useful for others as we figure it all out.

MediaHound,

I have cPanel too with Shell access, but I've never used the shell before. Can you walk me through setting up the CSR? Any help would be greatly appreciated!

Thanks!

Link to comment
Share on other sites

  • 2 weeks later...

Ok so it looks like i was able to successfully get Ticket number(TGT) i also put in the IP address for the server, all the certs seem to be in place (i figured because QBMS posted the ticket) i put in the intuit.pem file i updated the info in the module... then i go and try test the server and i get

 

 

Error!

 

An error has occurred within our system while trying to process your credit card. Please try this transaction again. If the problem persists, please call 1-800-317-6958 to place your order.

Link to comment
Share on other sites

Ok one step further but is it working.... i am not sure i am using the test and it says..

 

<CustomerCreditCardAuthRs requestID="23909" statusCode="10401" statusSeverity="ERROR" statusMessage="The request to process this transaction has been declined. " />

Link to comment
Share on other sites

I have successfully got this working in a test environment with a developer account from intuit. It completes the order, gives me the admin email, and gives me (as the customer) the order confirmation email. it all looks great.

 

But...the order is not in the osc admin area under customers->orders...

 

Any ideas?

 

Also, i know this is probably not the place to ask, but intuits support is ridiculous, but on the intuit/qbms side of it, will there be anything to show that an order was recieved, etc etc. Possibly an .iif file to import into quickbooks, from qbms?

 

Any help is appreciated, thanks!

 

--edit--

the order is showing in my database in the orders table. I signed up as a new customer and that shows up in the customers area on osc admin.

Why the order shows up in the database, and not at ALL on customers->orders is rather puzzling...

Edited by ericTM313
Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
Can this module work if you are using Quickbooks "Desktop" Model instead of the web based one?

 

Just want to know ahead so as to prevent yet another nightmare with QBMS...

 

hi there -

 

I was installing qbms.php on a shared host, and after going through the whole certificate/callback process realized that I had to use "Desktop" since the IP number which QBMS sees from my host is dynamic and does not match that of the website's IP. "Desktop" is also a lot easier to configure overall as theres no certificate/callback madness.

 

I adapted the XML snip posted on the Intuit support thread into qbms.php and added options for "Hosted/Desktop" and "App ID". With this version, the certificate file and originating IP are only needed if you selected "Hosted". The new version is attached to http://addons.oscommerce.com/info/5383 .

Link to comment
Share on other sites

Hi, I'm brand new to ecommerce and am researching payment vendors. I was leaning towards Quickbooks' Merchant Services as I have the Accounting software and the thought of integration sounds nice. I'm capable enough to probably get this setup, especially with some instrcution, but don't want to go with QuickBooks if what I'm hearing is true about their support. I'd rather not be out on a limb when it comes to my business.

 

Any suggestions for someone looking for a simple, yet inexpensive solution?

 

PS (apologies if this is out of scope of this forum)

 

Regards,

-Brian

Link to comment
Share on other sites

  • 2 weeks later...

I am trying to follow this trail on the install process - I have looked over the tutorial at

 

http://idnforums.intuit.com/messageview.as...MVIEWTMP=Linear

 

and in this OSC topic - I am stuck at step

 

http://appreg.intuit.com

 

Once you have created an account with this system, you can create your project. It is important that when you do this you set the variables to the proper values.

 

 

When I login to http://developer.intuit.com/membership/MPC...pplications.asp

 

Do i have to add an application ( looks like my only option)? Where do I create the project to get the appid needed to gen the connection ticket?

 

I see this:

 

Follow the steps below to submit your integrated application. Required fields are marked with an asterisk. Once you complete the form, click the "Submit" button at the bottom of the page to complete the process. If you would like tips on what to enter in each field, click on the “Help" link to the right of each section.

 

The information you provide below will be used to properly display your listing in the QuickBooks Solutions Marketplace. Your support and contact information will be included with your listing so that QuickBooks customers can contact you directly for sales and support for your product.

 

>> all the into required relates to setting up a QB integrated app for sale - when I am just trying to get the QB payment module working on OSC.

 

I gend the SSL cert for the user and have the intuit.php file and the pem file in place - but where do I get the confirm app URL?

 

from previous posts:

 

I then visited my confirm appid url

 

http://merchantaccount.quickbooks.com/j/sd...p;appdata=10001

 

Where does the value MYAPPID come from?

 

This process is nuts - I have access to the client QB merchant account interface - there is nothing in there about gening the connection ticket. Can someone throw me a line - I am drowning here :-(

Link to comment
Share on other sites

I can tell you that I never filled this page out:

http://developer.intuit.com/membership/MPC...Application.asp

 

This is where you should add your app info:

http://appreg.intuit.com/AppReg.aspx (click add)

 

Once you do, you should see it listed here, and it will show you your appid:

http://appreg.intuit.com/

Edited by MediaHound
Link to comment
Share on other sites

ok, so im totally confused on this whole thing... :'(

I am on a shared server at NetworkSolutions. It's a basic hosting account, not ecomm. I have an SSL with them and they installed it, so I know nothing of CSR's. Do I need to generate a CSR if my host and SSL are the same? And I saw someone mention that I would need to connect via SSH/Shell....how do i do that? Thanks in advance.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...