The most common reason for the two-factor authentication not working correctly is that the clock on your phone is inaccurate.
This can typically be rectified by following these simple steps:
Phone settings
On Android devices, enable Automatic date & time option on the system:
Settings > Date & time > Automatic date & time
(you can also try to set the time zone automatically)
On Apple devices, change time and date to Set automatically:
Settings > General > Date & time > Set automatically
Authy
If you have the same number, but can’t log in you can have your account settings reset.
If you have changed your phone number, you can have your account changed.
Google Authenticator
If you are using the Google Authenticator application, click Settings > Time correction for codes. This synchronises your phone and the application.
The Luno systems are calibrated to allow some leniency with authentication codes, but a good rule of thumb could be to attempt entering a new code as soon as it becomes available on your device. If this doesn't work, waiting until the end of the code's validity period is also sometimes handy.
If the problem persists, you can do an automated two-factor authentication reset.