What’s a reasonable amount of time to wait for an SMS?

We have a form where mobile users submit their mobile number to receive an SMS with a PIN, which they have to use as confirmation in an online form. The PIN expires in a few minutes, so a user can request a new one. To avoid sending multiple SMS to a user, the system waits for some time before sending a new one to the same number. Each SMS sent costs money, so we're trying to optimise the amount of time between requests.

How long is reasonable to ask a mobile user to wait for an SMS? Is there any data that I could use to back this decision up?