# `invalid_exact_evm_payload_authorization_valid_before`

> The payment authorization has expired, or expires within the next few seconds. What causes this x402 error and how to fix it.

The payment authorization has expired, or expires within the next few seconds.

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

## Cause

The authorization's `validBefore` timestamp is earlier than the facilitator's clock plus six seconds. The buyer sets it from the quote's `maxTimeoutSeconds`.

## Fix

- Buyer: sign a fresh authorization and send it straight away. Do not reuse one from an earlier attempt.
- Buyer: check the system clock. A clock running behind produces authorizations that are already expired.
- Seller: a very small `maxTimeoutSeconds` leaves no time to deliver the payment. Sixty seconds is the usual default.

## 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_payload_authorization_valid_before
