Below is a list of additional features I’ve previously added to Cactushop on request of clients - hope you find these suggestions useful for Kartris.
Unfinished Orders & Basket Reload
Automatically scan the unfinished orders every 15 mins and send an email to the relevant customer providing information on common problems experienced during checkout (name on card, timeout etc) and offer phone number to call to resolve any issue they may have encountered. Items/quantities on the original order are saved at the time of their original checkout (i.e. Order Status saved in new column) so that basket can be reloaded by customer clicking on a hyperlink provided in the email.
This functionality DOES improve conversion rates for those customers you would otherwise lose.
As the original order details (items/qty/options etc) are stored, then also provide a “reload/re-order” link for the customer when they login – which makes repeat orders easier.
Unfinished orders scan job can be scheduled via Windows Task Scheduler.
Provide a backend admin page to list customers (with a hyperlink to full customer details) who are not associated with ANY order (either didn’t make any order or order has been deleted). List is provided in C_ID order ASC so that older customer details appear first. Cactushop doesn’t store a customer creation date and it looks like Kartris doesn’t either – storing this date can be useful, especially when you need to purge customers to comply with Data Protection Act retention principles.
Additional Order Statuses
Provide additional order statuses:-
Part Order (not visible to customer)
Order Processed/At Warehouse (not visible to customer)
Order Part Refunded (visible to customer)
Cancelled and refunded in full (visible to customer)
Customer Review (not visible to customer - see below)
Provide a facility to send (on demand via order status tickbox) an email to a customer for a specific order asking for feedback – i.e.a product review of each item purchased along with an overall review of the buying/shop experience. Email contains hyperlink to a review form on shop website and the details submitted are stored in database. The normal review procedures apply, i.e. Authorisation, Live, and Disabled.
Individual approved product reviews are listed on a separate dedicated page on the front of the site (as well as the product page itself)and also overall/general shop approved reviews are also available on a single frontend page.
Provide the ability to add a logo for each supplier and display this logo on the product page automatically.
Inactive Product list/deletion
Provide a backend admin page to list all inactive products with associated tickbox, to allow for bulk deletion of product (and versions).
Orphaned Products/Incomplete Product List
Provide a backend admin page to list all products which are either not assigned to a category and/or do not have a version defined. Hyperlink against each product takes you to the modify product page.
Allow a product version to be defined as a “Sample” which creates a separate “Order Sample” button on the front end product page - to allow for the quick/easy and obvious selection by a shop visitor.
Also, provide a facility to create mass sample version inserts for a selected category of products – useful for initial loading against existing products. A default price (e.g. £2) and the live flag (y/n) is specified by admin user at creation – version code is generated as “Sample”+productid. Sample versions are NOT displayed with the other versions - the presence of the sample version only triggers the publication of the button.
The ability to purchase (add to basket) directly from the shortened multi-column display within a category.
Remove or encode all special characters from search engine friendly URLs and remove consecutive hyphens.
Provide the ability to create a basic refund in the backend from an order. A refund can be for all or selected items/order lines on the original order. The Refund uses a different but similar template to the Invoice and is also available to the customer when they login. Due to possibly complex unit price/tax calculations, only the Total Tax and Total Refund Amount is shown on the refund, both these values are manually calculated and entered by the shop owner/administer. Once created, a refund can be amended.
Orders can also be listed based on the status “refunded”(see above new status suggestions).
Allow the definition of “attribute categories” that can be assigned to product categories. i.e. you can only allocate specific attributes to specific categories. This is important because the attributes are also used as search filters on the front end dependent on which category is being viewed.
Allow attributes to be defined at the version and/or product level (for attributes available in that product category).
As mentioned, provide a search filter on the front end that can be applied on these attribute values (user selected) for that specific category.
In the backend – when allocating related products, allow them to be search for based on specific attribute values (relevant for the current product category).
From reading the Kartris Powerpack information, this sounds similar, however the full search results are filtered based on attribute selection not simply that suggestions are made from a drop-down. Not sure this would help much when you have hundreds of products in a category and quite a few may match the selection criteria.
Purge/Delete Old Orders& Customers (Important due to Legal data Retention rules)
Provide a facility to purge/delete old orders based on a selected month/year.
i.e. Orders older than the date selected are deleted,following on from that then any customers with no attached orders are then also deleted.
Summarise the product hits and sales statistics on a monthly basis to a new table that is NOT purged. This reduces the physical size of the base data tables while still retaining the important information.
Allow for export and import (CSV, pipe-delimited format)product/version details in selected (tick-box controlled) categories, so that price updates can be made and reloaded. This is where a bulk mark-up is not possible as there is no fixed price increase. Different suppliers can/do provide price changes at different times.
Allow for export and import (CSV,pipe-delimited format) of product and allocated attributes, to allow for a quicker method of allocating/changing attributes. Again,driven by selected(tick-box controlled) categories.
Allow for export and import (CSV,pipe-delimited format) of product and version details (product name,version name, version code number,live flag) so that small bulk changes can be made easily and applied quickly. Again, driven by selected (tick-box controlled)categories.
Allow for export and import (CSV,pipe-delimited format) of product description details (product name,& product description) so that small bulk changes can be made easily and applied quickly. Again, driven by selected (tick-box controlled)categories.
PS. I’ve found OpenOffice Calc to be better at handling export/import data files than Excel
Version Code Number
Increase the size of this database column V_CodeNumber – it has to be unique and 25 characters is not enough to store some supplier codenumbers - suggest varchar(85).
You might think some of these features are not worth the bother, however when you are managing shops containing 10k+ products and 100k+versions, anything to speed up maintenance is a god-send.
Hope these are useful - I just wish my VB/.Net skills were better so I could help out.