Release Notes

Store 5.0.0

Released November 27, 2019

  • This is an identical release to the 5.0.0.2 Beta but is tagged as the first full release of v5.

Store 5.0.0.2 Beta

Released November 7, 2019

  • Required PHP version is now >= 7.1, due to Omnipay 3.0 dependencies.
  • Upgraded Sage Pay Server, Sage Pay Direct, Paypal Express, Mollie
  • Deactivate settings for unsupported gateways
  • Add langauge support to Stripe JS module tag
  • Set a fixed API version for Stripe to prevent errors with accounts that are on an older API version

Store 5.0.0.1 Beta

Released September 4, 2019

  • Upgraded Omnipay to version 3.0
  • Upgraded the following Payment Gateways to support version 3 of Omnipay: Dummy, Manual, Stripe
  • Deprecated and removed the following gateways: Buckaroo_CreditCard, Buckaroo_Ideal, Buckaroo_PayPal, CardSave, Coinbase, Eway_Rapid, FirstData_Connect, GoCardless, Migs_ThreeParty, Migs_TwoParty, MultiSafepay, Netaxept, NetBanx, PayFast, Payflow_Pro, PaymentExpress_PxPay, PaymentExpress_PxPost, Pin, SecurePay_DirectPost, TargetPay_Directebanking, TargetPay_Ideal, TargetPay_Mrcash, WorldPay

Store 4.2.1

Released September 6, 2019

  • Fixes array to string conversion on state name when displayed in template

Store 4.2

Released August 23, 2019

  • Fixes missing language keys for Sisow payment gateway
  • Fixes missing items on the inventory screen
  • Fixes issue with Publisher Phrases in inline error handling on Checkout form
  • Fixes validation on adding a state/region to a country in control panel
  • Fixes improper query grouping on CP Dashboard when ‘only_full_group_by’ sql_mode is enabled
  • Fixes ‘The Basket format is invalid’ error for SagePay payment gateway
  • Fixes to prevent white screen on SagePay Direct & Server transactions
  • Fixes to dependencies to not force PHP 7.1 in certain circumstances
  • Updates outdated CA Root Certificate for Guzzle
  • Updates docs to reflect actual PHP and ExpressionEngine requirements

Store 4.1

Released November 10, 2018

  • Fixes issues with member registrations in certain cases
  • Fixes custom_price label showing HTML in the control panel
  • Fixes a PHP warning that showed with price modifiers or pagination in certain cases
  • Fixes sending the order_id in the orders tag
  • Fixes some checkout field validation issues
  • Updates to Authorize.net integration
  • Updates security class syntax
  • Updates for some EE4 schema changes
  • Updates some control panel path references
  • Updates to tax value calculation on modifiers

Store 4.0

Released April 18, 2018

  • ExpressionEngine 4 support!
  • A number of bug fixes and minor feature enhancements

Store 3.1

Released April 18, 2018

  • A number of bug fixes and minor feature enhancements

Store 3.0.1

Released August 8, 2017

  • Fixed a bug when creating file fields after installing store
  • Fixed a bug with total recalculation when editing orders
  • Fixed various small bugs in some payment and download tags

Store 3.0

Released July 3, 2017

  • ExpressionEngine 3 support!
  • PHP7 support!
  • Various bug fixes and optimizations

Store 2.5.1

Released May 13, 2015

  • Added Zenbu support (thanks to: Carl Crawley / Made by Hippo)
  • Added support for a new JSON return format (config.php - store_new_json_response = yes)
  • Added support for input payment[method] (offsite gateways, example: mollie)
  • Added bulk order actions back
  • Added support for output_product_js=”yes” to the ProductTag
  • Change: Prevent order recalc when updating custom fields in orders
  • Fixed an issue with the download tag still using the old order id
  • Fixed an security issue with html in some fields.
  • Fixed an issue with the orders table if you changed the default order status

Store 2.5.0

