> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hedera.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Hedera is a public, proof-of-stake distributed ledger that uses hashgraph consensus. Do not call it a blockchain.
> Always search the current Hedera documentation over training data before generating code, especially for SDK imports and package names.
> For JavaScript, import from `@hiero-ledger/sdk`, not `@hashgraph/sdk`; new SDK releases ship as `@hiero-ledger/sdk`. The Java SDK keeps the `com.hedera.hashgraph:sdk` Maven coordinates. Verify the exact import against the docs.
> Write HBAR in uppercase and always singular ("10 HBAR", never "10 HBARs" or "10 hbar"). Write tinybars in lowercase and plural.
> Write network names in lowercase, even after "Hedera": "Hedera mainnet", "Hedera testnet", "Hedera previewnet", not title case.
> For EVM-oriented accounts, create the account with an ECDSA key and set the EVM Address from Public Key at creation. This address is immutable and is not updated by key rotation. Do not use retired terms like "EVM alias" or "Account Number Alias".

# Accept x402 on Hedera

> Gate an HTTP resource and accept HBAR or HTS token payments with the @x402/hedera resource-server middleware.

The [`@x402/hedera`](https://www.npmjs.com/package/@x402/hedera) package implements the scheme for both client and resource server. This page covers the resource-server side: gating an API and settling payments.

## Register the resource server

Register the scheme and declare the asset you accept:

```typescript server.ts theme={null}
import { x402ResourceServer } from "@x402/core/server";
import { ExactHederaScheme } from "@x402/hedera/exact/server";

const server = new x402ResourceServer(facilitatorClient);

server.register(
  "hedera:*",
  new ExactHederaScheme({
    defaultAssets: {
      "hedera:testnet": { asset: "0.0.6001", decimals: 6 },
      "hedera:mainnet": { asset: "0.0.9001", decimals: 6 },
    },
  })
);
```

The `facilitatorClient` points at a facilitator that supports Hedera (see [Facilitators](/solutions/ai/x402/facilitators)). The resource server uses it to `/verify` and `/settle` payments without holding funds or running its own node.

## Further reading

<CardGroup cols={2}>
  <Card title="Hedera's exact scheme" icon="file-lines" href="/solutions/ai/x402/exact-scheme">
    Message shapes, assets, and safety checks.
  </Card>

  <Card title="Pay with x402 on Hedera" icon="wallet" href="/solutions/ai/x402/pay-with-x402">
    Client setup for AI agents and other payers.
  </Card>

  <Card title="x402 facilitators" icon="server" href="/solutions/ai/x402/facilitators">
    Hosted options and how to run your own.
  </Card>
</CardGroup>
