---
title: "MPP amount not an integer string in the smallest unit — x402 defect class mpp-amount-not-integer"
description: "MPP amount not an integer string in the smallest unit (mpp-amount-not-integer), an x402 defect class: The request's amount is a base-10 integer string with no sign, point or exponent. Detectable by an unpaid probe. A decimal or a number usually means the price is off by a factor of the unit's decimals in one direction or the other — the amount-not-atomic mistake on the second wire."
canonical: "https://scvd.store/defects/mpp-amount-not-integer"
url: "https://scvd.store/defects/mpp-amount-not-integer"
term_code: "mpp-amount-not-integer"
defined_in: "https://scvd.store/defects"
data: "https://scvd.store/defects.json"
vocabulary_version: "22"
license: "https://creativecommons.org/licenses/by/4.0/"
---

# MPP amount not an integer string in the smallest unit

`mpp-amount-not-integer` — an x402 defect class.

**Asserts:** The request's amount is a base-10 integer string with no sign, point or exponent.

**Costs:** A decimal or a number usually means the price is off by a factor of the unit's decimals in one direction or the other — the amount-not-atomic mistake on the second wire.

**Detectable:** unpaid — a free probe can see it

**Falsified by:** The amount parsing as a digit string at the stated moment.

**How an operator clears it:** Write amount as an integer string of the smallest unit — cents for fiat, the token's smallest unit for chains — derived from one constant so the discovery document and the challenge cannot disagree.

**What a buyer does:** Do not pay a decimal amount: the true price is unknowable from it. Refuse, and if you must proceed, get the integer amount and its unit from the operator in writing first.

**Our signal:** `mpp-amount-shape`

---

Vocabulary v22, CC BY 4.0. Every class: https://scvd.store/defects. Machine-readable, with falsifiers and cross-instrument mappings: https://scvd.store/defects.json.

A class describes a property of one endpoint at one moment and never accumulates into a judgment on an operator.
