Giter VIP home page Giter VIP logo

mypetdefense's Introduction

MPD Logo

###MyPetDefense.com

Business Overview

At the core My Pet Defense (MPD), is a service that provides Flea & Tick (F&T) medicine one dose/month at a time and billing as such. This is a large change for the industry, as most purchases are for 3, 6, or 12 months at a time.

Given this, MPD is an attempt to solve multiple problems, for both consumers and retailers.

Consumer Problems and Solutions

Consumers have to purchase F&T at 3, 6, or 12 doses. This leads to several issues:

  1. Spending a large amount of money up front.
  2. Storing the extra product without losing it.
  3. Remember where the product is and giving it to the animal every month.

If the consumer loses the product, more money must be spent. Given that the large upfront cost may already deter the consumer, buying a second supply is another deterent from treating their pet. Additionally, if the product is not applied the same time every month, the product is not going to be as effective as possible.

MPD solves these issues by:

  1. Charging monthly only for the product ordered.
  2. Only sending the product to the consumer as they are charged.
  3. Sending the product on the same day every month so that the consumer applies it immediately when received.

Retailer Problems and Solutions

Retailers face a number of problems when it comes to F&T as well.

  1. Consumers are able to buy the product from any store or site and thus build no brand loyalty.
  2. Consumers may decide the product is too expensive and not purchase at all.

MPD solves these issues by:

  1. Paying a percentage of every consumer transaction that is referred to MPD back to the retailer every month.
  2. Breaking down the price point until the consumer all but forgets about the charge (hello gym memberhsip).
Example Scenario

Mike buys a dog from Pets R Us and is referred to MPD. Mike pays $10 every month for product and MPD pays 10% ($1) to Pets R Us as long as Mike is an active consumer on MPD. This will generate $12 annually for Pets R Us with no further action.

There are other secondary benefits to all parties as well, but those do not need to be detailed here.

Technology Overview

The solution for this should be pretty straightforward. The biggest forseen issue will be scale of databases.

Stack / Service Providers

  • Langauge: Scala / Lift
  • DB Local: Postgres (flexible)
  • DB Production: ???
  • Cloud host: Currently Linode.com due to existing account but not tied.
  • Credit Card Processor: Stripe.com
  • Postage Processor: Stamps.com
  • Transactional Email: Postmarkapp.com

Signup Flow

The signup flow will be integrated into the marketing pages and should be a simple 4 step process:

Choose Pet -> Choose Size -> Choose Product -> Checkout

Referer / Retail Flow

There will be flows built out for the sales team to report new retailers and for retailers to provide mailing and email addresses for potential new consumers. These are still TBD. Safe to assume more tables here.

Tech Flow

Once a new user signs up, we bill their card and send out the first product.

Signup -> Charged by Stripe -> Notify MPD -> Generate label @ Stamps.com -> Print label and notify consumer -> Ship

The flow for existing users is the same minus the Signup portion. Stripe will charge them every month, notify us, and we ship.

Challenges

The goal of the site and service is set and forget, so we dont expect them to visit the consumer site often. We do expect a large number of users though. The industry is a $3B industry, so getting 1% would be $30M. So scale is a factor.

Our first large retailer is giving us access to 300,000+ past consumers as well as 42,000+ new consumers annually. This will lead to large tables that are the core of our business. We need to ensure we have dedundency setup correctly as well as the ability to handle growth. While this is the first retailer, hopefully it is not the last.

mypetdefense's People

Contributors

riveramj avatar bartosso avatar arkxc avatar

Stargazers

 avatar

Watchers

 avatar

mypetdefense's Issues

Account Profile Page

Need the ability for the user to change their email and password inside the app.

Birthdate year validation

Extra number on year doesn't cause error for validation. Extra number on month does cause error message.
my_pet_defense___pet_details

Typo in new user admin email

Welcome Liz
We have an acount with your name on it!
We just finished creating your new account on MyPetDefense.com. Now we need you to click the button below and the finish the setup proces. If you have any questions, feel free to email us at [email protected].

missing the

Show user current shipment date

Currently we show the upcoming shipment, but not the current shipment. This is basically a duplicate of the email we send to them.

Failed payment email

When a payment fails, we need to send an email to the user letting them know.

New Dashboard page