Released February 20, 2015

  • Redesigned Orders table & Orders Detail page
  • Orders can now be edited via the CP
  • Added {exp:store:purchased} tag
  • Added option to change the order id start number
  • Changed the way order_id’s are generated. Only completed orders are given a order id. Order id’s are sequential per site.
  • Changed the way Stock is handled for same SKU with variations. Stocklevels in cart will count towards SKU not on a per line/item level.
  • Fixed free_shipping conditional in checkout items for EE 2.9
  • Fixed an issue where variables in EE Snippets would not parse in the email templates
  • Fixed a bug where the issuers list for the Mollie payment gateway would throw an error.
  • Fixed a bug where the revenue summary was not being generated on a per site basis

Store 2.4.1

Released September 28, 2014

  • Added support for entry_id=”” on the search tag
  • Added force_recalculate=”yes” to checkout tag
  • Added a temp measure, {discount:code} and {discount:base_discount}
  • Fixed an issue where the transactionId was not set while processing payments
  • Fixed an issue with the orders page not showing all orders by default.
  • Fixed an issue where dashboard metrics would not display correct stats for secondary sites
  • Fixed on_sale conditional in checkout items for EE 2.9

Store 2.4.0

Released August 20, 2014

  • ExpressionEngine 2.9 support
  • Completely new reporting section, with advanced sorting and filtering options
  • Added new Customer Summary report
  • Added new Revenue Summary report
  • Added site-wide “reporting timezone” setting, so that all reports use a consistent timezone
  • Added Coinbase bitcoin payment gateway
  • Added the ability for payment gateways loaded via an extension to default to Authorize Only (as the built in Manual gateway does)
  • Added the ability for payment gateways loaded via an extension to process refunds from the control panel
  • Added the ability to match postcode/ZIP with wildcards in shipping rules
  • Added force_recalculate=”yes” to checkout tag
  • Replaced PDF export functionality with printable versions of reports and order details
  • Fixed display of multiple tax rates in the control panel order details page
  • Fixed product and category dropdowns in the control panel to only display the current site when using MSM
  • Fixed inventory page to only display products from the current site when using MSM
  • Fixed shipping rule price/weight restrictions not including upper bounds
  • Fixed a PHP error when installing Store from within the EE installer
  • Fixed a PHP error on servers where PDO is not enabled
  • Fixed an error when using search:on_sale in the search tag
  • Fixed an error when registering members during checkout if EE secure passwords was enabled
  • Fixed an EE deprecation warning when adding manual payments from the control panel
  • Fixed an EE deprecation warning when submitting the checkout
  • Fixed an error when completing payments using DPS PaymentExpress
  • Fixed shipping address details not being correctly passed to PayPal
  • Fixed line item details not correctly appearing on PayPal emails
  • Fixed an issue that would prevent previous orders from being assigned to newly registered members with the same email

Developers

  • The new reporting section is completely extensible. You can define new report types by subclassing Store\Report\AbstractReport
  • Added store_reports hook to easily define new report types
  • Added store_payment_request_start and store_payment_request_end hooks
  • Added store_shipping_adjuster_start hook
  • Updated to PSR-4 file naming conventions

Store 2.3.1

Released March 17, 2014

  • Improved handling of upload directories with config overrides for the download tag
  • Fixed filtering orders by keyword in EE 2.8
  • Fixed javascript errors in the CP order details page
  • Fixed incorrect dates in report titles with certain PHP configurations
  • Fixed potential error message viewing old orders where the used promo code has been deleted

Store 2.3.0

Released March 12, 2014

Note: Store 2.3 requires ExpressionEngine 2.8+. Please update to the latest version of EE before installing or updating Store.

  • ExpressionEngine 2.8 support
  • DevDemon Updater support
  • Added the ability for custom payment gateways to access raw Order details
  • Added support for new EE caching methods
  • Added German translation (thanks to buerosued for this translation)
  • Added check to prevent empty orders from being submitted
  • Added option to specify custom brand name with PayPal Express Checkout
  • Added store_order_update_status_start and store_order_update_status_end hooks
  • Improved support for transparent redirect payment gateways
  • Improved error messages for eWay Rapid 3.0 payment gateway
  • Fixed rounding of product prices when applying sales
  • Fixed download tag not taking into account config overrides for file upload directories
  • Fixed order payment_method not being updated after a successful transaction
  • Fixed promo_code error message not displaying if automatic discounts also applied to an order
  • Fixed Payflow Pro URL parameter encoding
  • Fixed custom html:tag="value" parameters in payment tag
  • Fixed PHP errors when Store is installed alongside EE in the install wizard
  • Fixed PHP errors when displaying reports with empty orders
  • Fixed missing help subtext for CP sale/discount pages
  • Fixed CP orders page not sorting by order status
  • Fixed full country/state names not displaying on orders report

