Added product addition with error handling and rollback