Release Notes

Store 1.6.5

Released September 7, 2013

  • ExpressionEngine 2.7 compatibility
  • Fixed an issue where customers could potentially order more than the available stock when using single-SKU modifiers
  • Updated PDF library to fix an error on servers running PHP 5.4 or newer

Store 1.6.4

Released April 27, 2013

  • ExpressionEngine 2.6 compatibility
  • Added wildcard matching for postcards in the default shipping plugin
  • Added new store_cart_update_tax_rate hook
  • Removed fallback CP navigation menu
  • Fixed missing Javascript sortable library when using the Store fieldtype in SafeCracker forms

Store 1.6.3

Released February 16, 2013

  • Renamed store_model to store_common_model to avoid a conflict if BrilliantRetail and Store are installed on the same site
  • Added missing ACT state (Australia) to installer
  • Fixed an issue where very large carts would trigger a PHP error
  • Fixed mapped member fields not being set for new members registered during checkout
  • Fixed invalid HTML being generated by the download tag
  • Fixed broken form submissions in certain cases where template caching was enabled
  • Fixed an issue where submitting a SafeCracker form for the products channel without including the Store Product Details fieldtype would display a PHP error
  • Fixed a FedEx shipping driver error message when weights were stored as metric units in Store
  • Fixed incorrect conversion between pounds and kilograms in some shipping drivers
  • Fixed Sage Pay Server gateway not redirecting correctly if the customer clicks “Cancel” on the Sage Pay website
  • Fixed Netaxept gateway not redirecting correctly after the customer returns from payment
  • opt_price_mod_val is now no longer rounded in templates

Store 1.6.2

Released December 22, 2012

  • Added Mollie payment gateway
  • Added Buckaroo payment gateway
  • Added Paymate payment gateway
  • Added Webteh payment gateway
  • Added Ogone DirectLink payment gateway
  • Added eWay Shared (UK) payment gateway
  • Added Brazilian Portuguese translation (thanks to MarchiMedia for this translation)
  • Added Dutch translation (thanks to A&M Impact for this translation)
  • Added Italian translation (thanks to Luca Di Bella for this translation)
  • Added Spanish translation (thanks to Iberian Media for this translation)
  • Added {method_price} variable to the {shipping_methods} loop in the checkout tag
  • Added {qty_in_cart} variable to the product tag
  • Added {if no_modifiers} conditional variable to the product tag
  • Added disable_javascript parameter to the product and checkout tags
  • Added a confirmation dialog when resetting the default order fields in the CP
  • Added store_cart_update_start hook
  • Added optional anonymous reporting of PHP & EE versions to help improve the product
  • Increased the maximum SKU length to 40 characters
  • Improved form submissions for websites using Structure or other URL-routing add-ons
  • Improved error handling for UPS shipping plugin
  • Improved error handling for USPS shipping plugin
  • Improved error handling for iDeal payment gateway
  • Improved display of the promo code on the order details CP page
  • Rewrote store.js script to be more easily extended by front-end code
  • Store.js is no longer minified by default, to avoid hard-to-diagnose javascript issues
  • Removed dependency third-party accounting.js library
  • Fixed multiple issues and improved error handling of the FedEx shipping plugin
  • Fixed an issue where the store_order_complete_end hook may receieve incorrect order details
  • Fixed an issue where require="shipping_method" was being ignored in the checkout tag
  • Fixed an issue where the dynamic price variable would not update if the modifier caused the price to be $0
  • Fixed an issue in the UPS shipping plugin when shipping to the UK
  • Fixed an issue where form submissions may trigger a serialize() error

Store 1.6.1

Released November 2, 2012

  • Fixed an issue where ExpressionEngine 2.5.3 would display PHP errors related to session hooks
  • Fixed an issue where an incorrect weight was being used for the UPS shipping plugin
  • Updated the UPS shipping plugin to split large orders into multiple packages
  • Fixed an issue where the download link expiry timeout was not working
  • Fixed a javascript issue where dynamic product variables were not being updated
  • Fixed an issue where the member_id was not passed to extensions when a member registered during checkout
  • Fixed orders report text and dates which were not able to be translated
  • Improved error handling for USPS shipping plugin

Store 1.6.0

