ChaosQA · Guides

Does the server trust the browser's price?

Updated October 30, 2026

Everything that runs in the browser can be changed by the person using it. If the order request carries the total and the server charges that total without computing its own, anyone can pay what they like. Security testers look for this with intercepting proxies. A manual tester can check the basic case with nothing but the browser's developer tools.

Only do this on systems you are allowed to test: your own project, a test environment, or a practice site built for it, like the one linked below.

Step 1: read the order request

Open the developer tools (F12, or right-click and Inspect), go to the Network tab, and place a normal order. Find the request that created it, usually a POST with a name like order or checkout, and open its payload. Note what the page sends. If you see the quantity and the product only, the server is probably computing the price itself. If you see a total, price or discount field, keep going.

Step 2: send it again with a different total

Two ways, depending on the browser:

Try a few values: 0.01, 0, a negative number, and a total for a different quantity than the one in the request.

Step 3: read the answer

What comes backMeaning
The order is accepted at your changed totalThe server trusts the browser. A serious bug.
The order is accepted at the correct totalThe server ignores the field and computes its own. Fine, though the field should not be there.
The order is rejected with a mismatch errorThe server compares the totals. Also fine.
A server error, no explanationNot a price bug, but worth reporting: the server does not handle unexpected input.

Check the confirmation and any order list too: some systems accept the right amount in the response and store the wrong one.

Beyond the total

Writing it up

Include the original request, what you changed, what the server answered, and the charged amount. Keep it factual. "The server charged ₪0.01 for an order whose correct total is ₪244.80" is a complete finding; the developer can reproduce it in a minute.

Try it on a live form. The TicketBox practice form is built for this kind of test. In some sessions the server takes the browser's total at its word.
Open the practice form

More guides: double submit · checkout totals · REST API test cases · all guides