Your prepayments may comprise of various types – to give two examples, those you require for certain orders made and those that your clients have bought for an example in the form of gift cards.
To follow up those two types in accounting, the approach is a bit different. The prepayment made for a certain order is undoubtedly going to be used up. That’s the first bit of thing that’s different. In your accounting initially you account for the prepayment with:
Db Cash and cash equivalent
Cr Prepayment received
Now that you finish the order and you make an invoice out to the client for the full amount with the prepayment deducted (and clearly shown on the invoice that it’s paid), your accounting entry is as follows:
Db Accounts receivable (full amount less the prepayment)
Db Prepayment received (in the amount of the prepayment)
Cr Revenue (in the full amount)
And that’s that with these types of prepayments. However, if your prepayments comprise of gift cards, the story is a bit different. Your accounting entry does not differ, however the approach differs due to the fact that there is no way of knowing when the gift card will be used.
Now, if the cards have expiration dates, the last date you can account for them into your revenues, is that date. If there is no date, it’s entirely up to you. You can of course account them into revenues right away taking a responsibility to sell goods when a customer comes and uses the card (do note that your revenues and expenses are not in the same period using this approach). Or you can account them into revenues after a certain reasonable time has elapsed – a time period you can expect the client has either lost the card or not planning use it anymore, i.e. 1-2 years.
If there is no issue date on your cards, you could also account like 50% of the balance each year into revenues.
As I said, the choice is yours.