Hola Alex.
Pues no entiendo bien tu pregunta, ya que los 6 puntos indicados son muy claros y se explican perfectamente, ya todo dependera del escenario, situacion y momento. Por ello es importante que tu aplicativo de software te permita seleccionar estas razones de la Devolucion, porque si estas haciendo un programa que en automatico lo seleccione entonces seria un error, ya que si el Receptor de la Nota de Credito no le parece, al que le van a caer los reclamos es a ti (el desarrollador).
Lo mas recomendable es que permitan elejir la Razon de la Devolucion en tu aplicativo de software y ya que el cliente tome esa desicion.
Los demas elementos se generan tal cual puedes encontrar en los ejemplos de la Caja de Herramientas publicado por la DIAN.