Verify

Verify before pay (protocol payload)

Verify-before-pay for agent-payment protocols, taking the raw protocol payload: an x402 402 Payment Required challenge body, an AP2 CartMandate/PaymentMandate, or an ACP merchant + checkout context. Faro extracts the counterparty (merchant → payee check, endpoint/site → URL check, receiving address → payee + on-chain screening), verifies each in parallel, and returns the riskiest verdict. A payload Faro cannot parse degrades to 🟡/review — never an error, never a false 🟢. Advisory only: Faro does not settle, authorize, or move funds.

post/v1/verify/before-pay

Request

  • Base URL: https://api.farofinance.app
  • URL: https://api.farofinance.app/v1/verify/before-pay
  • Auth: HTTP bearer

Request body

protocol'ap2' | 'x402' | 'acp' required
payloadobject required

The protocol object itself: the 402 challenge JSON (x402), the CartMandate/PaymentMandate (AP2), or the merchant + checkout context (ACP).

regionstring nullable

Optional ISO 3166-1 alpha-2 region hint (e.g. IN, US) used only to interpret a bare phone number that has no country code. Labelling context only — it never changes the reputation node, sanctions, or the verdict. A number written in full +<country code> form is identified regardless.

Example request

{
  "region": "IN"
}

Response

The verdict for the artifact.

verdict'green' | 'yellow' | 'red' required
confidencenumber required

Calibrated confidence in the verdict (honest about data completeness).

reasonstring required

One plain-language line explaining the verdict — always present.

recommended_action'allow' | 'warn' | 'block' | 'review' required
explanationstring nullable

Optional longer context (e.g. session repeat-check notes).

request_idstring required

Unique id for this request (also in the X-Request-ID response header).

cachedboolean

True when served from the verdict cache (X-Faro-Cache: hit).

first_seenstring date-time nullable

When Faro first saw this normalized node in the reputation graph.

checked_atstring date-time nullable

When this verdict was computed.

Changes

No recorded changes to this operation across all 1 revision of this API.