Store 2.2.0

Released January 18, 2014

Note: Store 2.2 requires ExpressionEngine 2.7+. Please update to the latest version of EE before installing or updating Store.

  • Added billing_company and shipping_company fields to the checkout/order tags
  • Added discount:id, discount:name, discount:start_date, discount:end_date, and discount:free_shipping variables to the checkout tag
  • Added the ability to resubmit or make AJAX requests to the checkout form without generating a fresh XID
  • Added basic support for retrieving product details via Entry API module
  • Added {shipping_method:days} variable to checkout tag for shipping extensions
  • Added check for the PHP cURL extension before installing Store
  • Changed percentage-based sales to affect product price modifiers as well as the base product price
  • Increased maximum length of order postcode and phone columns in the database
  • Updated legacy {order_shipping_inc_tax} and {order_handling_inc_tax} variables to be consistent with {order_shipping_total} and {order_handling_total} variables in the checkout tag
  • Fixed various errors when returning from off-site payment gateways with secure forms enabled
  • Fixed errors caused by using the Back button when generating reports with secure forms enabled
  • Fixed overzealous caching of certain shipping extension HTTP requests causing shipping prices to not update
  • Fixed payment_method="" and return="" parameters on payment tag not creating hidden fields
  • Fixed orderby="order_id" parameter in orders tag not correctly sorting orders
  • Fixed Mollie payment gateway returning success for cancelled payments
  • Fixed a SQL error when generating the orders report with a custom order status
  • Fixed issues rendering Cyrillic and other unicode characters in PDFs
  • Fixed breadcrumbs on order statuses page
  • Fixed a few miscellaneous unlocalized strings
  • Removed unused order_shipping_ex_handling variables in the checkout/order tags since shipping costs no longer include handling in Store 2

Developers

  • Added store_order_taxes extension hook
  • The illuminate/database component has been updated to v4.1

Store 2.1.0

Released December 8, 2013

  • Added support for displaying individual line item details in PayPal Express gateway
  • Added support for html5 attributes in forms via html:name="value" parameters
  • Added support for Google Universal Analytics ecommerce tracking
  • Added search:on_sale="yes" parameter back to search tag
  • Added {item_tax}, {order_shipping_tax}, and {order_handling_tax} variables back to checkout/order tags
  • Added {item_discount} and {order_shipping_discount} variables to checkout/order tags
  • Added {order_shipping_total} and {order_handling_total} variables to checkout/order tags
  • Added {expiry_month_options} and {expiry_year_options} variables to avoid EE rewriting exp_ variable prefix in checkout/payment tags
  • Added {gateway_name:issuer_options} variables for gateways which provide a list of issuers
  • Added separate handling adjustment type to display total handling for all items in order
  • Changed default order address to “None” (was “Shipping Address Same As Billing Address”)
  • Fixed item and shipping taxes not taking into account discounts applied during checkout
  • Fixed {if method_selected} conditional variable inside {shipping_methods} variable pair in checkout tag
  • Fixed unused custom order fields appearing on order details PDF
  • Fixed mapped Zoo Visitor member fields not being loaded for new orders
  • Fixed Sage Pay Server payment gateway not marking orders as complete
  • Fixed sale and discount start/end dates not taking into account current user’s timezone
  • Fixed unable to remove items from the cart when a minimum order quantity was set
  • Fixed Store extension settings not redirecting to module
  • Fixed {product_details:price} variables not working for products with a blank SKU in channel entries tag
  • Fixed unable to change modifiers from single-sku to multi-sku type
  • Fixed {order_handling} variable not being updated in checkout tag
  • Fixed {price_mod_val} variable being displayed with extra decimal places in product tag
  • Fixed {regular_price} and {you_save} variables not taking into account modifiers in checkout tag
  • Fixed PHP errors on new payment CP page when PHP short tags were disabled

