A Valid Payment Signature Does Not Guarantee the Purchase Is Correct
A valid signature only confirms that a payment notification originated from the payment provider, not what the payment should unlock. Developers are advised to test whether changing checkout amounts, product IDs or account references in a sandbox alters what gets granted. The server should control pricing and tie each checkout to the authenticated buyer. Before access is granted, payment status, currency and product should be matched against the stored order, allowing for legitimate discounts and taxes. Test-mode payments must also be kept strictly separate so they can never unlock live access, and custom fields in signed notifications should still be treated as untrusted since they may have originated in the browser.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in