They are interchangeable according to dictionaries; however, common practice is to use cantik for people (and animals such as pets) and indah for non-living things such as scenery. No-one would correct you for using them the other way around ( sort of like saying ... this is a pretty lake ... most people would say beautiful lake, but a pretty lady.)
Question: Do "ini" and "itu" always refer to inanimate objects when used in their independent form, i.e. not as a part of a noun phrase?
Also, can they refer to non-human animate entities such as cats, dogs or other animals? Or are they always reserved for inanimate objects?