# `invalid_exact_evm_non_canonical_signature`

> The signature is a valid shape but uses the high-`s` form, which is rejected. What causes this x402 error and how to fix it.

The signature is a valid shape but uses the high-`s` form, which is rejected.

|  |  |
| --- | --- |
| Reported by | the facilitator, during verify |
| Usually fixed by | the buyer |

## Cause

A plain ECDSA signature from an ordinary wallet must be in canonical low-`s` form. Tokens such as USDC reject the other form on-chain.

## Fix

- Buyer: sign with a standard library such as viem or ethers, which produce canonical signatures. Hand-rolled signing code is the usual cause.

## About this reference

Causes are taken from the source of `@x402/evm` 2.31. Other facilitators and later versions may use the same code for slightly different checks. See [all x402 errors](https://x402testendpoint.com/errors).

Source: https://x402testendpoint.com/errors/invalid_exact_evm_non_canonical_signature
