barcode question type:
If you are using entities you could encode a UUID as the QR and then link the QR UUID to the entity UUID and do instance look ups to get already known details and continue to fill in the monitoring details (and also update the entity). You could also have an internal choice list or external CSV choice list that has this data and do the same lookup method, but you would have to update your reference list separately. Here's an example
If the entity (tree) details you want are static (eg tree ID / species / date planted) and also not private, you could encode it all into the QR as a delimited string and decode the QR to pull out the information. Here's an example
Your approach may be limited by how large/detailed the QR can be and be economically produced on durable materials (etched stainless steel / two layer plastic etc)