Michael has brought up this and I will reiterate.
There can only be two issues here both of which are easily explained.
1. You have moderation set to on in the usergroup settings in admin.
2. The user did not complete the transaction.
The code here says it all in payment.php. If and only if the transaction is processed then approval is set to 1 for the ad to show. It is also only set to approved if moderation is off for the usergroup
Code:
Content visible to verified customers only.
The above code in the payment.php file is valid