::Hi Kiko, you can try following the tutorial as Aaliyah has helpfully linked.
To integrate the Coco Code video into our existing codebase, you will want to create DraggableItem as a separate class to instantiate instead of doing it by transform parents (This means that you have to Destroy it once the drag operation is complete). The class would need to store information on which inventory/hand slot it came from.
Then on the InventorySlot class, you will need to change the logic of the OnPointerClick function. You can have it clear the display once clicked, and instantiate the DraggableItem with the item it is representing loaded in.
Finally, with the OnDrop function, you will retrieve the information needed from DraggableItem, and with the information, call InventoryManager.Instance.InventoryToHand or InventoryManager.Instance.HandToInventory depending on the data. You will also need to create a new function to handle the movement from one inventory slot to another.