Collision between shipment and return ids when storing factors
The factors are stored by ids but from two different models (shipment and return). So it is possible that the same id is used in both models and create a collision. So we will miss a factor. I propose to use the string version of the record in factors and to include a fallback by id when the string is not found for backward compatibility with existing stored factors.