BAKKBONE Florist Companion


Provides a suite of features designed specifically for floristry websites, with the ability to customise to suit your country/region:

Petals Network Integration

  • Receive your Petals Network orders through your WooCommerce dashboard
  • Send Petals orders from your website dashboard
  • Accept/reject orders directly from WooCommerce without needing to log into the Petals Exchange
  • Send and receive messages to/from Petals about an order

Why? You can view/print your orders all in one place, and in one consistent format!


  • PDF Invoices attached to customer-facing emails and in their online account
  • PDF Worksheets, printable in an easy-to-use format for your workroom, attached to order notification emails
  • Access invoices and worksheets from your orders list or the order’s individual page
  • Customise store details display on invoices and optionally add a message at the bottom

Checkout Fields

  • Force display of delivery address fields and gets rid of the “Ship to a different address?” question at checkout
  • Add “Delivery Notes” field for notes about delivery address
  • Add “Recipient Phone” field as a required field
  • Delivery address not requested at checkout if order method is pickup
  • Add “Card Message” as a required field, and limit the maximum length of a message

Delivery Dates

  • Collect delivery/collection date at checkout
  • Set which weekdays you deliver
  • Set your same-day delivery cutoff globally
  • Set separate same-day cutoffs for specific delivery methods (ie. delivery areas)
  • Manage closure days (eg. public holidays) and fully booked dates in your dashboard
  • Optionally set timeslots (eg. 9am-12pm) for customers to choose from per delivery method and per day, and optionally set a fee for a timeslot
  • Restrict delivery methods per weekday
  • Block specific delivery dates per product category (eg. certain ranges not available at Valentine’s Day, etc.)
  • Optionally set an additional fee per weekday
  • Optionally set an additional fee for specific dates
  • View all orders on a calendar, and export order list as a CSV or PDF

Order Status

  • Change default display on admin orders list to “active” orders (not yet delivered, not rejected/cancelled/refunded)
  • Add “Scheduled” status and optional notification email to customer
  • Add “Prepared” status and optional notification email to customer
  • Add “Out for Delivery” status and optional notification email to customer
  • Add “Ready for Collection” status and optional notification email to customer
  • Add “Relayed” status for orders forwarded through a relay network or sent to another florist
  • Rename “Processing” to “Received”
  • Rename “Completed” to “Delivered”
  • Rename “Failed” to “Payment Unsuccessful”

Plugin Compatibility

  • Creates input masks for the Gravity Forms “Telephone” field for Australian phone number formats (affiliate link)
  • Re-words the descriptions of fields on WooCommerce Address Book features


  • Rename fields on frontend to match local address standards (eg. “Suburb” instead of “City”, “Postcode” instead of “Zip”)
  • Option to change heading on Cart Cross-sells section
  • Option to change the text displayed when no valid delivery method is available based on recipient address


  • Optional feature to play a sound when new orders arrive
  • Rename “shipping” to “delivery”
  • Automatically assign guest orders placed by registered customer to the matching user (so it appears in their order history when logged in)
  • Option to display product “short description” in archive listings
  • Option to disable the “Order Comments” freetext field at checkout


  • Delivery Date Datepicker at checkout
  • Checkout fields
  • Florist Options page
  • Weekdays page
  • PDF Settings page
  • PDF Settings page
  • Delivery Date Settings page
  • Delivery Date Settings page
  • Delivery Date Blocks page
  • Product Category Blocks page
  • Delivery Timeslots Settings page
  • Petals Network Integration Settings Page
  • Delivery Suburbs Settings page
  • Order Notifier Toggle


Automatic installation

  1. Search for “BAKKBONE” in the Plugin Repository from the Plugins > Add New screen

Manual installation

  1. Unzip the plugin archive on your computer
  2. Upload bakkbone-florist-companion directory to your /wp-content/plugins/ directory
  3. Activate the plugin through the Plugins menu in WordPress


What plugins do I need?



Not required but we recommend for optimal workflow:

How do I use the Petals Network integration?

  1. Enable the integration via the Florist Options screen
  2. Enter your Petals member number and Exchange password on the Petals Network screen
  3. Select a category for the product that will be used for Petals orders and click ‘Save Changes’, before clicking the link below the product selection box to automatically create a product.
  4. Provide the link listed on the Petals Network page to the Petals eFlorist Team, requesting to opt in to XML orders alongside the Exchange to the link provided.

Please note that the integration is not functional until Petals advises they have processed your request.

Why isn’t there a phone format for my country for Gravity Forms?

