stevebo Posted December 8, 2017 Share Posted December 8, 2017 On 3/27/2016 at 8:10 PM, njohn said: AHA - Now I remember where I saw use auth net https://firstdataclientsgge4.zendesk.com/entries/23543916-CubeCart-Integration-Instructions At the very beginning it says "CubeCart can be connected to Global Gateway e4 (GGe4) by modifying the Authorize.net SIM Module." Then gives precise instructions on what/how to do DUH Hi NJOHN, I cannot seem to log into Zendesk. Is there any chance you still read these forums and can send me the contents of that link? Thanks, Steve Quote Link to comment Share on other sites More sharing options...
njohn Posted December 9, 2017 Author Share Posted December 9, 2017 SORRY: I am no longer a user of that account and I cannot find a way to log back in. Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 9, 2017 Share Posted December 9, 2017 On 3/27/2016 at 11:43 AM, njohn said: LinkPoint Basic Connect 1.0 product is no longer supported. Please contact your account representative Any other advice you can give me to get set up like you did? I have been through the same frustrating exercise of getting the above error and am at a loss as to how this all works. Quote Link to comment Share on other sites More sharing options...
njohn Posted December 9, 2017 Author Share Posted December 9, 2017 You must first be a FirstData client(process purchases through them). You need to establish an account with FirstData then you can log in to access https://firstdataclientsgge4.zendesk.com/entries/23543916-CubeCart-Integration-Instructions I think Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 9, 2017 Share Posted December 9, 2017 Try this. After getting an account with FirstData/Payeezy: For testing the Authorize.net SIM method, install the Authorize.net module and configure it. Then, using a programmer's text editor, open the file: /modules/gateway/Authorize/gateway.class.php Find: $this->_url = $this->_module['testMode'] ? 'test.authorize.net' : 'secure.authorize.net'; $this->_path = '/gateway/transact.dll'; Change to: $this->_url = $this->_module['testMode'] ? 'demo.globalgatewaye4.firstdata.com' : 'checkout.globalgatewaye4.firstdata.com'; $this->_path = '/payment'; Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 10, 2017 Share Posted December 10, 2017 This is great! With your help, I'm almost there. I am successfully transported to a gateway screen to fill in credit card info. When I fill it in and submit, I now receive this: The following errors were detected: The merchant login ID or password is invalid or the account is inactive. I'm not sure how the credentials are passed. It would seem like a bad idea to hard code them into the .php code. Any ideas? Quote Link to comment Share on other sites More sharing options...
njohn Posted December 10, 2017 Author Share Posted December 10, 2017 (edited) You gotta ACTUALLY have an account. The (temp) password will be included in the "welcome" email you get when you register. Are you (or are you representing) a Firstdata merchant? Edited December 10, 2017 by njohn Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 10, 2017 Share Posted December 10, 2017 53 minutes ago, njohn said: You gotta ACTUALLY have an account. I have a demo account. Is that insufficient? Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 10, 2017 Share Posted December 10, 2017 If a demo account, then you may need to switch the Authorize.net module to "Test" mode (checkbox checked). Please verify. Quote Link to comment Share on other sites More sharing options...
njohn Posted December 10, 2017 Author Share Posted December 10, 2017 (edited) 1 hour ago, stevebo said: I have a demo account. Is that insufficient? QUITE sufficient. bsmither's reply (above) should be the clincher. Edited December 10, 2017 by njohn Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 10, 2017 Share Posted December 10, 2017 Oh no, I'm not sure what I did, but now it's trying to redirect me to test.authorize.net instead of demo.globalgatewaye4.firstdata.com. I don't even get to a credit card input screen. There is no reference to test.authorize.net anywhere in the cubecart / Authorize codebase. I do see authorize.net referred to in config.xml and language\module.definitions.xml however. There might be some weird caching thing going on that latched onto test.authorize.net while I was trying various things, but I've cleared the browser cache and refresh every page. Maybe you have some suggestion because this makes no sense at all. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 11, 2017 Share Posted December 11, 2017 (edited) What is the rest of the URL that it is trying to send you to? There were two lines to change. The two lines make up a complete URL. May we have a web address to check on a few things? Edited December 11, 2017 by bsmither Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 11, 2017 Share Posted December 11, 2017 Here is the store: http://www.fatpacking.com/cubecart/index.php When I get to the final checkout, http://www.fatpacking.com/cubecart/index.php?_a=confirm and click the checkout button, I am brought to http://www.fatpacking.com/cubecart/index.php?_a=gateway to enter Credit Card info. Unfortunately, before I can do anything, the cart redirects me to test.authorize.net and I'm served the error. I'm pretty sure that the cart is caching this from a prior session when I was trying various things. I have found that any time I change either the cart set-up configuration or any of the .php code that I have to refresh (F5) each page for the changes to take place. If I could only refresh the gateway page, I think the error might go away although I don't know. I am attaching gateway.class.php. I actually messed around with it a bit so it's possible that I deleted or altered something important, but I don't think so. gateway.class.php Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 11, 2017 Share Posted December 11, 2017 (edited) Update, I've had some success!!!! I removed the extension and re-installed it to get it to work. Now I am apparently getting through to the Gateway, but receive this Unable to proceed with payment We cannot proceed with payment because of technical difficulties. Please try again later Hosted Checkout Test Assistance Hosted Checkout test mode detected. Hosted Checkout uses security mechanisms to block repeated payment attempts. During integration with Hosted Checkout these may interfere with development and testing from time to time. The result is that you may see this page, independently of whether your shopping cart, or other integration server, is configured properly. To continue testing and developing your Hosted Checkout integration, you should try following this link to reset your session. Edited December 11, 2017 by stevebo Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 11, 2017 Share Posted December 11, 2017 OMG Success!!! Thank you both so much for all the help! This process was way more involved than it seems like it should be. I am going to post the steps necessary to make it work so that the next person can integrate Payeezy with Cubecart. But for the moment, I'll post the receipt Quote Link to comment Share on other sites More sharing options...
njohn Posted December 11, 2017 Author Share Posted December 11, 2017 Very good! Persistence and help from bsmither works every time. Quote Link to comment Share on other sites More sharing options...
stevebo Posted December 12, 2017 Share Posted December 12, 2017 If you a Cubecart user who needs to integrate with the Payeezy Gateway, here is how I did it. Hopefully, this guide will be useful to you. Much of this guide’s content was provided by bsmither with some help from njohn and in other threads around the web. Note: I have not yet, "gone live" so who knows what other bugs may be out there waiting for me? But this should get you connected to a test Gateway. Although Cubecart officially says it doesn’t work on a Windows Server, I was able to get it running on one. I have tried to denote these steps with WINDOWS SERVER ONLY. Cubecart comes with many free gateway “extensions” which install the code necessary to link your Cubecart shopping cart with a Payment Gateway, for example Stripe or Paypal. One of these is Authorize.net, which is the extension used to connect to Payeezy. Don’t get fooled by the First Data extension. Even though First Data and Payeezy are somehow the same (but different?) installing the First Data extension just seems to generate errors. I wasn’t able to get it to work anyway, maybe you can. As an aside, I cannot for the life of me determine whether Payeezy and First Data are one and the same, somehow related or not related at all. Step 1 (Cubecart side): Enable the Authorize.net SIM extension: https://www.cubecart.com/extensions/payment-gateways/authorize-net-aim-sim Click the lightning bolt Copy and paste the token into Extensions > Manage Extensions > Token on the Cubecart admin Click Go to install Under Available Extensions, Authorize.net should now appear. Check the Status box and click Save to make it “live” Click on Authorize.net (Dashboard > Manage Extensions > Authorize) Make sure Mode is SIM unless you are writing your own Payment API (along with all the PCI security codes – who’s got the life force to do that?) in which case you’d choose AIM Check Test Mode (Eventually uncheck and save when going live) You will need to provide an API Login ID and a Transaction Key. You can’t do this until you have set up a Payeezy Gateway Account (Demo account to figure this all out, but eventually a live working account). On the Payeezy Gateway Side: Step 2 (Payeezy side): To establish a Demo Account. Register for a Demo Payeezy account at: https://provisioning.demo.globalgatewaye4.firstdata.com/signup Once registered you will receive welcome emails with your Demo Login Credentials. You should choose Hosted Checkout (HCO) unless you want to write your own Payment API with all the security issues that come with it. HCO allows you to press a submit button from the Cubecart Payment Confirmation page and leave the actual credit card entry page up to the Payeezy Gateway. Cubecart’s free Authorize.net extension sends all the information and fields that the Payeezy Gateway expects such as price and merchant ID (your store name) in order to process the transaction. Next, we’re going to link your Payeezy Demo Merchant Account with Cubecart Log into Payeezy Go to Payment Pages Click on Payment Page ID Choose 10. Hash Calculator Copy x_login and transaction_key into Cubecart > Dashboard > Manage Extensions > Authorize > API Login ID & Transaction Key Click Save Now you are ready to modify the Authorize.net code so that it works with Payeezy. Step 3 (Cubecart again): Change the following code on the server in the file <cubecart folder>/modules/gateway/Authorize/gateway.class.php Find: $this->_url = $this->_module['testMode'] ? 'test.authorize.net' : 'secure.authorize.net'; $this->_path = '/gateway/transact.dll'; Change to: $this->_url = $this->_module['testMode'] ? 'demo.globalgatewaye4.firstdata.com' : 'checkout.globalgatewaye4.firstdata.com'; $this->_path = '/payment'; Also: You must capitalize CC and PAYMENT_FORM in <cubecart folder>/modules/gateway/Authorize/gateway.class.php as specified here: https://support.payeezy.com/hc/en-us/articles/204686725-First-Data-Payeezy-Gateway-Payment-Page-Field-Validation Change 'x_method' => 'cc', To 'x_method' => 'CC', Change 'x_show_form' => 'payment_form', To 'x_show_form' => 'PAYMENT_FORM', WINDOWS SERVER ONLY: add the following code to Web.config: <!--This is for Cubecart!!!--> <system.webServer> <httpErrors errorMode="Detailed"/> <rewrite> <rules> <rule name="rule 1R" stopProcessing="true"> <match url="^cubecart/(.*)\.html?$" /> <action type="Rewrite" url="/cubecart/index.php?seo_path={R:1}" appendQueryString="true" /> </rule> </rules> </rewrite> WINDOWS SERVER ONLY One other issue you might have on a Windows Server is that index.php isn’t recognized as a start page. You can easily create a page that loads automatically that transfers control over to index.php. So create a file called index.html consisting of the following code. If it’s not obvious, make sure to replace YourDomain with your website’s domain name and <cubecart folder> to the directory where you installed Cubecart. <html> <head> <title>[Your shopping cart name] Shopping Cart</title> <meta http-equiv="refresh" content="0; URL=http://www.YourDomain.com/<cubecart folder>/index.php"> <meta name="keywords" content="automatic redirection"> </head> <body> If your browser doesn't automatically go there within a few seconds, <a href="http://www.YourDomain.com/<cubecart folder /index.php">Click Here</a>. </body> </html> I’m sure there’s stuff I’ve forgotten. For example when debugging Cubecart it helps to refresh your browser after every change you implement. But I hope this is useful for someone else who wants to do the same integration. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 12, 2017 Share Posted December 12, 2017 To be clear, by "Windows Server", there is the IIS webserver running on the Windows Server operating system. Neither is supported by CubeCart Ltd. That is, getting the Rewrite URL configured on IIS (or any other webserver other than Apache), nor the peculiarities of PHP and dealing with the backslash of Windows OS directory separator. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.