Released September 23, 2012

  • Added the Product Form Tag to support adding multiple products to the cart at once
  • Added ability to register member accounts during checkout
  • Added USPS shipping plugin
  • Added FedEx shipping plugin
  • Added priority field to the default shipping plugin
  • Added order_status parameter to the orders tag
  • Added support for the X-Forwarded-Proto header, to support websites serving HTTPS over a reverse proxy
  • Added Cardsave payment gateway
  • Added iDEAL payment gateway
  • Added Nets (BBS) Netaxept payment gateway
  • Added Rabo OmniKassa payment gateway
  • Added Sage Pay Server payment gateway
  • Added the ability to pre-fill customer details for PayPal Express payment gateway
  • Added the ability to customize the payment page for PayPal Express payment gateway
  • Removed deprecated PayPal Standard payment gateway. Please upgrade to the newer PayPal Express driver.
  • Modified Product and Checkout forms to return JSON to AJAX requests
  • Improved handling of form submission on templates with multiple forms, or template caching enabled
  • Added product SKU to Google Analytics conversion tracking
  • Fixed an issue with the WorldPay gateway not redirecting properly after payment
  • Fixed an issue where last_call was not being checked inside extension hooks

Store 1.5.3

Released May 21, 2012

  • Zoo Visitor integration (thanks to ExpressionEngine Zoo for initial development of this feature)
  • Added extra custom order fields (now supports up to 9 custom order fields)
  • Added optional accept_terms checkbox to the checkout tag
  • Added store_product_price_inc_tax dynamic css variable
  • Added format="" parameter to the {product_details:sale_start_date} and {product_details:sale_end_date} inline variables
  • Fixed an issue where dynamic css variables were not updating when using radio inputs inside the product tag
  • Fixed an issue where the sale start date and sale end date were being automatically set to the current date on the publish page
  • Fixed an issue where the “Sale Price Enabled” checkbox could not be unchecked on the inventory page
  • Fixed an issue where filter by payment status was not working on the orders page

Store 1.5.2

Released April 27, 2012

  • Added PayPal Express Checkout payment gateway. PayPal Standard is now deprecated and will be removed in a future release.
  • Added the ability to re-order product modifiers and options on the publish page
  • Added support for third party conversion tracking code, in addition to automatic Google Analytics support
  • Added a setting to configure the cart expiry timeout (defaults to 24 hours)
  • Added {payment_method_name} variable to checkout and order tags
  • Added custom format parameter to {sale_start_date} and {sale_end_date} variables in the product tag
  • Added store_product_price dynamic css variable to the product tag
  • Added the ability to specify a reference when entering manual payments in the control panel
  • More visual improvements to the publish page
  • Combined and minified all javascript files to improve performance
  • Fixed an issue where unicode characters were not displaying correctly on PDF reports
  • Fixed an issue where secure download links would not work when using relative file paths
  • Fixed custom currency formatting in tooltips on the dashboard sales graph

Store 1.5.1

Released March 30, 2012

  • Repackaged example templates and renamed embedded templates to begin with underscore, to avoid being treated as hidden files on some operating systems
  • Allow submitting the shipping method id as shipping_method for compatibility with require=”shipping_method” and {error:shipping_method}
  • Fixed an issue with the Sage Pay payment gateway, which was causing the error “4023 : The Card Issue Number length is invalid”

Store 1.5.0

Released March 27, 2012

