Setting Up FoxyCart
Use our Forums to find examples and answers to your questions. If you have advanced requirements for your project, contact us and our staff can help you find a solution.
Create Your FoxyCart Store
Go to FoxyCart and create an account. You do not have to pay for FoxyCart while you develop your site.
Setting up your Store
FoxyCart makes available all of the older Store versions, you will want to select the version that corresponds with the foxee module you have. Foxee build 1.110.51.030 would require FoxyCart store 0.5.1 and ExpressionEngine 1.X. 110 is the foxee Version number and 030 is the build number.
Store Settings- The store settings section will require the following:
- Your store URL and receipt continue URL (060)
- Store sub domain must match your foxee setting
- Foxee does not currently support multiple ship-to addresses
- Emails can be left blank if you do not wish FoxyCart to send out acknowledgment emails.
- The advanced section requires:
- Enable the datafeed and copy the datafeed key into your foxee settings under general settings, also copy the EE action datafeed URL found in the foxee general settings into FoxyCarts datafeed URL
- Enable Shared Authentication (Single Sign On - SSO) and copy the EE action URL found in the foxee general settings
- Foxee currently does not support Unified Order Entry inside of the EE CP
- Your password hash should match what you have selected upon installing EE. The default for EE is SHA1.
- The rest of the store settings are dependent on your selected merchant provider, shipper and tax requirements, any question pertaining to these settings should be directed to FoxyCarts documentation or forums.
- Most features for your products settings are handled through foxee. There may be instances where you will want to use FoxyCarts categories to further isolate your products, or coupons for your customers, or a combination of both. For example, only offer a coupon for one product.
- Downloadables and subscription settings are handled through foxee.
- FoxyCart's template settings are important to understand and consider when evaluating your project. There are two main templates that need to be considered, the Cart template and the Checkout template. The others depend upon your sites requirements and structure.
- The language template (file) will allow you to edit the FoxyCart forms text to meet your requirements. There are also other aspects of the forms that are controlled by the language file that can easily be edited here, like the credit card logos.
- The cart template can be styled to match your site. You can use it as a pop-up window (default) or as a landing page, or you can bypass it all together. If you want to customize the cart template you will want to view their tutorial HERE.
- The Checkout template is the most important part of making your stores checkout process appear seamless. You can over-ride FoxyCart's CSS very easily to create the same look and feel as your website. View THIS TUTORIAL to learn the quickest way. There are several other features available to achieve seamless integration, one important thing to remember is that the checkout template is not Dynamic with ExpressionEngines template tags.
- Single Sign On (SSO)
- Remote store domain
- Favicon
- Template caching (Automagicache)
- FoxyCart's reports can be very useful to determine if you have setting errors, view your transactions and isolate communication issues.
- The error log is the most important to understand. Some errors will become persistent, meaning FoxyCart will continue to try and submit an order until the process is complete.
- If you have persistent errors you can acknowledge and accept them to prevent them from trying to process.
- Errors will also guide you to where the problem lies, with your add_to_cart form for example, or a user submitting bad credentials.
- You should check your FoxyCart reports regularly to make sure you do not have unknown errors in your stores templates.
Communicating with FoxyCart
Understanding the way that foxee and FoxyCart communicate is important to making your development process go as smoothly as possible. Unlike many EE modules, foxee communicates with the outside world to provide FoxyCart's e-commerce service to your website. This requires special consideration when using development platforms, .htaccess files and URL redirects.
JSON- FoxyCart uses a JSON cart object to make manipulating the cart very flexible.
- You can read about it HERE
- When planning your store you should understand that the cart information is derived form FoxyCart and is not part of the EE process.
- Although foxee handles everything you need when working with FoxyCart's XML datafeed, it is important to understand what is going on behind the scenes while planning your store.
- The datafeed is the most important link between FoxyCart and your ExpressionEngine store. You can find out more HERE
- Foxee handles all of the requirements with FoxyCart to control subscriptions. It is important to understand how the subscription datafeed works and its limitations. All of the relevant points are spelled out in the appropriate sections of our docs.
- You can find out more about Subscription datafeeds HERE
- The User API allows foxee users to provide their customers with easy access to their account inside of the EE templates.
- All of the functionality, tags and examples are in the appropriate section of our docs. You can read more about FoxyCarts API HERE
- fc_PreProcess is a javascript function call that foxycart_includes calls prior to a addtocart request is processed. FoxEE uses this function within foxee.js file to perform what it needs to do before a cart is processed. FoxEE also calls a function if it exists "fe_PreProcess" which can be used by site builders to perform additional pre-processing. This must return either true or false. If a false is returned then all further processing is halted and true allows processing to continue.
- fc_BuildFoxyCart is another call made by foxycart_includes once the thickbox cart is closed. FoxEE uses this function as well and it also calls a function fe_BuildFoxyCart.
- More information can be found HERE
