I would gather all possible inputs of data that you can use for it. Will
the data be stored in one place for all customers ? if so - you'll be okay
with uuid of some sort, as primary key on a table.
if you need data to depend on outside data, either write a query, that would
generate it, taking those outside params as input, or write C procedure,
that will gather that data, and return some unique key.
So it all depends on what are you actually trying to achieve.