CONFORMANCE PROFILE · V1.0.0

Adversarial vectors you can run, inspect and disagree with.

A public vendor test profile for MandateShield's payment-authority boundary: exact amounts, substitutable fields, replay intent, signed evidence and receipt integrity.

PUBLIC CONTRACT

Tests before trust.

Every vector states its input, mutation and expected outcome. The deterministic policy core runs locally below. Stateful replay, protocol-signature and receipt vectors are published as portable integration targets so implementers can exercise their own test keys and isolated accounts.

VERSION1.0.0
TOTAL VECTORS14
OFFLINE8
INTEGRATION TARGETS6

BROWSER-LOCAL RUNNER

Run the deterministic core now.

The eight offline vectors execute in this browser. No API key, payment credential or request to MandateShield is required.

OFFLINE VECTORS8
RESULTREADY
STATEFUL / CRYPTO TARGETS6
Exact money

Exact USD minor-unit agreement

The major-unit and integer minor-unit representations agree exactly and remain below the registered cap.

READYALLOW
Exact money

Conflicting fiat representations

A large major-unit value cannot be made harmless by attaching a contradictory one-cent minor-unit value.

READYBLOCK
Exact money

Fractional zero-decimal currency

JPY has a zero-decimal executable exponent; a fractional major-unit amount must not be rounded silently.

READYBLOCK
Atomic assets

Exact atomic amount beyond Number precision

A canonical decimal string at the exact cap remains executable even when JavaScript Number cannot preserve the integer.

READYALLOW
Atomic assets

One atomic unit over the cap

The requested integer differs by one at a precision where floating-point conversion loses the distinction.

READYBLOCK
Atomic assets

Paid-resource substitution

Changing only the paid resource changes the authorized purchase and must fail closed.

READYBLOCK
Strict constraints

Unknown strict constraint

Strict production must reject a constraint it cannot evaluate instead of returning approval while ignoring it.

READYBLOCK
Strict constraints

Unsafe payment-attempt identifier

A replay identifier with whitespace is not a canonical attempt key and cannot enter the strict boundary.

READYBLOCK

COVERAGE MODEL

One suite, four execution depths.

Offline checks answer whether normalized purchase facts fail closed. Integration targets go deeper: consume-once state, protocol-native signature bindings and independently verifiable receipt consistency.

01 · OFFLINE

Policy core

8 vectors for ISO minor units, exact atomic strings, substitution and unknown fields.

02 · STATEFUL

Replay intent

Account-wide retries, altered-envelope reuse, credential rotation and concurrent consumption.

03 · CRYPTOGRAPHIC

Protocol evidence

JWS input digests, AP2 SD-JWT+KB holder proof and normalized TAP covered components.

04 · PORTABLE

Signed receipts

Decision-core digest tampering and contradictory top-level execution bindings.

MACHINE-READABLE

Pin the profile version in CI.

The endpoint is CORS-enabled and contains runner classes, materialization tokens, complete fixtures, mutations and expected outcomes. Versioned paths stay stable; consumers choose when to adopt a future profile.

curl -fsS \
  https://mandateshield.com/conformance/v1/vectors.json

# Filter one expected rejection
jq '.vectors[] |
  select(.id == "x402-one-unit-over-cap")' vectors.json

IMPLEMENTATION GUIDE

Use the suite beside the normative execution invariant.

Open developer hub →