pull down to refresh

How does an offline receiver verify the token hasn't already been spent?