CherVickers:
First, the I have my developer working on answering the technical questions above.
To address a few of your questions RixStix...
You've got so many parallel threads going that it is nearly impossible to follow.
I could not get Shipstation to install with CEON. I uninstalled CEON and Shipstation worked.
I emailed the developer of Shipstation. Here is what the developer of Shipstation sent back to me:
"It appears that you have figured this out. Currently the ZenCart 3rd Party ShipStation Connection and CEON are not compatible. Like you said its one or the other. I wish I had another option for you but because we did not build that integration we do not have control over it."
So...
I made a new reply under the thread for CEON URL due to this. In the context of the message, another developer asked me to move the thread to 'general' and I did. HENCE.. THIS IS THE ONLY open thread on this question.. and the question is...
WHAT CAN I DO TO MY CEON module to get Shipstation to work? THEY BOTH WORK FINE INDEPENDENTLY. When I install them both, the Shipstation fails.
To your other questions:
-where did you create or obtain this app.php file that you mention.
I am not sure what you mean by app.php. However, I will try to address:
I got the shipstation_zc.php file **emailed to me directly from a developer at shipstation **who was trying to fix my issue. He told me there was an update and that I should use the file you see in the 'old' thread. I could only get shipstation to work using this file and the 'snipped' of code I printed in the last thread. If I did not use this php file and tried the one on the site, I could not connect to Shipstation.
If you mean any of the CEON installed files, those files came from the CEON module.
You wrote:
AFAIK, ShipStation does not require or use any .htaccess coding to function. It only requires shipstation_zc.php. I haven't modified any .htaccess file so that SS would function.
My reply:
Shipstation DID require me to use a snippet that was to be added to my .htaccess code and when I installed that snippet AND used the shipstation_zc.php file, AND unistalled CEON, my site was able to connect to Shipstation without issue. It will not work with shipstation under any other set of circumstances.
You wrote:
The code you posted a while back compared to the latest ShipStation update on the same date does not match. I just happened to be talking to a SS support tech and developer and neither had a clue about the code you posted but were pretty specific that the code on the SS website is the official code. It was very difficult to compare the code since you posted code without using the # sign in the menu bar above and pasting the code between the tags.
My reply:
I am not a developer and did not know how to use the #sign to show you. The code I posted was cut and pasted from an email that a shipstation developer emailed to me. AGAIN, it is the only code with which my site would work with shipstation. (It also required the .htaccess 'snippet' and the deinstall of CEON.
You wrote:
There is nothing to call SS. As far as ZC is concerned, SS doesn't even exist. shipstation_zc.php is the file SS executes to log into the admin side and grab the data for outstanding orders. ShipStation should have its own admin account (limiting access) and admin password instead of you providing them with your SuperUser credentials.
My reply:
Again, I am not a developer, but I don't know anything about 'calling SS' but I do have to have an ZC admin account that is specific to Shipstation as you suggest.
You wrote:
ShipStation functions without any issues with a vanilla ZC of any version. The culprit is most likely some customizations that you have added.
My reply:
The culprit is that Shipstation is not compatable with CEON. This was confirmed by myself, my developer and Shipstation.
You wrote:
Are you wanting, thinking or expecting that ShipStation does something other than what is designed to do.... download order details to their server so that you can print shipping labels? Then, write the tracking number back to the order comments and change status to delivered.
My reply:
No, I cannot authorize my zencart to get the account information from Shipstation using the code provided due to the fact that CEON is not compatible. I am looking for a code fix to install to make them work together.
TO THE REST OF THE TECHNICAL QUESTIONS (file contents, etc), I will post tomorrow as my developer is unavailable to post until then. I do have the .htacess file info but I will admit I have about 12 of those files in different parts of my ZC so I am not sure which to supply. Hence, I am asking a more knowledgeable person who knows the correct answer to respond and perhaps we can solve this mystery.
I do not believe that I am the only ZC user with CEON who wants to use Shipstation .. so my hope is that we can get a fix and make people happy!
thank you ALL for your responses!
c
I'm not going to get as fancy as above, but don't mind trying to remove some of the technobabble out if possible. :)
In the post of the thread above, an .htaccess snippet was provided and is referenced above.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
To try to explain what this is/does. The first line checks to see if there is a particular filetype on your hosts system.
The second line basically enables everything that follows up to the closing IfModule. Everything on the second through 5th line is only processed if the first line is true.
The third line enables the authorization process necessary for shipstation to pass the login credentials based on an internet review of that line, and it somewhat looks like all other processing of the .htaccess at that point stops (,L at the end of that line) which also may be why there is no "app.php" to discuss.
I've added a blank line to try to help clear things a little.
So the fourth line says if the thing to be shown in the web browser is not specifically a file then process the fifth line. (CEON does recognize/make available directories which is part of the rewrite process, so a CEON URI would/could cause the following line to be processed.)
This brings us to the fifth line that all have asked about. If the RewriteCond above is true, then the RewriteRule is processed. This processing as lhungil stated by asking is to take whatever is in the uri and send it on to the program that is called app.php passing any parameters (products_id=xxx or in this case SS-UserName=XXXXX and SS-Password=YYYYYY) and then stop processing anything below that rewriterule (again ,L at the end of the line).
The last line basically says, alright we're at the end of the If statement...
So, to keep things slowly progressing forward, since the code that was in shipstation_zc.php was sent to you via email, was code provided for app.php by your contact?
If the answer to that is no, then lines 4 and 5 should be removed {to 1) prevent further confusion by anyone looking at your .htaccess file and 2) to prevent breaking access to your site once the other problem is solved.}
Now, the question of which .htaccess we're talking about... Yes there can be many of such file in many different locations. Right now... I would like to start with the one that is at the location where your the index.php file for the front page of ZC is located. This is the location in your file directories where you will find such folders as typically your renamed SECRET admin, cache, download, editors, email, extras, images, includes, logs, media, and pub. If there is an .htaccess file and named specifically as such, then that is the file to first see. The next which lhungil was indicating is if you go up one folder from that (parent) to see if there is an .htaccess file there and what it's contents are. Then continue going up a folder at a time repeating this process... So, say first time the directory might be something like (more than likely significantly different than this):
/usr/server1/host/public_html/mystore/mystoreonline
and at this location is where the folders I describe above. Moving up a folder (parent) would be to then goto the folder at:
/usr/server1/host/public_html/mystore. Notice I have removed mystoreonline from the list of folders.
At this point, my suggestion to "try" would be to revise the .htaccess additional information to at most this (talking about modifying the portion that was added to "make it work", keep the rest of your .htaccess as it is/was):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
Notice the revision of the second line that removed ,L from the end.
This may resolve your issue in its entirety, though it would still be helpful to others to have a copy of the .htaccess file to validate and compare against. Do not forget to obscure your admin directory if it is provided in a manner suggested by lhungil.