Better batchCreate with proper validations