Tracking indivdual returning users by ID?

Hi,
We several a fairly low use WebApps, that we’d like the option to store usage data of specific users (by userID), Does Piwik have this?

We need a solution that allows us to log :
when a user logs in (so storing userId, login time)
when a user does a particular action (i.e store the product id’s of the products they viewed)

So we can get a report to say this month company A logged on X amount of times and viewed the following products.

I’ve looked into GoogleAnalytics and it works well for general site stats like WebBrowsers and resolutions but lacks the ability to track individual users.

Thanks,

Scott

Actually it looks as if this is possible using the JavaScript tracking API. I’ll just need to brush up on JavaScript.

Has anyone used with JavaServer Faces applications?