If you are updating from a previous version of Store, please make sure to also read the Store 1.5 Upgrade Notes.

  • Added Authorize/Capture support to most payment gateways
  • Added automatic Google Analytics integration
  • Added GoCardless payment gateway
  • Added Payflow Pro payment gateway (thanks to Giles-Parscale for sponsoring this feature)
  • Added 3D Secure Authentication support to the Sage Pay Direct payment gateway (thanks to Swash Media for initial development of this feature)
  • Added the ability to create multiple instances of each payment gateway
  • Added the ability to create custom manual payment types, using the “Manual” payment gateway
  • Added the ability to capture payments or issue refunds directly from the Store control panel
  • Added {price_inc_mod} and {price_inc_mod_inc_tax} variables to the {modifier_options} loop in the products tag
  • Added an “Overpaid” payment status for orders which have been overpaid
  • Added the ability to filter the orders list on orders placed today
  • Added the ability to specify whether a tax rate applies to shipping costs
  • Added the promo code to the Order Details page, if a promo code was used for the order
  • Added orderby="total_stock" and search:in_stock="yes|no" parameters to the search tag
  • Added require="shipping_method" parameter to the checkout tag
  • Added {field:field_name} helper variables to the checkout tag, to quickly and easily template input fields
  • Added support for MySQL strict mode
  • Rewrote example templates, to get new websites up and running quicker
  • Rewrote payment library to support Auth/Capture (some custom gateways will need to be updated)
  • Orders are now only placed after payment is successful (until then, they are marked as “incomplete”)
  • Failed payments are now displayed in the Order Details page, for easy diagnosis of customer issues
  • The Australia Post shipping plugin will now automatically split overweight parcels to prevent API errors
  • The PayPal payment gateway will now automatically check the status of a payment, if the customer returns to the store before an IPN is sent
  • Replaced TCPDF library with DOMPDF, for cleaner and more flexible PDF output
  • Store will now revert to using the standard EE error template if error handling is set to inline, but the inline error variables have not been templated, rather than displaying the page with no errors
  • Fixed an issue where the checkout would not submit if the submit button contained only Unicode characters
  • Fixed an issue where having multiple product channels could trigger PHP errors in templates
  • Fixed an issue where HTTPS was not detected correctly on Windows (IIS) servers
  • Fixed an issue where the form XID was being added to forms even if secure forms were disabled
  • Fixed an issue where the order total could become negative if a promo code discounted an order by more than the total value
  • Fixed an issue where specifying a custom date for manual payments could result in an invalid date being recorded with the payment
  • Fixed various issues where payment return URLs would not work correctly on some servers, by making the payment return URL a regular EE action URL
  • Added a helpful error message if a anonymous customer tries to place an order and order submission is set to members only
  • Minor CP design changes
  • Restructured Store install and update files, for easier maintenance in future
  • Restructured payment method and shipping method database tables, for easier maintenance in future

Store 1.4.0

Released February 9, 2012

  • SafeCracker support
  • Added Stripe payment gateway
  • Added WorldPay payment gateway
  • Added the ability to search by product SKU using the built-in EE search functionality
  • Visual improvements for publish field
  • Added payment gateway reference to the payments list on order details page
  • Added {min_order_qty} variable to the product tag, for pre-populating the item_qty input
  • Added the ability to use any plugins or EE template code inside email templates (thanks to Newism for contributing this feature)
  • The “Order Confirmation” email is now associated with the default order status (instead of being sent automatically), to remove confusion
  • Added new developer extension hooks: store_order_submit_start, store_order_submit_end, store_order_payment_start, store_order_payment_end
  • Improved documentation for payment gateways and developer extension hooks
  • Big cleanup of Javascript code
  • Added data-order-total attribute to checkout and payment forms for easy access from Javascript code
  • Refactored CI-Merchant library so that new drivers can be installed without modifying merchant.php
  • Fixed an issue where orderby=”random” was not working correctly in the search tag
  • Fixed an issue where HTML emails would not display correctly for some email software
  • Fixed an issue where Javascript would fail to load if jQuery was loaded using the HTML5 async attribute
  • Fixed an issue where updating product prices on the inventory page would remove previously set product shipping options

Store 1.3.1

Released December 12, 2011

  • Fixed an issue where the shipping total was being calculated based on the billing address instead of the shipping address
  • Fixed an issue where the {if on_sale} conditional wouldn’t work on the order details page
  • The cart and order details are now automatically refreshed after login
  • Added the ability to submit manual payment methods in the payment tag
  • Added the {previous_url} variable to the checkout tag, for linking back to the most recently viewed product

Store 1.3.0

Released December 4, 2011

  • Shipping overhaul: shipping rules may now be defined based on country, region, postcode, order quantity, order total, and weight
  • Added Australia Post shipping module
  • Added active promo code to the orders report
  • Added the ability to name checkout submit buttons “commit” instead of “submit”, to avoid issues when using javascript to submit the form
  • Added SQL indexes to frequently used database columns, for better performance on large websites
  • Billing details are now submitted to the payment gateway
  • Fixed an issue where promo code was not being stored along with orders
  • Fixed an issue where the Add to Cart button would not work on cached templates due to inline form handling
  • Fixed an issue where the Add to Cart button would not work if clicked multiple times on an AJAX form, because the CSRF token could only be used once
  • Fixed an issue where email encoding was not following the ExpressionEngine settings
  • Fixed an issue where certain characters could not be searched for in the Inventory and Orders control panel pages

Store 1.2.2

Released November 8, 2011

  • Added html documentation to the Store download
  • Added the ability to to clear the cart on member logout
  • Added Canadian provinces to the default install
  • Added the “store_inventory_datatable” developer hook
  • Added the “store_orders_datatable” developer hook
  • Payment confirmation email is now sent even if the order total is \$0
  • Fixed an issue where email templates were being unintentionally stripped of inline CSS thanks to the XSS filter
  • Fixed an obscure PHP error when EE calls our extension hook twice
  • Fixed some minor tax rounding issues for shipping rates
  • Simplified install process by automatically installing extension

