Free shipping by number of items, not monetary value, in Bigcommerce - templates

I've been asked by a client to look into the possibility of allowing free shipping for orders of more than three items. Essentially this means allowing for a (shipping) pricing structure based on item count rather than total value.
(For a TL;DR, you could probably stop with that problem statement, but I'll provide some solution investigation context below. Maybe I've missed something.)
The admin UI only allows for setting free shipping based on monetary value. Similarly, the "Ship by" category of price options adds the ability to use weight in calculations, but alas not item count.
There seems to be no way to influence the shipping cost through the API. A %%GLOBAL_ShippingPrice%% variable is available to templates and, as I understand things, is calculated only using those admin-configured shipping configuration options described above. The Shipping API only seems to deal with shipping methods (physical not API methods!), and unfortunately the Orders API seems to offer nothing related to shipping costs either. Hmm.
I've looked into hacking the template files, but cannot find any support for custom expressions using the variables available.
We've asked Bigcommerce support, submitted an "idea", and obviously searched the interwebs and poked around the developer documentation. I'm so new, I only heard about Bigcommerce yesterday.
Any suggestions will be greatly appreciated.
Note: First draft of this question included an inline screenshot and lots of relevant hyperlinks. Seems important for a quality question. Apparently I need more karma to insert most of that. I'll edit this question later, if possible and I ever get there, to include those helpful features.

Since Bigcommerce is not an open source platform, you cannot adjust things like shipping services and their actual functionality.
The only workaround I can think of would be to set every product to the same weight(1lb, for example) then set up shipping by weight which says cart >= 3lbs ships free. This will present a problem if you are using real time quotes from providers such as FedEx, USPS, or UPS though.
In the future I would suggest looking at their community forum(forum.bigcommerce.com) for questions such as this, since it does not actually pertain do the development of their API or templating system.
Best of luck!

This is possible if you use ShipperHQ. Here are the steps to configure it:
In ShipperHQ, ensure you have your UPS Carrier set with UPS Ground as
an available shipping method.
Click on Filters on the navbar and add
a new filter.
On your new filter, select “Whole Cart” under Filter
Applies To in the Edit Filter panel and enter a Name you’ll recognize
(e.g. “Over 3 items”).
In the Standard Filters panel, select “Range”
for the Quantity filter, enter a Min value of 3 and check the No Max
checkbox and Save.
You now have a filter set up which will match
against an order total with more than 3 items.
Click on Carrier
Rules on the navbar and add a new Rule.
Enter a descriptive Name
(e.g. “Free UPS Ground over 3 items”) under the Overview panel and
select UPS Ground in the Live Shipping Methods Assigned field under
the Applicable Shipping Methods panel.
In the Conditions panel,
select the Filter you just set up under Weight/Price/Quantity Filters
In the Actions panel and the Rule Action section, choose
“Set/Surcharge Shipping Methods” from the Action to Perform
drop-down, “Set Rates” from the Adapt Shipping Rates drop-down, and
“Per Cart” in the Apply Shipping Rate/Percentage drop-down.
In the
Set/Modify Shipping Rate section of the Actions panel, enter 0 in the
Shipping Rate field.
Save your rule.
ShipperHQ will now set UPS Ground to Free if the order has over 3 items.
Source: http://docs.shipperhq.com/how-to-set-up-free-shipping-for-orders-with-more-than-x-amount-of-items/

Related

Magento communicating with another system

I'm building a magento (1.9CE) store which needs to interface with another system and I could use some guidance.
Although not particularly relevant, I'm communicating with the 'other' system using web services (it's on another server) but what I need help with is finding the places where I need to put in code to do what I want.
There are three major functions that I need to implement:-
When a user clicks on the product detail page I need to make a call to check the stock levels on the other system, update the magento stock levels and THEN display the product detail page.
When a sale is completed, I need to send details of that sale to the other system.
When a new product is added I need to communicate with the other system. This may be a bit more complex because there are a few checks I need to do during the 'add product' process, for example, check the SKU is valid, that tghe product doesn't already exists, etc. I think until I start coding this I shan't realise the full extent of this functionality!
Any guidance gratefully received!
Even though this might (and probably will) dramatically slow down your store, if you want real-time information, I guess the easiest way would be with observers.
You can use catalog_controller_product_init_before: This will trigger when the product detail page is starting loading, so you should be able to upload the stock at this point, before the page has finished loading, so that if there is no stock it will not be buyable, which I guess that's what you want.
You can use sales_order_place_after: This will be triggered after a new order has been placed and saved in the database.
You can use catalog_product_new_action or catalog_product_save_after: Depending on how you create your products the first one might not be triggered. The second one will always be triggered once a product (new or existing) has been saved, so at this point you will need to check if the product is new or existing, and do your stuff depending on that.
For an example of how to create an extension and usage of observer events, check this out.
I hope it helps!

Listing multiple Redmine issues by Id

