Feedback on quantity interface in Billable

I’m writing this mainly so I can link to it in the Mac UI mailing list, but feel free to chime in if you have thoughts.

Billable has two types of services, flat fee and time-based. We allow the user to choose the type via a radio button list. When time-based is chosen we enable some fields to enter a time and an hourly rate. When flat fee is chosen the total becomes editable.

1.1 Time

1.1 Flat

I want to add a new quantity type (N of item X at Y price) but to do so I need to remix the UI a bit. I can’t continue to list them as radio buttons with inline fields for fear of it getting too tall. My current iteration is to use tabs like this:

1.2 Time

1.2 Flat

1.2 Quantity

The real question here is if I should use the segmented controller of the tab view to control the type of service or should I replace it with a pulldown control (HIG example). Or maybe I’m totally off and you have a better suggestion.

Not shown are a few other UI moves and the fact that I will grow and shrink the tab area as needed to keep it condensed.

So anyways, if you have any feedback let me know. Thanks!

UPDATE: So after getting some feedback from Daniel and others I worked up some still shots options and as of tonight have implemented it like this:

There are two rate types: time-based and quantity. Time works as before and quantity allows you to give a unit cost and quantity count. To use quantity for a simple flat fee simply leave the count at one. When the count is not one we add a little extra copy to the invoice for that item explaining this is for some count at some price each. A movie showcasing this can be found online.

Overall I like this solution because it keeps the UI simple (only swapping two fields when rate type switches and keeps the labels on the left) though I wonder if users will understand how to use it for flat fee and then there is also an issue if they explicitly want to show something like (1 at $10.00 each) when quantity count is 1 (though they can always edit the template and take out the if logic to make it always show up). Feedback is still welcome.

Posted on: June 25, 2007 – 5:14 pm

14 Comments

  1. My feeling is the tab state can connect directly to the model without anxiety because what you’re controlling is intrinsic to the model. If you’ve selected one tab state, you’re not just changing the view onto the model, you’re fundamentally altering the behavior of the model.

    By changing selected tabs, you’re asking the model to exclude/ignore the data associated with the other tab states. So it certainly seems smart that the value should be stored in the model.

    As for presentation, I was going to suggest horizontal radio buttons instead of the tab view. But then I realized that flat rate and quantity are kissing cousins. Why not merge them into a single section that defaults to Quantity 1. Don’t you think the “Flat Rate” should have an “Item Name” too?

    Billing Method: [Popup Time or Quantity]
    (visible for either Time or Quanity:)
             Line Name: Did whatever, and lots of it.
    (if Time, switch in:)
           Hourly Rate: $99.99
            Time Spent: 12:34
    (if Quantity, switch in:)
             Unit Cost: $99.99
          Units Billed:  1.0 (defaulting to 1.0 makes this "flat")
    

    This way there would be a strong consistency across the methods, and very little in the UI would change when choosing between Time vs. Quantity. Only the names of the fields and the format of the units/time field.

    I think it will be best to stay away from that big ugly tab view. It throws off the consistency of the labeled items in the dialog.

  2. Chris Ryland wrote:

    Not sure if 3 options really pushes the radio button paradigm (which I think fits best) too far. 5 or 8 certainly would.

  3. It’s not the number of radio buttons; it’s the fact that three radio buttons with inline widgets for each would make a the view tall which I want to avoid.

  4. @Daniel I find your solution interesting. I wonder if normal users would ‘get’ the idea of using a 1.0 quantity for flat fee. I’m also a little concerned as to how always using quantity will effect the invoice look and feel. Clearly not all flat fee services are meant to be shown with a quantity-ish layout. Thanks for your input.

  5. A quick realization of what Daniel’s recommendation might look like.

    I suppose I could have a rule in the invoice template that says if they have a quantity of 1 don’t show any kind of (2 of X at $5.00 per) inline note on the PDF invoice.

  6. I don’t like using a tab control like that. You are trying to specify a choice of one item and a tab control gives you no choices except what tab to currently look at. It does not indicate you chose something.

    I would use a poup menu and when choosing it, animate the bottom half of the window to show a custom UI for that choice.

  7. I like the updated solution. Much simpler than the 3-option choice.

    I still use Blinksale, which essentially uses the same model you have here, but always puts a “Qty” column in the final invoice regardless of flat-fee or hourly. Having a special case for quantity = 1 like you have here is a very nice touch.

  8. @Manton Thanks for the feedback.

  9. I like the idea of only having ‘time based’ and ‘quantity based’.

    However:

    -Allow the user to choose whether or not to show quantity when only 1 is selected (perhaps a pref or change to the template)

    -Any chance we could get a catalog feature? Items could then be added from a pulldown in quantity, with prices already set as well as customizable per invoice

    -I love this app a lot, but find it lacking that I can’t invoice for more than one service at a time.

    Thanks =)

  10. @Jack I am looking into ‘service templates’. Also, you can make an invoice with multiple services. To create an invoice with more than one service simply select more than one service in the main table1 and then choose New Invoice from the toolbar. The new invoice will have all of the services previously selected. More info.

    Thanks for your interest and the feedback.

  11. Chiming back in late - I think the updated version is a lot cleaner and looks good to me. As for your concerns about the user “getting” that 1.0 means flat rate, you could help the situation by putting a text (Flat Rate) to the right of the quantity box if it’s 1.0, and of course the default setting could be 1.0 to put the idea into the user’s head immediately that it makes sense to use it that way.

  12. Peter wrote:

    I like the time and quantity options best as in the stills shots. The editable field should be titled “Description” not “Service Description” because services are time based whereas products are quantity based, therefore you need a generic field name such as “Description”.

  13. Rob wrote:

    oh thank you for this!

    i have been billing my mileage that i charge clients manually as a service. what a pain that was to open calculator figure out the total then go back in and create a service that said “mileage: ## @ $0.50” and putting the total above. this makes things much simpler.

    i really like the 3 tab interface you show above. it is only one click to get to the service set i need. the dropdown box creates 2 clicks and the deal with qty 1 essentially being the flat fee set is a bit confusing. it could be explained to the user but then who reads the manual?

    one last thing. as for my case (being mileage) it would sound weird to say “(3 at $0.50 each)” if you have a default parameter in the client editor like you do for the time based maybe you could designate “each”, “per”, etc with radio buttons? or actually i think “X @ $” is enough explanation.

  14. salikosk wrote:

    секс мама и сын мож кому нада забирайте Порно видео беплатно порносайты бесплатные http://golfball.ru/Templates/forum-blog/topic=lang=ru=127.html порносайты бесплатные

Post a Comment | Comment RSS feed