I need to process payment via paypal, but I need to be sure that client email in database is same as paypal email.
It is important this to be known before paypal payment to be made, because I going to give free test period for every paypal email.
How I can implement something like this with IPN only?
IPN happens after a transaction, so there is no way to do what you're saying with IPN only, BEFORE the payment.
What you could do is check your database from within the IPN script to see if the email on the transaction is in your system. If so, proceed accordingly. If not, you could handle it any number of ways. Either generate an email notification that you couldn't find their email in your system and provide a way for them to update, or you could even use the RefundTransaction API to process an immediate refund if the email isn't found, or whatever you wanna do.