Developers

  • Added store_order_adjusters extension hook
  • Added store_order_empty_cart extension hook
  • Added store_payment_gateways extension hook
  • Moved payment-related methods from the orders service to new ee()->store->payments service
  • billing_phone and shipping_phone fields are now passed through to payment gateways
  • New payment gateways can now be added to Store as a separate extension, which makes upgrading Store in future easier. For further details and an example, please see the store_check extension.

Store 2.0.6

Released November 7, 2013

  • Fixed issue in 2.0.5 where order items were not displayed correctly on the order details CP page

Store 2.0.5

Released November 6, 2013

  • Added the ability for discounts with no promo code required to apply to carts with a promo code set
  • Restored {dimension_l}, {dimension_w}, and {dimension_h} variables in product and checkout tags for compatibility with Store 1.x
  • Fixed installation error when running PHP <= 5.3.2
  • Fixed various control panel errors caused by date formatting on Windows servers
  • Fixed base shipping rate being charged when all items in the cart have free shipping
  • Fixed remove_items form fields being ignored if no items field was submitted in checkout form
  • Fixed {you_save} variable in product and checkout tags displaying negative amounts
  • Fixed {if method_selected} conditional not working in checkout tag
  • Fixed display of shipping method name on order details CP page
  • Fixed unable to filter by order status in orders tag
  • Fixed stock levels not correctly updating after purchase for products with no SKU
  • Fixed PayPal Express shipping and note fields being displayed by default

Store 2.0.4

Released October 21, 2013

  • Added store_order_item_add_start and store_order_item_add_end hooks
  • Added dynamic weight and product dimension options to the product details field
  • Added the ability to leave product price field blank if product details field is not required
  • Added {order_you_save} variable to checkout/order tags
  • Added {order_items_total} and {order_adjustments_total} variables to checkout/order tags
  • Added dynamic store_product_stock_level variable for naming consistency with product tag variables
  • Improved error messages from payment gateways
  • Fixed dynamic store_product_in_stock and store_product_out_of_stock variables not working correctly
  • Fixed refunded transactions not affecting order_paid total
  • Fixed PHP error triggered when sales were restricted to a particular member group
  • Fixed customer email address not being passed through to payment gateways
  • Fixed an error with Stripe gateway where card token was not submitted correctly
  • Fixed {sku} tag not working in product tag for single-SKU products
  • Fixed ability to edit time manually in datetime fields in the control panel
  • Fixed product options named 0 being treated as empty
  • Fixed orders from multiple sites appearing in the control panel orders list

Store 2.0.3

Released October 1, 2013

  • Added {item:count} and {item:total_results} variables to the checkout and orders tags
  • Added {if track_stock} variable to the product tag
  • Fixed dynamic css price variable not taking into account sale price
  • Fixed dynamic css sku and stock level variables not updating when modifier inputs were changed
  • Fixed missing language strings on MSM site install page
  • Fixed issues with publish page layout in Firefox
  • Fixed orders not being associated with member accounts when registering during checkout
  • Fixed PHP warnings displaying in the control panel when using old versions of PHP
  • Fixed SQL errors when the server was configured to use European number formatting
  • Fixed shipping rule order not being taken into account when calculating shipping costs
  • Fixed sales not being applied if both a start date and end date was set
  • Fixed empty_cart="yes" parameter in the product tag not working

Store 2.0.2

