{"_id":"@awesome402/sdk","name":"@awesome402/sdk","dist-tags":{"latest":"0.7.0"},"versions":{"0.7.0":{"name":"@awesome402/sdk","version":"0.7.0","description":"TypeScript SDK for x402 payment facilitation","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","scripts":{"build":"tsup src/index.ts --format cjs,esm --dts","dev":"tsup src/index.ts --format cjs,esm --dts --watch","test":"vitest","lint":"tsc --noEmit","clean":"rm -rf dist"},"keywords":["x402","payments","crypto","facilitator","solana","evm","base"],"author":"","license":"MIT","repository":{"type":"git","url":"git+https://github.com/awesome402/x402.git"},"devDependencies":{"tsup":"^8.0.0","typescript":"^5.0.0","vitest":"^1.0.0"},"engines":{"node":">=18"},"_id":"@awesome402/sdk@0.7.0","bugs":{"url":"https://github.com/awesome402/x402/issues"},"homepage":"https://github.com/awesome402/x402#readme","_nodeVersion":"22.16.0","_npmVersion":"11.4.2","dist":{"integrity":"sha512-DMqNaiKZyBhPy+rG0+t/8395e8wLDCj4ZllSgdiSlTKDwELyFHLRmFCWTHRR6IlZNPuzrb6XKl6JKzzs0lMQkA==","shasum":"1c94ff6b6509e520e953b2c9d191d3517fed6399","tarball":"https://registry.npmjs.org/@awesome402/sdk/-/sdk-0.7.0.tgz","fileCount":6,"unpackedSize":115690,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDeeJNUjbXlAfZvMKnmUYrOP4VkXBvwMkLzTTpXFzoRtgIhALM8vb4n4uBUuoeTqYzA+Xj5wXAP/TIhUcTHci4kAxVw"}]},"_npmUser":{"name":"awesome402","email":"sw@ccrar.xyz"},"directories":{},"maintainers":[{"name":"awesome402","email":"sw@ccrar.xyz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.7.0_1769186669393_0.817078991926814"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-23T16:44:29.279Z","0.7.0":"2026-01-23T16:44:29.528Z","modified":"2026-01-23T16:44:29.752Z"},"maintainers":[{"name":"awesome402","email":"sw@ccrar.xyz"}],"description":"TypeScript SDK for x402 payment facilitation","homepage":"https://github.com/awesome402/x402#readme","keywords":["x402","payments","crypto","facilitator","solana","evm","base"],"repository":{"type":"git","url":"git+https://github.com/awesome402/x402.git"},"bugs":{"url":"https://github.com/awesome402/x402/issues"},"license":"MIT","readme":"# @awesome402/sdk\n\nTypeScript SDK for x402 payment facilitation. Works with Awesome402 or any x402-compatible facilitator.\n\n## Installation\n\n```bash\nnpm install @awesome402/sdk\n```\n\n## Quick Start\n\n```typescript\nimport { Awesome402 } from '@awesome402/sdk';\n\n// Use custom facilitator\nconst facilitator = new Awesome402({\n  url: 'https://pay.yourdomain.com',\n});\n\n// Or use the default Awesome402\nimport { createDefaultFacilitator } from '@awesome402/sdk';\nconst facilitator = createDefaultFacilitator();\n```\n\n## Usage\n\n### Verify a Payment\n\n```typescript\n// Payment payload from the client\nconst payment = {\n  x402Version: 1,\n  scheme: 'exact',\n  network: 'base',\n  payload: {\n    signature: '0x...',\n    authorization: {\n      from: '0xSenderAddress',\n      to: '0xRecipientAddress',\n      amount: '1000000',\n      asset: '0xTokenAddress',\n    },\n  },\n};\n\n// Requirements from the server/resource\nconst requirements = {\n  scheme: 'exact',\n  network: 'base',\n  maxAmountRequired: '1000000',\n  asset: '0xTokenAddress',\n  payTo: '0xRecipientAddress',\n};\n\nconst result = await facilitator.verify(payment, requirements);\n\nif (result.valid) {\n  console.log('Payment is valid!');\n} else {\n  console.error('Invalid payment:', result.error);\n}\n```\n\n### Settle a Payment\n\n```typescript\nconst result = await facilitator.settle(payment, requirements);\n\nif (result.success) {\n  console.log('Transaction hash:', result.transactionHash);\n} else {\n  console.error('Settlement failed:', result.error);\n}\n```\n\n### Get Supported Networks\n\n```typescript\nconst supported = await facilitator.supported();\n\nconsole.log('Supported networks:');\nsupported.kinds.forEach(kind => {\n  console.log(`- ${kind.network} (v${kind.x402Version})`);\n});\n```\n\n### Network Utilities\n\n```typescript\nimport {\n  getNetwork,\n  getNetworkType,\n  toV2NetworkId,\n  NETWORKS,\n} from '@awesome402/sdk';\n\n// Get network info\nconst base = getNetwork('base');\nconsole.log(base?.chainId); // 8453\n\n// Convert v1 to v2 ID\nconst v2Id = toV2NetworkId('base'); // 'eip155:8453'\n\n// Get all mainnets\nconst mainnets = NETWORKS.filter(n => !n.testnet);\n```\n\n## Error Handling\n\n```typescript\nimport {\n  FacilitatorError,\n  VerificationError,\n  SettlementError,\n} from '@awesome402/sdk';\n\ntry {\n  await facilitator.settle(payment, requirements);\n} catch (error) {\n  if (error instanceof SettlementError) {\n    console.error('Settlement failed:', error.message);\n  } else if (error instanceof FacilitatorError) {\n    console.error('Facilitator error:', error.code, error.message);\n  }\n}\n```\n\n## x402 Version Support\n\nThis SDK supports both x402 v1 and v2:\n\n- **v1**: Human-readable network names (`base`, `solana`)\n- **v2**: CAIP-2 chain identifiers (`eip155:8453`, `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`)\n\n## Supported Networks\n\n### EVM Mainnets\n\n| Network   | v1 ID       | v2 ID (CAIP-2)   | Chain ID |\n| --------- | ----------- | ---------------- | -------- |\n| Base      | `base`      | `eip155:8453`    | 8453     |\n| Polygon   | `polygon`   | `eip155:137`     | 137      |\n| Avalanche | `avalanche` | `eip155:43114`   | 43114    |\n| Sei       | `sei`       | `eip155:1329`    | 1329     |\n| IoTeX     | `iotex`     | `eip155:4689`    | 4689     |\n| Peaq      | `peaq`      | `eip155:3338`    | 3338     |\n| X Layer   | `xlayer`    | `eip155:196`     | 196      |\n\n### Solana\n\n| Network       | v1 ID           | v2 ID (CAIP-2)                           |\n| ------------- | --------------- | ---------------------------------------- |\n| Solana        | `solana`        | `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp` |\n| Solana Devnet | `solana-devnet` | `solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1` |\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-356ce031345f1df7e77937c3305b4c15"}