Allow users to create custom fields for transactions of variable type (text, number, date, file). Support throughout the site including CSV imports.