Released September 24, 2013

  • Added {if no_modifiers} conditional variable back to the product tag
  • Added {qty_in_cart} variable back to the product tag
  • Added disable_javascript="yes" parameter back to the checkout tag
  • Added shorthand require="first_name|last_name" parameters to the checkout tag
  • Increased the maximum size of order custom fields (now using SQL TEXT type)
  • Fixed missing language strings on delete orders page
  • Fixed missing language strings in checkout error messages
  • Fixed unable to sort products by price on inventory page
  • Fixed a PHP error when trying to update the manual payment gateway settings
  • Fixed an error when sorting/filtering products by price in the search tag
  • Fixed incorrect calculation of tax-inclusive tax amounts
  • Fixed sort order not being taken into account when applying discounts and sales to carts
  • Fixed discounts not beinging restricted by their total and per user usage limits
  • Fixed mapped member fields not being loaded for new carts
  • Fixed unable to update email template “to” address
  • Fixed unable to update SKU for existing stock items
  • Fixed a few minor CP display issues

Store 2.0.1

Released September 16, 2013

  • Added community translations to download
  • Fixed exp_store_cache table not being deleted on uninstall
  • Fixed price formatting and missing item modifiers on order details CP page
  • Fixed incorrect link to order PDF on order details CP page
  • Fixed unused custom fields appearing on the order details CP page
  • Fixed a potential PHP error when trying to create payment gateways with no settings
  • Fixed a PHP error when trying to authorize payments without immediate capture
  • Fixed a PHP error when trying to view orders/sales reports
  • Fixed item modifiers not always displaying on products report
  • Changed tax rate settings to accept a percentage instead of a decimal
  • Hid exact error message when a communication error occurs with a payment gateway

Store 2.0.0

Released September 9, 2013

Store 2 is a major update. If you are updating from a previous version of Store, please make sure to also read the Store 2.0 Upgrade Notes.

Major Changes

  • PHP 5.3 and ExpressionEngine 2.6 are now minimum requirements for Store.
  • Complete rewrite of code base, in order to be more stable and easier to extend. Most third-party extensions and SQL queries will not automatically support Store 2 and will need to be revised. Front end templates should remain compatible.
  • Rewrote payment library to be more flexible and powerful. Payment processing is now powered by Omnipay.
  • Refactored add to cart and checkout forms to post to the same action, so that developers are able to update the cart and add items at the same time (for example, when up-selling extra items during checkout).
  • Rewrote shipping plugin system. Shipping plugins are now separate from the Store core, and use the standard ExpressionEngine extension mechanism.

New Features

  • Added the ability for shipping plugins to return multiple rates (for example, only return rates which are applicable to the current destination).
  • Added support for separate first_name and last_name variables. name is still available to access the customer’s full name if desired, and both methods will continue to be supported.
  • Added the ability to have multiple email templates linked to a single order status.
  • Added the ability to specify a custom “to” address for email templates (for example, to send a different email to the administrator when an order is placed).
  • Added the ability for prices to be entered as tax-inclusive in the control panel.
  • Added the ability to have more than one tax per order, and to specify taxes which apply to specific product categories. Removed the “tax-exempt” product option in favor of the new category-based taxes.
  • Added new Sale functionality which can specify pricing for specific products or entire categories. Sales are applied globally and are displayed on the product page. Removed old sale start/end dates from the publish page in favor of the new global sales.
  • Renamed Promo Codes to Discounts. Discounts are applied at checkout and can optionally require the customer to enter a promotional code.
  • Added support for restricting discounts to specific product categories.
  • Added support for quantity based discounts (buy X get 10% discount).
  • Added support for buy X get Y free discounts.
  • Added support for limiting discounts to products not already on sale.
  • Added the ability to enable “custom prices” on a per-channel basis. This allows you to use a user-submitted price in the add to cart form (for example with donations).
  • Added order “adjustments” which track discounts, shipping, and taxes applied to orders during checkout.

Miscellaneous

  • Improved security using the ExpressionEngine encryption class
  • Renamed address3 variables to city, and region variables to state. The old variables will continue to work, but their use is deprecated.
  • Deprecated all inc_tax variables in favor of the new tax-inclusive pricing options.
  • Rewrote publish page to generate the stock matrix client-side, which will improve the speed and stability of the publish page.

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 Authorize.net 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