Store 1.2.1

Released October 15, 2011

  • Fixed an issue where shipping plugins were not loaded on case-sensitive filesystems.

Store 1.2.0

Released October 14, 2011

  • Added MSM Support - run multiple independent stores from a single install!
  • Added UPS Shipping Driver (requires UPS account and API key)
  • Added {order_subtotal_inc_shipping}, {order_subtotal_inc_discount}, {order_handling}, {order_total_ex_tax}, and other variables to the checkout/order tags
  • Added orderby=”” and sort=”” parameters to the search tag
  • Added search:on_sale=“yes” parameter to the search tag
  • Added {page_uri} and {page_url} variables to the items loop in checkout/order tags
  • Added new variables to directly display {sku}, {track_stock}, {stock_level} and {min_order_qty} for single-sku products in the products tag
  • Added {total_stock} variable to the product tag
  • Added {order_shipping_rule} variable to the checkout/order tags for default shipping module
  • Added {error:shipping_method} variable to checkout tag, to display errors from a shipping plugin
  • Added the ability to sort the inventory page by price, sale price, or total stock
  • Added the ability to mark individual products as tax-free (e.g. gift certificates)
  • Added the ability to send downloads the the client’s browser using the X-Sendfile header (requires Apache with mod_xsendfile support)
  • Added the ability to limit cart sessions to their original IP address
  • Improved the shipping plugins API to allow greater flexibility for shipping plugins
  • Added the “store_cart_update_end” developer hook
  • Added the “store_cart_item_update” developer hook
  • Added the “store_process_product_tax” developer hook
  • Improved performance of the checkout tag by only recalculating the checkout when necessary
  • Moved front-end javascript into a separate, asynchronously loaded file
  • Made some minor visual improvements to the product details custom field
  • Billing/shipping regions are now sorted alphabetically when they are displayed to the user
  • Fixed an error which occurred when trying to download non-existent files
  • Fixed an issue submitting test payments with the dummy gateway
  • Fixed an issue where the magic css classes (e.g. class=“store_product_sku”) wouldn’t work if there was more than one product on a page
  • Fixed an issue where some report strings weren’t localized

Store 1.1.2

Released August 27, 2011

  • Added 2Checkout payment gateway
  • Added new {shipping_method_options} helper variable to the checkout tag
  • Added the ability to remove promo codes from the cart by submitting a “remove_promo_code” field
  • Fixed an issue adding manual payments where the amount included a currency symbol
  • Fixed an issue where promo codes could not be removed from the cart once added

Store 1.1.1

Released August 24, 2011

  • PHP 5.1.6 support

Store 1.1.0

Released August 20, 2011

  • Added new orders report
  • Added the ability to sort the products sold report by product title
  • Added the ability to export reports directly to PDF or CSV from the Reports screen
  • Added {exp_month_options} and {exp_year_options} helper variables to Payment and Checkout tags
  • Added stock_product_in_stock and store_product_out_of_stock magic classes to Product tag
  • Added form_id, form_name and form_class parameters to Product, Checkout and Payment tags
  • Added support for entering prices up to 4dp in the backend (useful on stores which display tax-inclusive prices)
  • Added support for displaying currency symbols after the amount
  • Added an option to link directly to the order invoice from the control panel
  • Added PayPal Pro payment gateway
  • Added SagePay Direct payment gateway
  • Added eWay Shared payment gateway
  • Added eWay Hosted payment gateway
  • Changed default currency code to USD
  • Minor control panel interface improvements
  • Improved compatibility with ExpressionEngine 2.1.3
  • Improved compatibility with servers where PHP short tags are not enabled
  • Improved error handling in the Store Product Details custom field
  • Improved error messages in the Payment tag
  • Fixed a bug where products could not be edited if the Store Product Details custom field was marked as required
  • Fixed a bug which would show PHP errors if the default shipping country had no regions defined
  • Fixed a bug where promo codes would not work if they had a per-user limit set
  • Fixed a bug preventing promo code use counts from being incremented
  • Fixed a bug where items couldn’t be removed from the cart if they had a minimum order quantity set
  • Fixed a bug where store_product_stock and store_product_sku magic classes wouldn’t display on page load if the page contained another form

Store 1.0.0beta

Released July 25, 2011

  • Initial release