uvd-x402-sdk 2.1.0 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +280 -15
  2. package/dist/adapters/index.d.mts +1 -1
  3. package/dist/adapters/index.d.ts +1 -1
  4. package/dist/adapters/index.js +138 -0
  5. package/dist/adapters/index.js.map +1 -1
  6. package/dist/adapters/index.mjs +138 -0
  7. package/dist/adapters/index.mjs.map +1 -1
  8. package/dist/{index-MTBgC_SL.d.mts → index-BG738nMY.d.mts} +43 -4
  9. package/dist/{index-MTBgC_SL.d.ts → index-BG738nMY.d.ts} +43 -4
  10. package/dist/{index-Db8dWNam.d.ts → index-I60aHxwu.d.mts} +33 -2
  11. package/dist/{index-D0N_SYpK.d.mts → index-OZTSi1rJ.d.ts} +33 -2
  12. package/dist/index.d.mts +2 -2
  13. package/dist/index.d.ts +2 -2
  14. package/dist/index.js +180 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/index.mjs +177 -1
  17. package/dist/index.mjs.map +1 -1
  18. package/dist/providers/evm/index.d.mts +19 -3
  19. package/dist/providers/evm/index.d.ts +19 -3
  20. package/dist/providers/evm/index.js +198 -12
  21. package/dist/providers/evm/index.js.map +1 -1
  22. package/dist/providers/evm/index.mjs +198 -12
  23. package/dist/providers/evm/index.mjs.map +1 -1
  24. package/dist/providers/near/index.d.mts +1 -1
  25. package/dist/providers/near/index.d.ts +1 -1
  26. package/dist/providers/near/index.js.map +1 -1
  27. package/dist/providers/near/index.mjs.map +1 -1
  28. package/dist/providers/solana/index.d.mts +1 -1
  29. package/dist/providers/solana/index.d.ts +1 -1
  30. package/dist/providers/solana/index.js +138 -0
  31. package/dist/providers/solana/index.js.map +1 -1
  32. package/dist/providers/solana/index.mjs +138 -0
  33. package/dist/providers/solana/index.mjs.map +1 -1
  34. package/dist/providers/stellar/index.d.mts +1 -1
  35. package/dist/providers/stellar/index.d.ts +1 -1
  36. package/dist/providers/stellar/index.js.map +1 -1
  37. package/dist/providers/stellar/index.mjs.map +1 -1
  38. package/dist/react/index.d.mts +3 -3
  39. package/dist/react/index.d.ts +3 -3
  40. package/dist/react/index.js +138 -0
  41. package/dist/react/index.js.map +1 -1
  42. package/dist/react/index.mjs +138 -0
  43. package/dist/react/index.mjs.map +1 -1
  44. package/dist/utils/index.d.mts +1 -1
  45. package/dist/utils/index.d.ts +1 -1
  46. package/dist/utils/index.js +138 -0
  47. package/dist/utils/index.js.map +1 -1
  48. package/dist/utils/index.mjs +138 -0
  49. package/dist/utils/index.mjs.map +1 -1
  50. package/package.json +5 -2
  51. package/src/chains/index.ts +225 -1
  52. package/src/index.ts +9 -0
  53. package/src/providers/evm/index.ts +64 -16
  54. package/src/types/index.ts +44 -3
package/README.md CHANGED
@@ -2,17 +2,19 @@
2
2
 
3
3
  > Gasless crypto payments across 14 blockchain networks using the x402 protocol.
4
4
 
5
- The x402 SDK enables any application to accept USDC payments without requiring users to pay gas fees. Users sign a message or transaction, and the Ultravioleta facilitator handles on-chain settlement.
5
+ The x402 SDK enables any application to accept stablecoin payments (USDC, EURC, AUSD, PYUSD) without requiring users to pay gas fees. Users sign a message or transaction, and the Ultravioleta facilitator handles on-chain settlement.
6
6
 
7
7
  ## Features
8
8
 
9
9
  - **14 Supported Networks**: EVM chains, Solana, Fogo, Stellar, and NEAR
10
+ - **Multi-Stablecoin**: USDC, EURC, AUSD, PYUSD support on EVM chains
10
11
  - **x402 v1 & v2**: Full support for both protocol versions with automatic detection
