Хорошо, превращаем комментарий в ответ ...
Не кодируйте скрытый файл! Когда клиент совершает платеж, PayPal обрабатывает транзакцию и сообщает вашей автоматизированной системе, что он получил платеж. Он также должен сказать вам, сколько клиент заплатил вам! Затем вы сравниваете сумму, выплаченную с исходным счетом, и, если есть разница, вы просто сообщаете пользователю, что платеж не завершен. (Если, конечно, они не заплатили слишком много.)
Как говорит Крис Лайвли, не доверяй клиенту! Всегда проверяйте сумму, которая была оплачена. После того, как вы это сделаете, не имеет значения, взломает ли пользователь какие-либо скрытые поля, так как вы проверяете это позже.
Если ваша безопасность зависит от защиты пользователей от скрытых полей, ваша безопасность потерпит неудачу! Ваша безопасность должна зависеть от вашего контакта с PayPal напрямую. Только когда PayPal подтвердит платеж, вы должны отправить продукт.