I am working on some custom Redmine reports. In the generated report, there are numbers that represent things like "number of issues moved to Development during Q3 2013". The report generator knows the issue id of every issue that matches that criteria.
Is there a way to construct a Redmine URL that shows a list of all issues given a list of issue ids? For example, something like (this doesn't actually work):
http://redmine/projects/example/issues?ids=1234,1239,1245
This is similar to existing feature requests such as http://www.redmine.org/issues/10828 but I'm looking for the user-facing HTML version, not an API function. The idea is to allow the user viewing the report to click on the number and to see the corresponding list of issues.
The solution I ended up with was to include the list of issues in a <div> for each number in the report that the user could click on. Then, when the user clicks on a number, the corresponding <div> is displayed using a jQuery UI dialog.
This is not the same as using the Redmine issue list screen to show the issues. However, for this purpose it works well enough.
No, this is not implemented. But for me it should never be necessary in the Gui.
My Solution would be : Build the adequate query. Eventually this will need the addition of a field in Redmine and backporting the information from your tool to Redmine. Generally the need for this feature shows your bug tracker lacks some information that he should track.

ContextualHelp on Infragistics XamFormulaEditor for custom variables

I am using DataGrid for displaying table. One of the columns in Datagrid consists of XamFormulaEditor. Also, there are some custom variables that are assigned to XamCalculationManager's Named references so that they are visible to user when he types formula in XamFormulaEditor. I have couple of problems with ContextualHelp:
For Eg. if the custom variable name is "a", then in ContextualHelp list it looks like [//a]. Isnt't there any settings to make it look like [a] ?
Is there any way to filter the contextual help to not display standard functions and only display variables that we want ?
After looking into this and doing some research, ContextualHelp on Infragistics XamFormulaEditor for custom variables has been determined to be a new product idea. You can suggest new product ideas for future versions (or vote for existing ones) at Infragistics new site for features:
http://ideas.infragistics.com.
There are many benefits to submitting an product idea:
- Direct communication with our product management team regarding your product idea.
- Notifications whenever new information regarding your idea becomes available.
- Ability to vote on your favorite product ideas to let us know which ones are the most important to you. You will have ten votes for this and can change which ideas you are voting for at any time.
- Allow you to shape the future of our products by requesting new controls and products altogether.
- You and other developers can discuss existing product ideas with members of our Product Management team.
Steps to create your idea:
Log into the Infragistics Product Idea site at http://ideas.infragistics.com (creating a new login if needed).
Navigate to the product / platform channel of your choice (e.g. WPF, Windows Forms, ASP.NET, HTML5 / Ignite UI, iOS / NucliOS, etc.)
Add your product idea and be sure to be specific and provide as much detail as possible. Explain the context in which a feature would be used, why it is needed, why it can’t be accomplished today, and who would benefit from it. You can even add screenshots to build a stronger case. Remember that for your suggestion to be successful, you need other members of the community to vote for it. Be convincing!
The Product Idea site puts you in the driver’s seat and allows you to track the progress of your ideas at any time, see how many votes it got, read comments from other developers in the community, and see if someone from the product team has additional questions for you.

How to accept user input with Sitecore DMS report/filter?

With the Sitecore OMS, it was possible to create custom report filters that used the Sitecore rules engine to accept user input. This was useful for filtering by ItemId, URL, IP Address, etc. Here is an example of a custom filter for the OMS.
How does one go about accepting user input with the Sitecore DMS? It appears that the old filter methodology has been scrapped in lieu of "Predefined Filters", which are hard-coded values that get injected into the SQL Statement's WHERE clause.
You are aware that every item in Sitecore has the Analyze tab in which there is a "Reports" option where the user can see reports specific to the item? I realize that these are really "canned" reports, but it's not too difficult to create new ones or adapt the existing ones to give you what you want to see. If the reports aren't specific enough, you can always create your own reports and then just simply drop them into the item reports folder here: /sitecore/system/Settings/Analytics/Reports/Item Reports/. Also, keep in mind that all the SQL queries are located in items here: /sitecore/system/Settings/Analytics/Reports SQL Queries and it's not difficult to add a parameter (i.e. the date parameter for example).
I know that it has a bit of a learning curve, but creating your own queries and reports capable of taking some user input isn't out of the question. Please let me know if you have something specific or if you need further help. I've spent a good amount of time doing custom reports and I'd be happy to answer any questions.

changing locations in django satchmo

I am using Satchmo(skeleton project that comes in the projects folder when you download Satchmo) but am not in the US. I see that by default there is a Zipcode/Postcode* and list of states on the checkout page.
My question is, is the best way to change this(location details, billing information) to edit the /satchmo/apps/satchmo_store/shop/models.py file (hard edit the Order model)
or is there a better way to maybe set your location to a place other than the USA?
The reason I'm asking is because I'm not sure what implication a change like this might have throughout the skeleton project if I just deleted the zip code column.
Thanks.
go to /admin/l10n/country/ and mark the appropriate countries as active
go to /admin/shop/config/, select the site (probably localhost) and set the default shipping country and possible shipping countries
if you want to control whether the state and ZIP are requred or not, go to /settings/ , select "Satchmo Shop Settings" and modify "Required billing data", "Required shipping data" and "State required?" settings.