11
12
  - **Gasless Payments**: Users never pay gas - the facilitator covers all network fees
12
13
  - **Multi-Network**: Accept payments on multiple networks simultaneously
13
14
  - **Type-Safe**: Comprehensive TypeScript definitions
14
15
  - **Framework Agnostic**: Works with any JavaScript framework
15
16
  - **React Hooks**: First-class React integration
17
+ - **Wagmi/RainbowKit**: Dedicated adapter for wagmi-based apps
16
18
  - **Modular**: Import only what you need
17
19
 
18
20
  ## Quick Start
@@ -126,6 +128,117 @@ const result = await client.createPayment({
126
128
 
127
129
  ---
128
130
 
131
+ ## Wagmi / RainbowKit Integration
132
+
133
+ If you're using wagmi with RainbowKit, ConnectKit, or other wagmi-based wallet libraries, use the dedicated wagmi adapter:
134
+
135
+ ```typescript
136
+ import { useWalletClient } from 'wagmi';
137
+ import { createPaymentFromWalletClient } from 'uvd-x402-sdk/wagmi';
138
+
139
+ function PayButton() {
140
+ const { data: walletClient } = useWalletClient();
141
+
142
+ const handlePay = async () => {
143
+ const paymentHeader = await createPaymentFromWalletClient(walletClient, {
144
+ recipient: '0xD3868E1eD738CED6945A574a7c769433BeD5d474',
145
+ amount: '10.00',
146
+ chainName: 'base', // optional, defaults to 'base'
147
+ });
148
+
149
+ // Use in your API request
150
+ await fetch('/api/purchase', {
151
+ headers: { 'X-PAYMENT': paymentHeader },
152
+ method: 'POST',
153
+ });
154
+ };
155
+
156
+ return <button onClick={handlePay}>Pay $10 USDC</button>;
157
+ }
158
+ ```
159
+
160
+ ### With the Helper Hook
161
+
162
+ ```typescript
163
+ import { useWalletClient } from 'wagmi';
164
+ import { useX402Wagmi } from 'uvd-x402-sdk/wagmi';
165
+
166
+ function PayButton() {
167
+ const { data: walletClient } = useWalletClient();
168
+ const { createPayment, isReady } = useX402Wagmi(walletClient);
169
+
170
+ const handlePay = async () => {
171
+ const paymentHeader = await createPayment({
172
+ recipient: '0xD3868E1eD738CED6945A574a7c769433BeD5d474',
173
+ amount: '10.00',
174
+ });
175
+
176
+ await fetch('/api/purchase', {
177
+ headers: { 'X-PAYMENT': paymentHeader },
178
+ });
179
+ };
180
+
181
+ return (
182
+ <button onClick={handlePay} disabled={!isReady}>
183
+ Pay $10 USDC
184
+ </button>
185
+ );
186
+ }
187
+ ```
188
+
189
+ ### Full Example with RainbowKit
190
+
191
+ ```tsx
192
+ import { ConnectButton } from '@rainbow-me/rainbowkit';
193
+ import { useWalletClient, useAccount } from 'wagmi';
194
+ import { createPaymentFromWalletClient } from 'uvd-x402-sdk/wagmi';
195
+
196
+ function App() {
197
+ const { data: walletClient } = useWalletClient();
198
+ const { isConnected } = useAccount();
199
+
200
+ const handlePurchase = async () => {
201
+ if (!walletClient) return;
202
+
203
+ try {
204
+ const paymentHeader = await createPaymentFromWalletClient(walletClient, {
205
+ recipient: '0xD3868E1eD738CED6945A574a7c769433BeD5d474',
206
+ amount: '5.00',
207
+ chainName: 'base',
208
+ });
209
+
210
+ const response = await fetch('/api/purchase', {
211
+ method: 'POST',
212
+ headers: {
213
+ 'Content-Type': 'application/json',
214
+ 'X-PAYMENT': paymentHeader,
215
+ },
216
+ body: JSON.stringify({ item: 'premium-feature' }),
217
+ });
218
+
219
+ if (response.ok) {
220
+ alert('Purchase successful!');
221
+ }
222
+ } catch (error) {
223
+ console.error('Payment failed:', error);
224
+ }
225
+ };
226
+
227
+ return (
228
+ <div>
229
+ <ConnectButton />
230
+ {isConnected && (
231
+ <button onClick={handlePurchase}>
232
+ Buy Premium ($5 USDC)
233
+ </button>
234
+ )}
235
+ </div>
236
+ );
237
+ }
238
+ ```
239
+
240
+ ---
241
+
129
242
  ## Network Examples
130
243
 
131
244
  ### EVM Chains (10 Networks)
@@ -557,6 +670,116 @@ const options = generatePaymentOptions(chains, '10.00');
557
670
 
558
671
  ---
559
672
 
673
+ ## Multi-Stablecoin Support (EVM)
674
+
675
+ EVM chains support multiple stablecoins beyond USDC. Token availability varies by chain.
676
+
677
+ ### Supported Tokens
678
+
679
+ | Token | Description | Decimals | Chains |
680
+ |-------|-------------|----------|--------|
681
+ | USDC | USD Coin (Circle) | 6 | All EVM chains |
682
+ | EURC | Euro Coin (Circle) | 6 | Ethereum, Base, Avalanche |
683
+ | AUSD | Agora USD | 6 | Ethereum, Avalanche, Polygon, Arbitrum, Monad |
684
+ | PYUSD | PayPal USD | 6 | Ethereum |
685
+
686
+ ### Basic Usage
687
+
688
+ ```typescript
689
+ import { X402Client } from 'uvd-x402-sdk';
690
+
691
+ const client = new X402Client({ defaultChain: 'base' });
692
+ await client.connect('base');
693
+
694
+ // Pay with EURC instead of USDC
695
+ const result = await client.createPayment({
696
+ recipient: '0xD3868E1eD738CED6945A574a7c769433BeD5d474',
697
+ amount: '10.00',
698
+ tokenType: 'eurc', // 'usdc' | 'eurc' | 'ausd' | 'pyusd'
699
+ });
700
+ ```
701
+
702
+ ### Check Token Availability
703
+
704
+ ```typescript
705
+ import {
706
+ getSupportedTokens,
707
+ isTokenSupported,
708
+ getTokenConfig,
709
+ getChainsByToken,
710
+ } from 'uvd-x402-sdk';
711
+
712
+ // Get all tokens supported on a chain
713
+ const tokens = getSupportedTokens('ethereum');
714
+ // Returns: ['usdc', 'eurc', 'ausd', 'pyusd']
715
+
716
+ const baseTokens = getSupportedTokens('base');
717
+ // Returns: ['usdc', 'eurc']
718
+
719
+ // Check if a specific token is supported
720
+ if (isTokenSupported('base', 'eurc')) {
721
+ console.log('EURC available on Base');
722
+ }
723
+
724
+ // Get token configuration (address, decimals, name)
725
+ const eurcConfig = getTokenConfig('ethereum', 'eurc');
726
+ // Returns: { address: '0x1aBa...', decimals: 6, name: 'EURC', version: '2' }
727
+
728
+ // Find all chains that support a token
729
+ const eurcChains = getChainsByToken('eurc');
730
+ // Returns: [baseConfig, ethereumConfig, avalancheConfig]
731
+ ```
732
+
733
+ ### Check Token Balance
734
+
735
+ ```typescript
736
+ import { EVMProvider } from 'uvd-x402-sdk';
737
+ import { getChainByName } from 'uvd-x402-sdk';
738
+
739
+ const evm = new EVMProvider();
740
+ await evm.connect();
741
+
742
+ const chainConfig = getChainByName('ethereum')!;
743
+
744
+ // Check USDC balance (default)
745
+ const usdcBalance = await evm.getBalance(chainConfig);
746
+
747
+ // Check EURC balance
748
+ const eurcBalance = await evm.getBalance(chainConfig, 'eurc');
749
+
750
+ // Check PYUSD balance
751
+ const pyusdBalance = await evm.getBalance(chainConfig, 'pyusd');
752
+ ```
753
+
754
+ ### Wagmi/RainbowKit with Multi-Token
755
+
756
+ ```typescript
757
+ import { useWalletClient } from 'wagmi';
758
+ import { createPaymentFromWalletClient } from 'uvd-x402-sdk/wagmi';
759
+
760
+ function PayWithEURC() {
761
+ const { data: walletClient } = useWalletClient();
762
+
763
+ const handlePay = async () => {
764
+ const paymentHeader = await createPaymentFromWalletClient(walletClient, {
765
+ recipient: '0xD3868E1eD738CED6945A574a7c769433BeD5d474',
766
+ amount: '10.00',
767
+ chainName: 'base',
768
+ tokenType: 'eurc', // Pay with EURC
769
+ });
770
+
771
+ await fetch('/api/purchase', {
772
+ headers: { 'X-PAYMENT': paymentHeader },
773
+ method: 'POST',
774
+ });
775
+ };
776
+
777
+ return <button onClick={handlePay}>Pay 10 EURC</button>;
778
+ }
779
+ ```
780
+
781
+ ---
782
+
560
783
  ## React Integration
561
784
 
562
785
  ```tsx
@@ -612,18 +835,18 @@ function PaymentPage() {
612
835
 
613
836
  ### EVM Networks (10)
614
837
 
615
- | Network | Chain ID | USDC Decimals | Status |
616
- |---------|----------|---------------|--------|
617
- | Base | 8453 | 6 | Enabled |
618
- | Ethereum | 1 | 6 | Enabled |
619
- | Polygon | 137 | 6 | Enabled |
620
- | Arbitrum | 42161 | 6 | Enabled |
621
- | Optimism | 10 | 6 | Enabled |
622
- | Avalanche | 43114 | 6 | Enabled |
623
- | Celo | 42220 | 6 | Enabled |
624
- | HyperEVM | 999 | 6 | Enabled |
625
- | Unichain | 130 | 6 | Enabled |
626
- | Monad | 143 | 6 | Enabled |
838
+ | Network | Chain ID | Tokens | Status |
839
+ |---------|----------|--------|--------|
840
+ | Ethereum | 1 | USDC, EURC, AUSD, PYUSD | Enabled |
841
+ | Base | 8453 | USDC, EURC | Enabled |
842
+ | Avalanche | 43114 | USDC, EURC, AUSD | Enabled |
843
+ | Arbitrum | 42161 | USDC, AUSD | Enabled |
844
+ | Polygon | 137 | USDC, AUSD | Enabled |
845
+ | Monad | 143 | USDC, AUSD | Enabled |
846
+ | Optimism | 10 | USDC | Enabled |
847
+ | Celo | 42220 | USDC | Enabled |
848
+ | HyperEVM | 999 | USDC | Enabled |
849
+ | Unichain | 130 | USDC | Enabled |
627
850
 
628
851
  ### SVM Networks (2)
629
852
 
@@ -667,8 +890,8 @@ interface X402ClientConfig {
667
890
  | `connect(chainName?)` | Connect wallet to specified chain |
668
891
  | `disconnect()` | Disconnect current wallet |
669
892
  | `switchChain(chainName)` | Switch to different EVM chain |
670
- | `createPayment(paymentInfo)` | Create payment authorization |
671
- | `getBalance()` | Get USDC balance on current chain |
893
+ | `createPayment(paymentInfo)` | Create payment authorization (supports `tokenType` in paymentInfo) |
894
+ | `getBalance(tokenType?)` | Get token balance on current chain (defaults to USDC) |
672
895
  | `getState()` | Get current wallet state |
673
896
  | `isConnected()` | Check if wallet is connected |
674
897
  | `on(event, handler)` | Subscribe to events |
@@ -686,9 +909,23 @@ import {
686
909
  isSVMChain,
687
910
  getExplorerTxUrl,
688
911
  getExplorerAddressUrl,
912
+ // Multi-token utilities
913
+ getTokenConfig,
914
+ getSupportedTokens,
915
+ isTokenSupported,
916
+ getChainsByToken,
689
917
  } from 'uvd-x402-sdk';
690
918
  ```
691
919
 
920
+ ### Token Utilities
921
+
922
+ | Function | Description |
923
+ |----------|-------------|
924
+ | `getTokenConfig(chain, tokenType)` | Get token config (address, decimals, name, version) |
925
+ | `getSupportedTokens(chain)` | Get array of supported token types for a chain |
926
+ | `isTokenSupported(chain, tokenType)` | Check if token is available on chain |
927
+ | `getChainsByToken(tokenType)` | Get all chains that support a specific token |
928
+
692
929
  ### x402 Utilities
693
930
 
694
931
  ```typescript
@@ -705,6 +942,34 @@ import {
705
942
  } from 'uvd-x402-sdk';
706
943
  ```
707
944
 
945
+ ### Wagmi Adapter
946
+
947
+ ```typescript
948
+ import {
949
+ createPaymentFromWalletClient,
950
+ createPaymentWithResult,
951
+ useX402Wagmi,
952
+ } from 'uvd-x402-sdk/wagmi';
953
+ ```
954
+
955
+ | Function | Description |
956
+ |----------|-------------|
957
+ | `createPaymentFromWalletClient(walletClient, options)` | Create payment header using wagmi's WalletClient |
958
+ | `createPaymentWithResult(walletClient, options)` | Same as above but returns full PaymentResult |
959
+ | `useX402Wagmi(walletClient)` | Helper hook returning `{ createPayment, isReady }` |
960
+
961
+ #### Options
962
+
963
+ ```typescript
964
+ interface WagmiPaymentOptions {
965
+ recipient: string; // Recipient address
966
+ amount: string; // Amount in token (e.g., "10.00")
967
+ chainName?: string; // Chain name (default: 'base')
968
+ tokenType?: TokenType; // Token type (default: 'usdc')
969
+ validitySeconds?: number; // Signature validity window (default: 300)
970
+ }
971
+ ```
972
+
708
973
  ---
709
974
 
710
975
  ## Error Handling
@@ -1,4 +1,4 @@
1
- import { e as PaymentResult } from '../index-MTBgC_SL.mjs';
1
+ import { f as PaymentResult } from '../index-BG738nMY.mjs';
2
2
 
3
3
  /**
4
4
  * uvd-x402-sdk - Wagmi/Viem Adapter
@@ -1,4 +1,4 @@
1
- import { e as PaymentResult } from '../index-MTBgC_SL.js';
1
+ import { f as PaymentResult } from '../index-BG738nMY.js';
2
2
 
3
3
  /**
4
4
  * uvd-x402-sdk - Wagmi/Viem Adapter
@@ -25,6 +25,20 @@ var SUPPORTED_CHAINS = {
25
25
  name: "USD Coin",
26
26
  version: "2"
27
27
  },
28
+ tokens: {
29
+ usdc: {
30
+ address: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
31
+ decimals: 6,
32
+ name: "USD Coin",
33
+ version: "2"
34
+ },
35
+ eurc: {
36
+ address: "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
37
+ decimals: 6,
38
+ name: "EURC",
39
+ version: "2"
40
+ }
41
+ },
28
42
  x402: {
29
43
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
30
44
  enabled: true
@@ -49,6 +63,26 @@ var SUPPORTED_CHAINS = {
49
63
  name: "USD Coin",
50
64
  version: "2"
51
65
  },
66
+ tokens: {
67
+ usdc: {
68
+ address: "0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",
69
+ decimals: 6,
70
+ name: "USD Coin",
71
+ version: "2"
72
+ },
73
+ eurc: {
74
+ address: "0xC891EB4cbdEFf6e073e859e987815Ed1505c2ACD",
75
+ decimals: 6,
76
+ name: "EURC",
77
+ version: "2"
78
+ },
79
+ ausd: {
80
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
81
+ decimals: 6,
82
+ name: "Agora USD",
83
+ version: "1"
84
+ }
85
+ },
52
86
  x402: {
53
87
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
54
88
  enabled: true
@@ -73,6 +107,32 @@ var SUPPORTED_CHAINS = {
73
107
  name: "USD Coin",
74
108
  version: "2"
75
109
  },
110
+ tokens: {
111
+ usdc: {
112
+ address: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
113
+ decimals: 6,
114
+ name: "USD Coin",
115
+ version: "2"
116
+ },
117
+ eurc: {
118
+ address: "0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c",
119
+ decimals: 6,
120
+ name: "EURC",
121
+ version: "2"
122
+ },
123
+ ausd: {
124
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
125
+ decimals: 6,
126
+ name: "Agora USD",
127
+ version: "1"
128
+ },
129
+ pyusd: {
130
+ address: "0x6c3ea9036406852006290770BEdFcAbA0e23A0e8",
131
+ decimals: 6,
132
+ name: "PayPal USD",
133
+ version: "1"
134
+ }
135
+ },
76
136
  x402: {
77
137
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
78
138
  enabled: true
@@ -97,6 +157,20 @@ var SUPPORTED_CHAINS = {
97
157
  name: "USD Coin",
98
158
  version: "2"
99
159
  },
160
+ tokens: {
161
+ usdc: {
162
+ address: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
163
+ decimals: 6,
164
+ name: "USD Coin",
165
+ version: "2"
166
+ },
167
+ ausd: {
168
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
169
+ decimals: 6,
170
+ name: "Agora USD",
171
+ version: "1"
172
+ }
173
+ },
100
174
  x402: {
101
175
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
102
176
  enabled: true
@@ -121,6 +195,20 @@ var SUPPORTED_CHAINS = {
121
195
  name: "USD Coin",
122
196
  version: "2"
123
197
  },
198
+ tokens: {
199
+ usdc: {
200
+ address: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
201
+ decimals: 6,
202
+ name: "USD Coin",
203
+ version: "2"
204
+ },
205
+ ausd: {
206
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
207
+ decimals: 6,
208
+ name: "Agora USD",
209
+ version: "1"
210
+ }
211
+ },
124
212
  x402: {
125
213
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
126
214
  enabled: true
@@ -145,6 +233,14 @@ var SUPPORTED_CHAINS = {
145
233
  name: "USD Coin",
146
234
  version: "2"
147
235
  },
236
+ tokens: {
237
+ usdc: {
238
+ address: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
239
+ decimals: 6,
240
+ name: "USD Coin",
241
+ version: "2"
242
+ }
243
+ },
148
244
  x402: {
149
245
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
150
246
  enabled: true
@@ -170,6 +266,15 @@ var SUPPORTED_CHAINS = {
170
266
  // Celo uses "USDC" not "USD Coin" for EIP-712
171
267
  version: "2"
172
268
  },
269
+ tokens: {
270
+ usdc: {
271
+ address: "0xcebA9300f2b948710d2653dD7B07f33A8B32118C",
272
+ decimals: 6,
273
+ name: "USDC",
274
+ // Celo uses "USDC" not "USD Coin" for EIP-712
275
+ version: "2"
276
+ }
277
+ },
173
278
  x402: {
174
279
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
175
280
  enabled: true
@@ -195,6 +300,15 @@ var SUPPORTED_CHAINS = {
195
300
  // HyperEVM uses "USDC" not "USD Coin"
196
301
  version: "2"
197
302
  },
303
+ tokens: {
304
+ usdc: {
305
+ address: "0xb88339CB7199b77E23DB6E890353E22632Ba630f",
306
+ decimals: 6,
307
+ name: "USDC",
308
+ // HyperEVM uses "USDC" not "USD Coin"
309
+ version: "2"
310
+ }
311
+ },
198
312
  x402: {
199
313
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
200
314
  enabled: true
@@ -220,6 +334,15 @@ var SUPPORTED_CHAINS = {
220
334
  // Unichain uses "USDC" not "USD Coin"
221
335
  version: "2"
222
336
  },
337
+ tokens: {
338
+ usdc: {
339
+ address: "0x078d782b760474a361dda0af3839290b0ef57ad6",
340
+ decimals: 6,
341
+ name: "USDC",
342
+ // Unichain uses "USDC" not "USD Coin"
343
+ version: "2"
344
+ }
345
+ },
223
346
  x402: {
224
347
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
225
348
  enabled: true
@@ -245,6 +368,21 @@ var SUPPORTED_CHAINS = {
245
368
  // Monad uses "USDC" not "USD Coin"
246
369
  version: "2"
247
370
  },
371
+ tokens: {
372
+ usdc: {
373
+ address: "0x754704bc059f8c67012fed69bc8a327a5aafb603",
374
+ decimals: 6,
375
+ name: "USDC",
376
+ // Monad uses "USDC" not "USD Coin"
377
+ version: "2"
378
+ },
379
+ ausd: {
380
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
381
+ decimals: 6,
382
+ name: "Agora USD",
383
+ version: "1"
384
+ }
385
+ },
248
386
  x402: {
249
387
  facilitatorUrl: DEFAULT_FACILITATOR_URL,
250
388
  enabled: true