We’re happy to include your country in the next release – please add your request in the support forum!

What about XYZ feature?

If there’s a feature missing, please let us know in the support forum here on the WordPress Plugin Repository – we’d love to hear your feedback and know what you want to see added next!

How do I get support?

If the plugin isn’t functioning as it should or you’d like to suggest a feature, please use the support forum here on the WordPress Plugin Repository. If you require assistance setting up the plugin and/or your website, please contact us via our website.


There are no reviews for this plugin.

Contributors & Developers

“BAKKBONE Florist Companion” is open source software. The following people have contributed to this plugin.


“BAKKBONE Florist Companion” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “BAKKBONE Florist Companion” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • DEV: WP 6.2 tested
  • DEV: Re-squash timeslot checkout validation bug


  • ADD: Admin dashboard widget with most recent orders
  • ADD: Admin dashboard widget with plugin news/updates
  • DEV: Add payment_complete() to outbound Petals order processing
  • DEV: Fix consistency of order statuses for “Active” filter
  • DEV: Fix display of order notes on inbound Petals orders
  • DEV: Optimise admin order list for inbound Petals orders
  • TWEAK: Move some functions to a callable class (BakkboneFloristCompanion) to allow sharing – get_rss_feed($url), full_count(), all_count()


  • ADD: Admin dashboard widget with today’s deliveries
  • ADD: Move “all” order filter to end of list, and make “active” the default filter on orders list.
  • TWEAK: Hide completed/cancelled/refunded/failed/rejected orders from orders list by default
  • TWEAK: Update order count in admin menu to include “New (Petals)” status
  • DEV: De-clutter Petals message emails
  • DEV: Add “petals_order_number” placeholder in some emails
  • DEV: Hide Petals order notes from feed in admin dashboard widget


  • ADD: Order Notifier feature
  • DEV: Fix font consistency
  • DEV: Change required capability for settings pages from manage_options to manage_woocommerce
  • DEV: Localisation inside inline js
  • TWEAK: Display “Delivered” action in Actions column for wc-collect status
  • TWEAK: Rename columns on order list


  • ADD: Petals inbound orders
  • DEV: Fix timeslot validation at checkout
  • DEV: Fix undefined nonce indexes
  • DEV: Fix post URL for Petals messaging


  • DEV: Fix card message label in emails


  • DEV: Patch localisation at checkout


  • ADD: Options page for localisation
  • TWEAK: Massive localisation overhaul
  • TWEAK: Move CS Heading and No-Ship to Localisation settings
  • TWEAK: Universal localisation of “Download” for PDFs
  • TWEAK: Change default pre-ordering period to 8 weeks


  • DEV: Squash bug in timeslot field at checkout


  • DEV: Fix time display on Method-Specific Timeslots page
  • DEV: Fix time display on Timeslots page


  • DEV: Fix delivery date field showing for virtual orders


  • TWEAK: Fix CSS for “Order Type” field
  • DEV: Fix POST URL for Petals decision
  • DEV: Amend date() to wp_date() to resolve timezone issue


  • ADD: “Order Type” field at top of checkout if a pickup method is available
  • TWEAK: Move pickup features to own file for clarity
  • TWEAK: Remove date_default_timezone_set()
  • TWEAK: Improve wording of shipping field validation
  • DEV: Upgrade minimum PHP to 7.4
  • DEV: Fix variable names in base file
  • DEV: Fix validation of shipping fields at checkout
  • DEV: Fix translation of shipping to delivery
  • DEV: Improve localisation throughout
  • DEV: Remove unnecessary comment clutter in code
  • DEV: Condense CS Heading code
  • DEV: Fix php error presenting when delivery weekday validated
  • DEV: Identify some JS scripts


  • DEV: Fix reported issue with delivery address fields at checkout (as relating to changing to/from local pickup methods)
  • DEV: Fix typo in Petals new order email
  • DEV: Fix divs on timeslot page


  • DEV: Squash bug where same-day delivery cutoff was reflecting as passed on checkout regardless of time


  • DEV: Fix hooks in filter.php
  • DEV: Further fixes to timeslot metabox save fix from v2.3.2


  • ADD: Filter orders by delivery date
  • DEV: Fix timeslot metabox save function
  • DEV: Fix delivery date validation at checkout


  • DEV: Fix display of timeslots page
  • DEV: Fix fees options in menu


  • ADD: Custom same-day delivery cutoffs per delivery method
  • DEV: Remove unnecessary comment clutter
  • DEV: Fix function names in catblocks.php


  • TWEAK: Add help tabs to all BKF pages and documentation link to plugin list
  • DEV: Fix reported bug in delivery calendar


  • DEV: Reapply patch for previously reported Petals bug in v2.2.6


  • TWEAK: Add category blocks to nightly purge of past delivery date blocks
  • DEV: Fix reported bug where Petals orders crash on receipt
  • DEV: Update Dompdf to v2.0.2


  • DEV: Fix reported bug where timeslots field stuck on checkout page if no time slots configured in backend, preventing checkout


  • DEV: Fix reported bug where no delivery methods populate when adding a time slot in backend


  • DEV: Fix reported bug where timeslots not validated at checkout


  • DEV: Fix timeslot array in dd execution


  • DEV: Fix display of delivery calendar


  • ADD: Option for fee per weekday
  • ADD: Option for fee per specific delivery date
  • ADD: CSV/PDF exports on Delivery Calendar
  • TWEAK: Reorganise submenus
  • DEV: Apply priorities to actions for submenu functions
  • DEV: Add localisation to strings on DD Blocks settings page
  • DEV: Add placeholder to fields on DD Blocks settings page


  • DEV: Fix input fields on category blocks page
  • DEV: Fix input fields on date blocks page


  • ADD: Restrict delivery methods per day
  • ADD: Option for fee per time slot
  • ADD: Block delivery dates per product category
  • TWEAK: Fix over-capitalisation of “delivery” in backend
  • TWEAK: Fix delivery time slot display in order emails


  • TWEAK: Improve display of attribute values on PDF worksheet


  • ADD: “Ready for Collection” order status and email
  • TWEAK: Improve display of attribute keys on PDF worksheet
  • TWEAK: Improved colouring of “Prepared” order status display on admin orders list
  • DEV: Auto-created product for Petals orders “Private” so as not to display in category counts on frontend


  • ADD: PDF Invoices and Worksheets
  • ADD: Option to disable Order Comments field
  • ADD: Delivery Dates feature – collect delivery dates and even timeslots
  • ADD: Delivery Suburbs feature – restrict shipping methods by suburb instead of by postcode
  • TWEAK: Petals Network integration is now direct – no BAKKBONE API subscription is required.
  • TWEAK: Visual changes on settings pages and reorganised settings
  • TWEAK: Card Message moved to own custom field, freeing up order comments field
  • DEV: Fire Gravity Forms features only if GF is activated
  • DEV: Fire WooCommerce Address Book features only if WAB is activated
  • REMOVE: Deprecated Order Delivery Date Pro support as a result of above
  • REMOVE: Deprecated WCFM support


  • TWEAK: Fix display of “Delivery details” header at checkout


  • ADD: Order statuses “Scheduled”, “Prepared”, “Out for Delivery”, “Relayed” (plus “New” “Accepted” and “Rejected” if Petals Network integration is enabled)
  • ADD: Emails to customer for “Scheduled”, “Prepared”, “Out for Delivery” orders
  • TWEAK: rename “Completed” order status to “Delivered” and modify email to customer accordingly
  • DEV: Settings and support links added to plugins list


  • ADD: Ability to integrate Petals Network to receive/accept/reject orders in same format as your own orders
  • ADD: Hide delivery address fields in checkout when pickup is selected
  • ADD: Option to customise text displayed when customer enters a suburb for delivery that you do not service
  • ADD: Automatically assign guest orders placed by registered customer to the matching user (so it appears in their order history when logged in)
  • TWEAK: Improve display of delivery date in WCFM
  • TWEAK: Set default values for freetext-based plugin options


  • TWEAK: Force valid recipient phone number on checkout


  • ADD: Add delivery notes to order emails


  • ADD: Delivery Suburb post type now supports custom text per suburb directly entered on the Suburb entry
  • TWEAK: Tidies up admin menu
  • TWEAK: Re-worded “delivery notes” field description in checkout
  • TWEAK: Tweak card message display


  • ADD: Improve compatibility directly with WCFM
  • ADD: Add “Delivery Date” column to WCFM Orders List


First release hosted on WordPress Plugin Repository
* TWEAK: Fix stable tag listing
* DEV: Escape syntax patching


  • ADD: Adds native option to show Short Description of products in archives
  • ADD: Option to change cross-sell header on cart page
  • DEV: Bugfixes


  • ADD: backwards compatibility for GF phone mask for existing customers
  • TWEAK: fix WooCommerce Address Book integration


  • Initial release.