After few hours I got it to the point that:
single records are synced from iPad to iPhone. But still no sync from iPhone to iPad.
In this article from Apple it says that "Generally, you can expect data to synchronize a local change within about a minute of the change."
More details on what I have done so far:
I have tested CloudKit first with my app's DEV version deployed directly to iPhone and iPad. Syncing started after approximately 20-30 minutes, I think.
After this I have added Signing & Capabilities to my main target. I have added the same as for DEV target: iCloud (CloudKit), Background Modes (Remote notifications).
After deploying with TestFlight and installing my app on iPhone and iPad, syncing hasn't started after more than 1 hour.
To clarify, I am using CloudKit with CoreData. This app that I am testing with TestFlight has some data already. But we are talking about few KB of data to be synced, not even MB.
In CloudKit Dashboard, click "Deploy to Production…” button.
Review the changes that are going to be deployed.
Click “Deploy Changes.”