If you are custom-writing a tracking-solution, AND your affiliate agrees to set it up honestly, AND it's set up properly, there's no shortage of the stuff that can be collected by it.
Whether you build the tracking link in JavaScript, or whether you just hand them an <img>
or <script>
tag, with urls that have blank spaces (the JS solution is more-likely to be implemented headache-free, if the interface is simple):
eg
// Pixel-tracker for MyStoreAffiliate
(function () {
var script = document.createElement("script"),
sale = {
items : "<server template to insert item-names>",
total_sale_value : "<server template - insert profit/commission/whatever>",
unique_sale_id : "<server transaction id>"
};
script.onload = (function (sale) { Tracking_lib.track_sale(sale); }(sale));
script.src = "//domain.com/tracker.js";
document.getElementsByTagName("script")[0].parentElement.appendChild(script);
}());
Inside of your tracking library, all you're really going to do is set up your tracking URL, and call it somehow (AJAX/img.src/script.src).
So as you can see, you can track anything that your partner is willing to show to you.
That, of course, is the trick.
My day job is to set up tracking for GA in custom situations.
And to do the same with Adobe's analytics software.
GA and SiteCatalyst both give us useful reasons to fill in all of the details.
Affiliate pixels, not so much. Unless we had some sort of personal agreement, or were getting discounts/benefits/etc, affiliate tracking only gets filled out with the bare necessities.
Good luck with that.