diff --git a/engine/cdrs.go b/engine/cdrs.go index b89e70637..51f1abb24 100644 --- a/engine/cdrs.go +++ b/engine/cdrs.go @@ -365,7 +365,9 @@ func (self *CdrServer) rateCDR(cdr *CDR) ([]*CDR, error) { for _, smCost := range smCosts { cdrClone := cdr.Clone() cdrClone.OriginID = smCost.OriginID - cdrClone.Usage = time.Duration(smCost.Usage * utils.NANO_MULTIPLIER) // Usage is float as seconds, convert back to duration + if cdr.Usage == 0 { + cdrClone.Usage = time.Duration(smCost.Usage * utils.NANO_MULTIPLIER) // Usage is float as seconds, convert back to duration + } cdrClone.Cost = smCost.CostDetails.Cost cdrClone.CostDetails = smCost.CostDetails cdrsRated = append(cdrsRated, cdrClone)