Our client Paul has a popcorn truck selling the products in Brooklyn, New York. Paul’s popcorn truck offers varied popcorn flavors and types allowing buyers to customize their order. With many New Yorkers favoring brooklynpopcorn, the business owner decided to grow the company and extend the operations online creating a bricks-and-clicks presence. Paul has featured his products in Google and Amazon feeds.


The popcorn online store has 3 buying option that are divided in another 3 categories allowing client order popcorn choosing among flavors, container sizes or tailor their tin applying configuration.



We have set up both the tins (containers) and popcorn flavors simple product types. However, a flavor is a product when container is its option. It works the other way round, too with container being a product and a flavor is a choice.
In this way, we have a set up a scenario with variables allowing products becoming options, and vice versa. The challenge was to turn a product into a custom option depending on the workflow chosen which is either a shopping by flavor or tin. Another challenge that we have tackled was to come up with the right pricing formula. For this reason we have designed a particular grid in flavor product settings and specified the prices with regard to both the fill type and tin chosen. The fill type is a custom attribute for all the containers and is used solely in a custom container configurator that uses the custom price building mentioned in flavor settings and calculates the price in accordance with parameters buyer picks.


Popcorn lovers can create their own product by selecting a tin size, a particular filling that can be chosen from a number of different flavors. The latter will vary depending on the tin size. For instance, the variety of flavors depends on the tin size e.g. a customer cannot fill a gallon container with 3 different flavors. Using JavaScript, we have created a “Change” button in the order summary on checkout to alter the parameters easily.


Shopping cart is customized to capture shopper’s details. If a buyers provides personal data, the details will be filled in automatically during the checkout. Furthermore, these information is used to store the info about abandoned carts in case the customer has not completed the purchase and simply left the website. Because of the particular set up we have come up with, the contents of the cart is captured and stored.


Checkout at brooklynpopcorn uses a one step checkout layout offering a seamless checkout experience for buyers. The system offers several payment gateways to choose from such as Authorize.net and PayPal Express. While CIM enables the system to save credit card data it does it in a safe and secure way using Authorize.net servers (not Magento ones).


When Paul contacted us and asked to bring the idea of business expansion online to life, he still wanted the customers to buy popcorn from his truck at the same time. To help the business to locate it, the vehicle was equipped with a GPS vehicle-tracking system that sends the coordinates of the truck to GeoTab system and retrieves the location of the truck, and using their API we showing it on the map.


After our designer crafted all of the graphics for the most popular screen resolutions, we implemented a smooth responsive effect to ensure that all website visitors have no problems navigating on the web store. We kept it simple: the website menu options collapse where needed to present the most relevant info.

Going further, we added secondary features that showcase product feedback with Comment option, recent tweets, homepage banner scheduling, product feeds to Google and Amazon as well as extended FAQ section.



On top of that, performance optimization was done at the end of the project and included both onsite and server-side optimization: we have got a significant decrease in page load time.

Case study: popcorn Magento store


Key features:product customizer, responsive design, one step checkout, banner management