wrapped registration and user generation in transaction