Hanzo's dashboard is designed for use by developers, support members and executives of a given organization. Ideally all marketing and most of the support operations can be performed via it.
The dashboard is composed of modules, each representing an orthogonal collection of features. Each module contains a set of views which are typically accessible from the dashboard sidebar. Each module can be used independently of each other, but frequently modules extend functionality in other modules.
- Adding new views and modules should be straightforward
- Consistent layout / organization
- Composable, reusable views and widgets
- Optimized development process and rapid iteration
- Onboarding new organizations should be fast and straight-forward
- Should streamline marketing efforts we perform
- Access to real-time ecommerce statistics
- Analytics/Reporting (mostly powered by GoodData)
- Ecommerce support functionality
- Able to edit orders
- Interact with customers
- Send marketing emails
- Resend order confirmations
- Credit accounts, etc.
- Flexible enough to support diverse needs
- Provide support for launching, growing and maintaining commerce-driven companies
- Analytics integrations
- Authentication / User management
- Ecommerce / Order management
- Marketing APIs / customer interaction
- Easy to navigate and discover functionality / features
- Ability to configure integrations with third-party services
- New organizations need fewer features, expect functionality used to grow over time
Overview of dashboard architecture and APIs used.
- Build System
- Sake
- Bebop
- Handroll
- Languages
- Stylus -> CSS
- Coffeescript -> JS
- Jade -> HTML
- Frameworks
- El.js/Riot
- Daisho
- LostCSS/Stylus
- Powered by Hanzo API and Daisho
- Fully static, generated by build process
- Framework for organization of dashboard modules, views and widgets
- Modules organize top-level platform features
- Views organize widgets into user accessible routes
- Widgets encompass things like forms, inputs, graphs, etc
- Provides predictable CRUD operations across all models
- Provides specialized ecommerce/marketing/support functionality
- Returns heterogeneous results
- Easy to filter to a single model
- Complex filtering possible
- Any combination of properties across all models
- Date ranges, numeric ranges, text, etc.
- Majority of properties on models are indexed and full-text searchable
- Realtime statistics for campaigns, products, orders, users, etc
- Aggregated at hour, day, month, total
- A set of views that accessible from sidebar
- Should provide orthogonal functionality
- Should be independent of all other modules
- Possible to install / enable individually
- Static generated, functionality powered by REST API
- May provide functionality to other modules
- Typically enables a set of API endpoints
- Order module enables
api.hanzo.io/order
API, etc.
- Order module enables
- Each module is unique and navigable to from search
- Each module landing page / start view provides
- Last 10 updated models
- Common functionality
- Onboarding information
- Basic statistics / graphs
- Insights about changes in performance
- Modules are managed via what is essentially a package manager and can be installed/uninstalled from the dashboard
- Exposes a Module, Command, or
- A given page / collection of widgets, generally part of a set of views provided by a module
- Discoverable via secondary menu in sidebar
- Each view is unique and navigable to from search
- Functionality dictates design
- Unique, optimized layouts preferred per view
- Individual form, graph or input.
- Each widget instance is unique and navigable to from search
- Encompasses a given third-party vendor/platform
- Stripe
- Salesforce
- Etc
- Varies significantly based on third-party
- UI for connecting to various OAuth platforms
- Alternately UI for entering API keys, etc
- Platform-specific settings
- Lists modules
- Modules are (possibly) pinnable
- Secondary menu with links to each view per module
- Provides quick access to all models + views / widgets
- Field data used for search is annotated in the modules
- Support looking up a specific field on a specific page
- Essentially a CLI interface for scripts via the search bar interface
- A script is a series of calls to our API to do something such as modifying a user
- Easy way to add new functionality without adding a dashboard
- Support some sort of basic help/readme markdown
- Auto Completeable/Command discovery mechanism
- Also supported in Hanzo CLI tool and Slack integration
Each module expected to be in the dashboard. Some functionality may be incomplete depending on module, the core Ecommerce modules are priority.
- Analytics
- Apps
- Carts
- Collections
- Coupons
- Discounts
- Forms
- Integrations
- Log
- Orders
- Payments
- Planner
- Plans
- Products
- Referrals
- Reporting
- Search
- Settings
- Sites
- Store
- Subscriptions
- Teams
- Transactions
- Users
- Advertising
- Advice
- Campaign
- Content
- Insights
- Native Analytics
- Product Recommendations
- Segment
- Social
-
Snippets install guide
-
Configure integrations
- Advertising
- Facebook Pixel
- Google AdWords Conversions
- Google Analytics (Enhanced Ecommerce)
- Adroll
- Analytics
- Clicky
- Mixpanel
- Heap
- Kissmetrics
- Quantcast
- GoSquared
- Error and Performance Monitoring
- Bugsnag
- Crittercism
- Sentry
- Heatmaps and Recording
- CrazyEgg
- Full Story
- Email
- Marketo
- Customer.io
- A/B Testing
- Optimizely
- ...And many more
- Native Analytics (Our internal analytics)
- Advertising
-
Overview View
- Orders (Total / %)
- Revenue (Total / %)
- Customers (Total / %)
- Visit (Total / %)
- Conv (Rate %)
- AOV (Value / %)
- Revenue Chart
- Purchase Funnel
- Visited, Shipped, Added to Cart, Purchased
- Abandoned Cart
- Top Products
- Top Categories
- Top Visits By Origin
- Top Referral
-
Real Time View
- Big numbers
- Statistics
- Revenue
- Items Sold
- Orders
- Visits
- Last Products sold
- Last Activity
-
Merchandising View
- All Categories
- Products Sold
- Orders
- Merch revenue
- Avg Price
- Price range
- Per Product
- All Categories
-
Marketing View
- Visit Origin
- Origin details
- Origin, revenue, visits, orders, conv rate, aov, rpv
-
Orders View
- Total Orders
- Units Solid
- Revenue
- Orders Discounted
- AOV
- Orders Graph
- Orders Recent
- Order #, ordered, subtotal, discounts, shipping, tax total
-
Customers View
- Number
- New
- New %
- Returning %
- Customers latest
- Email, name, type, cohort, 1st order, last order
-
Purchase Funnel
- Visited
- Shopped
- Added to Cart
- Purchased
- Funnel graph
-
Abandoned Carts View
- Abandoned Revenue
- Abandoned arts
- Abandon Rate
- Total Revenue
- Orders
- Abandon Rate Chart (Today vs yesterday
- Abandoned Carts Latest
- Product, abandoned carts, abandoned revenue, abandon rate, visits
-
Abandoned Cart Save Attempts View
- Saved by automatic email
- Abandoned vs converted
-
In Store Search View
- Search terms
- Keywords with results
- Keywords without results
- Best performing keywords
- worst performing keywords
- Number of searches
- Most searches in a day
- average searches per day
- most popular term with results
- most popular terms w/o results
-
Sales Tax Report
- Summary of tax collected
- Period, Tax Type, Tax Rate, Number of orders, Tax Amount
-
Would love to embed google analytics, social (fb), twitter, etc as well.
This module additionally provides statistics in other modules:
- Users
- Orders
- Referrals
- Coupons
- Submissions
- Payments
- Subscribers
-
Grid displaying available integrations
-
Filterable by type of integration
-
Custom
- Webhooks
- Hanzo API
- Shop.js link?
-
Salesforce
-
Payment processors
- PayPal, Stripe, Affirm, Amazon, etc
-
Shipping/Fulfillment
- Shipstation
- Shipwire
- Fulfillrite
-
Helpdesks
- Intercom
- Zendesk
-
Marketing
- Customer.io
- Marketo
-
Email
- Mailchimp
- Mandrill
- Sendgrid
-
Source Control
- Github
- Bitbucket
- Gitlab
-
Other
- Slack
- Zapier
- Need to be able to list all email templates
- Need to be able to configure email templates for events
- User Confirmation
- User Confirmed
- User Password Reset
- Account changed
- Order confirmation
- Order shipped
- Promotional emails
- Coupons
- Discounts
- Manual
- Etc
- Marketing emails might also find their way in here as we start to automate mailing based on events
- Might want designer for that
- Maybe send marketing campaigns via this
- Campaign creator?
- Simple email designer
- Templates
- Preview/Testing
- Default email settings
- From Name, From Email, Subject, etc
- Add forms to your site
- Simple Form creator
- Paste JavaScript snippet (typical use)
- Two types of forms:
- Submission (contact forms)
- Subscription (newsletter sign-up)
- Possible to configure to add to different segments/lists in mailchimp, etc.
-
Statistics on users today
-
Show a list of interesting users as default view instead of whole list
-
List Users
- Saveable Filters
- Able to preview user in a list by expanding each entry to show user recent history
-
Create Users
-
Delete Users
-
Update Users
- Reset Password
- Resent Various Emails
- Add to Segment
- Edit user orders (when orders is enabled)
-
Show user statistics/Story from conversion
- Creation today/month/year
- What ordered
- What viewed
- What in cart/Session data
- Marketing Efforts to a User/Subscriber
- Emails we have sent
- Products they’ve converted on
- Referral Data
- Referrers
-
Anonymous visit statistics before sign up
- What did they do
- What did they click on
- Which products were viewed
-
Customer Service
- Notes?
- Issue history?
-
Geolocation Statistics based on Billing / Order Shipping Address
-
Upload from IndieGogo
-
Credit System
- Admins need to be able to add and subtract currency from an account via the transactions api
- List Payments
- Saveable Filters
- Create Payments
- Refund Payment (Update Order)
- Flag as Fraud/Charge Back etc
- Show a list of interesting orders as default view instead of whole list
- Perhaps statistics on orders today
- List Orders
- Saveable Filters
- Create Order
- Update Order
- Change Statuses
- Change Shipping Information
- Send Confirmations and Notifications
- Charge Order Payment
- List Order Payment
- Link to Payment in Integration (Stripe Id, Paypal Paykey, etc)
- Geolocation Statistics based on Order Shipping Address
- Upload from Orders
- List Products
- Saveable Filters
- Create Product
- Update Product
- Collect Product Status
- How much of each sold, etc
- Add Image Sets
- Add Option Sets
- Customizable List of Images vs Default Select Dropdown
- Create Variants
- Overwrite Product Pricing
- Select corresponding Product Options
- Geolocation Statistics based on Order Shipping Address
-
Add coupons, list, edit
- Flat
- Percent
- Free Shipping
- Free Item
-
Rule-based coupons
-
Shared coupons
- Increase discount based on sharing
-
Send coupons
- Based on segment
- Manually
-
Visual editor
- Integrate into frontend
- Shareable via social media
- Overlay as you edit the coupon
- Integrate into frontend
-
Stats
- Number of times coupon is used
- Products sold per coupon (revenue vs discount)
- Referrals
- List Stores
- Sort by performance?
- Performance Metric like conversion rate?
- Compare Products across stores
- Saveable filter
- Sort by performance?
- Create Stores
- Set Currency
- Update Stores
- Add Product
- Overwrite Default Pricing/Currency
- Add Variant
- Overwrite Default Pricing/Currency
- Add Product
- Disable but not delete stores?
- Need to preserve analytics?
- Upsell people at 5 + stores?
- Design referral programs
- Rules engine for what happens for referrals
- Generate a Coupon?
- Track referral activity
- Visual Editor
- Send an Email/SMS/Share?
- Top Referrers (users)
- Need to identify Brand Influencers
- Tiered Referral Programs
- Stats
- Conversation Rate
- User Viewable
- Conversation Rate
-
Organization Profile
- Full Name
- Country
- Billing Account / Info
- Plan settings
- Active integrations
- Website
- Phone
-
Locations (Tax Nexus)
- Address
-
People
- Add People
- Remove/Fire People
- Reset Passwords
- http://vrz.io/ezy3
-
Teams
- List http://vrz.io/ezpx
- Edit http://vrz.io/f03G
- Set/Change Permissions
Tag associated with a set of API Keys.
- Create
- Regenerate Keys for an app
- Delete
- Tag analytics data with app so we can get analytics data just for an app
- A object that is a name for a set of predefined api keys for working with websites
- Create a team
- Invite people to a team
- Set permissions for a team
- Remove people from a team
- Add and publish sites
- Event at a single point in time
- Browse Log
- Add Log from anywhere
- Configure and add campaigns
- List campaigns
- Top performing campaigns
- Comparison with current campaigns
- Analytics
- Duration of time you care about
- Generate newsletter / updates based on milestones
- Track history of cart
- Users associated, eventual orders, payments
- Referrals
- Coupons used etc
- Abandoned carts
- Organize products
- Modeled after Shopify's collections
- Discount Rules
- Snippet (installation guide)
- Search statistics
- Search settings
- Commonly searched terms
- In-store currency
- Edit people’s balance
- Assign credit
- Good Data
- Create new plan-type product
- Segment Users
- Create plans and manage subscription payment plans
- Invoices
- Lets you manage recurring payments
- Metrics
- Conversion Funnel
- Customer Acquisition Costs
- Quota per Sales Rep
- Forecasted Sales
- MRR Movements
- Avg. Deal Size
- Avg. Revenue Per Account
- Annual Run Rate
- Customer Lifetime Value
- COGS
- Gross Margin
- EBITDA
- Customer Churn
- MRR Churn
- Customer Engagement Score
- Net Promoter Score
- Integrate statistics from Twitter, Facebook, etc
- Recent retweets, etc
- Business insights
- Insights View
- Timeline
- Most visited, best converting products
- Worst converters (places to improve)
- Marketing advice (which effort works best)
- See highest value customers
- Send Unique promotional offers
- Identify non-purchasers and offer promotions
- Custom offers to ppl browsing but not buying
- Create pre-populated newsletters
- Detect news for company, recommend new pre-populated newsletter
- View advertising statistics
- Create new ads
- Run experiments
- Similar to adespresso
- Enables our native analytics
- Guided planner for starting business
- Adds help/advice widget?