nLocketime error PUSH TRANSACTION ERROR: 64: NON-FINAL
It's most likely because nLocktime is based on the &quot;mediantime&quot; of the previous block... not &quot;exact&quot; unix time.
Due to delays in finding a new block, it is not unusual for &quot;mediantime&quot; and &quot;current time&quot; to end up out of sync by quite a significant amount (1+ hr).
If you don't have access to a Bitcoin Node to check the getblockchaininfo command, then you can use this online API: https://chainquery.com/bitcoin-cli/getblockchaininfo
Check the &quot;mediantime&quot; value and compare with your &quot;nLocktime&quot;. Once &quot;mediantime&quot; &gt; &quot;nLocktime&quot;, you should be able to broadcast without error.