Posted on

Changelog – November 14th, 2021


Gift Cards

This is an inherently tricky feature because of restrictions around delivery days, regions, logged in or not, payment, and recipient notifications. I have added additional confusion because of differing features and processes between the core Gift Card plugin, what was already built last year, what was added this year, and what we’ve built for other systems. So this is to clear all that up, especially going into the holiday season.

  • Gift cards can be purchased by both new and existing customers.
  • New customers do not have to be in the delivery area. Address lookup and region validation will be skipped, and a normal checkout will proceed.
  • Existing customers will not go through the checkout. They will “Add Items to Order” as usual.
  • When a gift card is “Added to Cart”, the page will reload and any more gift cards can be added with their own parameters. They parameters are per-gift-card, not per-checkout.
  • When the order is submitted, any gift card product(s) will be separated from other produce items (if any), and put on their own dedicated order. This is for two reasons: 1) Gift cards don’t need to wait for their address delivery day to be generated, and 2) the amount of the gift card needs to go on the purchaser’s balance right away.
  • Many gift cards can be on one order and checkout process. The send date is functional, and each card can have its own send date (I previously said it was not), and individual recipients in the same order. Even though the order will be processed right away and the amount of the order put on their balance, the recipient will not be notified until the “Send Date” that was selected for each card.
  • Any other non-gift card products on that order will be processed as usual.
  • The amount of the gift cards will be put on their balance immediately, but the payment transactions will be processed on their usual schedule.
  • Existing customers can redeem their gift cards in their My Account -> Gift Card tab.
  • New Customers can redeem their gift cards on the checkout page.


Customer Product Search

Adding Products from the Customer My Account has been rebuilt to accommodate new needs and to fix a couple glitches. The default search functionality matched text in all the fields of a product: Description, Title, Attributes, Short Description. This created issues such as a search for “Family” on Box of Good would surface Beef Shares, Chicken, and Coffee, or a search for “Spread” would return all the bagels, because that search term was in the Description.

  • This new Search has been completely rebuilt to remove the WordPress search and provide our own filtering, based on title alone.
  • The result of the search now also notifies the user when there are no matches for the search term. Previously, it just did…..nothing.
  • It is also possible to add category-level or attribute-level search.


IdeaRoom: Signature Documents

We have reconfigured the signature process to accommodate new requirements. Previously, the signature was embedded into the page which needed it, as a popup window. This worked well when it was one signature on one page for one building type. As the options have expanded, we have multiple signatures on each order for specific statuses and differ between building types. Rather than manage how each of those appear now or could appear later with each client, and port the signature code around each time, we have changed the model from many signatures on many pages with many types of buildings, to just one signature page for each type. This is better long-term for us to maintain, improves mobile-viewing, allows customization between clients and better integration with their theme, and improves the process of getting content into a unified PDF.

  • Structuring the signature in this way also allows us to collect signatures both by logged in users and those not logged in. An email or text can be sent to a customer with a link to collect the signature. A customer doesn’t have to be logged in for their signature to be collected and tied to that order.
  • To-Do: Display the Order Details between the policy language being signed, and the actual signature
  • To-Do: Save Policy Messaging, Order Details, and Signature as one PDF.
  • If a delivery requires a Proof of Delivery (from the mobile camera, or uploaded via desktop), the preview will be shown before being uploaded.


Delivery Portal Link Without Workwave

The Admin Customer Orders tab has a link to the delivery portal when a stop number has been assigned. However, when Workwave is not present, no stop number is assigned, thus making it difficult to get to the Portal. This is particularly hard during demos with sheds and carports, when vehicles are not auto-assigned.

This fix provides a quick link to the vehicle portal on the delivery day for any order that has a vehicle assigned to it.

  • If a site has “Auto-assign” vehicles enabled, the button will appear as soon as the order is created.
  • Otherwise, the vehicle must first be assigned either through Fulfillment -> Assign Vehicles or manually via the Edit Order screen.


Order Processing Date Range

The Order Processing previously only allowed movement across time in one-day increments. This was particularly problematic for non-weekly delivery customers like malts or sheds, where the order they are fulfilling determines the day or range they are working on, rather than the day determining which orders to work on. Delivery customers are constrained to a more predictable operation that always works on “tomorrow”.

This provides a calendar to traverse the month and jump around to any date, past present or future.



Activity Tab Improvements

The admin Customer Activity Tab is a raw dump of almost any activity that occurs on a customer’s account. The tricky part is that data spans across a lot of objects, events, and assets with changing properties. This meant that a lot of the data being shown wasn’t very human-friendly, and either large numbers or empty fields. This update adds context to most of the results that will show up in Activity, particularly around products and addresses. The address titles are the First Name and Last Name to know which address was edited, and an edit to a product shows the title alongside which data was changed (price, date, discount, etc.).



Reports: Vendor Sales

Sheds clients use “Vendors” as their warehouse to differentiate which shed was sold from which location. Box of Good uses it for produce vendors, and any site can use it to track product data.



Reports: Affiliate Sales

Affiliate sales are used by a few sites. Commission amounts are set as a percentage on each Affiliate.

  • Lakeside for tracking student sales (in addition to having their own customer reports)
  • Tampa for tracking sales between their sales people
  • Box of Good for the PTO/PTA sales


Fulfillment: Multiple Category Search Filter

The Fulfillment filter for Product Category previously supported only one search term at a time. This updates the filter to allow as many categories as necessary.

  • Handy for reporting on sites like Lakeside with donations vs. flowers, or both.
  • Also makes it convenient for placing orders for products that span many categories but come from the same vendor (i.e. UNFI).
  • Separating buildings (sheds, carports, gazebos) from parts (doors, hinges, ramps), but grouping more than one building type or part type in the same report.