Hi Arjun,
The most important thing you must know about categorization is, it only saves the highest level in database table and not all levels.
E.g.1
if you have to save following values, only D should be passed on to the BAPI and only D will be saved in database table
L1: A
L2: B
L3: C
L4: D
E.g.2
if you have to save following values, only C should be passed on to the BAPI and only C will be saved in database table
L1: A
L2: B
L3: C
L4: