The main question is in the title. The specific case I have is the tracking of payments. I was thinking a smart contract could be made whose only purpose is to check if a note in a transaction is properly formatted and let it through if so. The transaction would have already be signed, but just needs the note checked, so I can track it. It should also be possible to use with transactions that do an asset transfer (not just ALGO). Such a transaction would also be needed to be encoded as a URL/QR-Code that auto-fills the payment in a wallet with an xnote (same note that is being checked).
From the documentation, it doesn’t look like ApplicationCallTxn has the asset transfer fields as in the AssetTransferTxn. The URI scheme also doesn’t seem to have any application calling fields. The application/program would need to be signed by a normal account as far as I can see, since the incoming transaction could have arbitrary from and to accounts.
Thanks for any insights!