Also to add on to what @fabrice asked, if you have a local node you are using and it isn’t caught up to the ledger block height yet, the balance won’t be available locally.
The last block in TestNet is 11537260, your local node isn’t yet aware that you have a balance available and won’t until it processes the block where the tokens were sent.
I would recommend using either the Docker sandbox project, or an API hosted by a 3rd party, or try-out fast catchup on the local node as a full sync can take days.
Please, remind that I’m using algorand on a remote virtual machine (i.e. Openstack with Ubuntu 18.04, located in office) ; there the normal catchup is very, very slow and the fast catchup doesn’work at all, probably caused by the virtualization or by the Internet connectivity.
So, to verify this hypothesis, I just installed algorand on a physical machine (laptop with Ubuntu 18.04, in a different location and with a completely different Internet connection); here the normal catchup is really faster and the fast catchup works very well (few minutes to reach the top of the chain).
I will check with colleagues the Openstack virtualization and the Internet connection.
Thanks for your help. Now I’m working on a physical machine instead of a virtual one and everything works fine: my node is up-to-date by fast catchup and my Go app creates and publishes a signed transaction with JSON metadata in the ‘note’ filed. I check the results into the blockchain by https://testnet.algoexplorer.io and everything is OK.
Thanks a lot for your complete example with a V2 client; I’ll see and use it.
My next step will be understanding how to write Smart Contracts by TEAL.
your sandbox is not connected on the right network. By default the sandbox creates a private network and does not connect to TestNet. So you cannot use the TestNet dispenser.
if your sandbox is connected to the right network, it may not be synced.