This is a data dump by calvin based on last big shipping set. Some parts of it will need to be finished before the month anniversary comes up. This will be broken down into more issues.

  1. Dashboard
    1. Last Ship Date
    2. Next Ship Date
    3. Payment Status
    4. Customer Name
    5. Ship To Address
    6. Pet Information
      1. Pet Name
      2. Product Information
    7. “Shipped”
  2. Work Order
    1. Single sheet of paper (8.5 x 11) for each
      1. Include the following information for now
        1. Customer Name
        2. Ship To Address
        3. Pet Information
          1. Pet Name
          2. Product Information
        4. Package Weight Class
          1. 1 oz
          2. 2 oz
          3. 3 oz
      2. Final Work Order to include the following information
        1. Configuration TBD
          1. (2) labels on a Roll printer?
          2. (1) account per 8.5x11 sheet?
          3. (2) accounts per 8.5x11 sheet?
        2. Label 1 to include
          1. Customer Name
          2. Ship To Address
            1. For verification purposes
          3. Pet Information
            1. Pet Name
            2. Product Information
        3. Label 2 to include
          1. Printed postage label
  3. Daily Production Log
    1. Customer Information
      1. Account #
      2. Customer Name
      3. Ship To Address
    2. Pet Information
      1. Pet Name
      2. Product
      3. Pet Type
      4. Size
    3. Production Status
      1. Work Order
      2. Shipping Label
      3. Product
      4. Inserts
      5. Shipped
    4. Package Information
      1. Package Weight Class
      2. Estimated Ship Time

Other Info

  1. Ship Dates:
    1. I would like to see a “Last Shipped” column.
      1. This will alert us to any skips or possible issues
    2. Change “Ship On” to “Next Shipment”
  2. Ship To Address
    1. Move column to be the first column after Name
  3. Pet Name
    1. Need to add “Pet Name” to Product Information
  4. Paid
    1. Move this column the left of “Next Shipment” column
      1. This will make sure data is displayed consistently and variances can be quickly recognized

Multiple Pet Signup

Things to test. Also, mobile needs to be tested as well for looks.

general flow

  • add two, three, four pets.
  • click add pet with empty name fields. should be error on empty names
  • click checkout with empty name fields. should be error on empty names
  • hit enter on pet details page when typing in a box. nothing should happen.
  • delete pet.
  • delete just added pet. top bar should clear
  • delete all pets. should go back to choose pet page
  • hit back button after pet details. should just go back to previous page.
  • change selection, go to pet details. Should update w/o issue
  • birthdate validation should work and clear if no birthdate
  • on pet details page, flow buttons should not work. -> mobile and desktop
  • if you click add pet, you should be able to click review details and go to that page. w/o adding new pet.
  • after checkout & success page, going to pet choice page should clear top bar and pet count
  • success page should show correct pet count
  • success page should show x months free
  • success page should show total if no coupon.
  • log into parent portal and see pet names
  • should be able to click on pet details from checkout page

one pet

  • go through flow & checkout w/o coupon. Should be 9.99 + tax if GA
  • Add coupon. Should still be no discount.

two pet

  • go through through flow & checkout w/o coupon. Should get 5% discount, aka $1.00
  • Add coupon. Should still get 5% discount, aka $1.00

three pet

  • go through through flow & checkout w/o coupon. Should get 10% discount, aka $3.00
  • Add coupon. Should still get 10% discount, aka $3.00

Cat product/sizes are wrong

From calvin:

We have the wrong product listed on the 1.5 – 5lb. cat page. It should be ZoGuard Plus, not Adventure Plus. We only have two Adventure Plus sku’s for cat: 5-9 lbs & 9+ lbs.

Percent Coupons & Change Coupon

Changes that need to be tested:

  • Remove coupon via parent admin page
  • create percent coupon via admin page (x% unlimited months)
  • create month coupon (x%, y months)
  • add month or percent coupon via admin page
  • month coupon should show up in parent account overview page (parent login)
  • percent coupon does not show up yet (to be fixed)

Pet Details Page

Pet Details is in dev currently.

You should be able to go through the flow and enter a pets name and birthday.

  • name is validated and required.
  • bday is not required but validated.
  • if you sign in to the parent account, the pet name should have saved.
  • if you go to checkout and then back to pet details, currently we do not keep pet name or bday.
  • if you go to any page before the pet name, we do not keep pet name or bday.
  • pet name should not be on the checkout page any more.

Show pet details in checkout flow

We are going to allow a customer to add multiple pets but there is some plumbing needed first.

We are moving the pet summary to a pet details page. This will be a new page in the flow.

first step is to create page and update checkout. dont worry about the add new pet or showing two pets on that page. that will be done in parallel by me.

notes

  • checkout - logic is all there. just moving everything around and deleting pet specific notes

  • mobile for pet details - just stack all fields in the gray box. Use same padding/margin etc as checkout page for sizes and inputs on grey field. List below:

______________
| Pet name   |
| Birthday   |
| Dog:       |
| Product:   |
| Size:      |
--------------
Prodceed to checkout

Multiple Pet discount in Stripe.

We need the ability to create % coupons in the app and have the % shown as a discount on account page.

5% off total for 2 pets.
10% off for 3+

Cancel Entire Account

Currently you can cancel a pet but not the entire thing.

Need the ability to cancel all details and pets and actual account all at once.

Parent Page

From Calvin:

I would like to see the data on the “Parents” Tab slightly reconfigured. When expanded, the account should have the current pets and product information above the “Add Pet” area. It would make that information easier to see and recognize.

Impersonate User

Need the ability to impersonate a user, so that we can see what they see.

Suspend Shipment

We need the ability to suspend shipments until a future date.

This date could be a set date or until manually restarted.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.