uvd-x402-sdk 2.3.0 → 2.5.0

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 (56) hide show
  1. package/dist/adapters/index.d.mts +7 -1
  2. package/dist/adapters/index.d.ts +7 -1
  3. package/dist/adapters/index.js +87 -3
  4. package/dist/adapters/index.js.map +1 -1
  5. package/dist/adapters/index.mjs +87 -3
  6. package/dist/adapters/index.mjs.map +1 -1
  7. package/dist/index.d.mts +1 -1
  8. package/dist/index.d.ts +1 -1
  9. package/dist/index.js +244 -146
  10. package/dist/index.js.map +1 -1
  11. package/dist/index.mjs +243 -147
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/providers/evm/index.d.mts +7 -2
  14. package/dist/providers/evm/index.d.ts +7 -2
  15. package/dist/providers/evm/index.js +101 -13
  16. package/dist/providers/evm/index.js.map +1 -1
  17. package/dist/providers/evm/index.mjs +101 -13
  18. package/dist/providers/evm/index.mjs.map +1 -1
  19. package/dist/providers/near/index.d.mts +6 -2
  20. package/dist/providers/near/index.d.ts +6 -2
  21. package/dist/providers/near/index.js +562 -5
  22. package/dist/providers/near/index.js.map +1 -1
  23. package/dist/providers/near/index.mjs +562 -5
  24. package/dist/providers/near/index.mjs.map +1 -1
  25. package/dist/providers/solana/index.d.mts +6 -4
  26. package/dist/providers/solana/index.d.ts +6 -4
  27. package/dist/providers/solana/index.js +33 -7
  28. package/dist/providers/solana/index.js.map +1 -1
  29. package/dist/providers/solana/index.mjs +33 -7
  30. package/dist/providers/solana/index.mjs.map +1 -1
  31. package/dist/providers/stellar/index.d.mts +6 -2
  32. package/dist/providers/stellar/index.d.ts +6 -2
  33. package/dist/providers/stellar/index.js +568 -11
  34. package/dist/providers/stellar/index.js.map +1 -1
  35. package/dist/providers/stellar/index.mjs +568 -11
  36. package/dist/providers/stellar/index.mjs.map +1 -1
  37. package/dist/react/index.js +96 -12
  38. package/dist/react/index.js.map +1 -1
  39. package/dist/react/index.mjs +96 -12
  40. package/dist/react/index.mjs.map +1 -1
  41. package/dist/utils/index.d.mts +30 -1
  42. package/dist/utils/index.d.ts +30 -1
  43. package/dist/utils/index.js +101 -0
  44. package/dist/utils/index.js.map +1 -1
  45. package/dist/utils/index.mjs +100 -1
  46. package/dist/utils/index.mjs.map +1 -1
  47. package/package.json +1 -1
  48. package/src/adapters/wagmi.ts +20 -5
  49. package/src/client/X402Client.ts +32 -15
  50. package/src/index.ts +3 -0
  51. package/src/providers/evm/index.ts +40 -15
  52. package/src/providers/near/index.ts +25 -8
  53. package/src/providers/solana/index.ts +29 -10
  54. package/src/providers/stellar/index.ts +31 -14
  55. package/src/utils/index.ts +5 -0
  56. package/src/utils/validation.ts +151 -0
@@ -36,6 +36,551 @@ var X402Error = class _X402Error extends Error {
36
36
  }
37
37
  };
38
38
 
39
+ // src/chains/index.ts
40
+ var DEFAULT_FACILITATOR_URL = "https://facilitator.ultravioletadao.xyz";
41
+ var SUPPORTED_CHAINS = {
42
+ // ============================================================================
43
+ // EVM CHAINS (10 networks)
44
+ // ============================================================================
45
+ base: {
46
+ chainId: 8453,
47
+ chainIdHex: "0x2105",
48
+ name: "base",
49
+ displayName: "Base",
50
+ networkType: "evm",
51
+ rpcUrl: "https://mainnet.base.org",
52
+ explorerUrl: "https://basescan.org",
53
+ nativeCurrency: {
54
+ name: "Ethereum",
55
+ symbol: "ETH",
56
+ decimals: 18
57
+ },
58
+ usdc: {
59
+ address: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
60
+ decimals: 6,
61
+ name: "USD Coin",
62
+ version: "2"
63
+ },
64
+ tokens: {
65
+ usdc: {
66
+ address: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
67
+ decimals: 6,
68
+ name: "USD Coin",
69
+ version: "2"
70
+ },
71
+ eurc: {
72
+ address: "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
73
+ decimals: 6,
74
+ name: "EURC",
75
+ version: "2"
76
+ }
77
+ },
78
+ x402: {
79
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
80
+ enabled: true
81
+ }
82
+ },
83
+ avalanche: {
84
+ chainId: 43114,
85
+ chainIdHex: "0xa86a",
86
+ name: "avalanche",
87
+ displayName: "Avalanche C-Chain",
88
+ networkType: "evm",
89
+ rpcUrl: "https://avalanche-c-chain-rpc.publicnode.com",
90
+ explorerUrl: "https://snowtrace.io",
91
+ nativeCurrency: {
92
+ name: "Avalanche",
93
+ symbol: "AVAX",
94
+ decimals: 18
95
+ },
96
+ usdc: {
97
+ address: "0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",
98
+ decimals: 6,
99
+ name: "USD Coin",
100
+ version: "2"
101
+ },
102
+ tokens: {
103
+ usdc: {
104
+ address: "0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",
105
+ decimals: 6,
106
+ name: "USD Coin",
107
+ version: "2"
108
+ },
109
+ eurc: {
110
+ address: "0xC891EB4cbdEFf6e073e859e987815Ed1505c2ACD",
111
+ decimals: 6,
112
+ name: "EURC",
113
+ version: "2"
114
+ },
115
+ ausd: {
116
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
117
+ decimals: 6,
118
+ name: "Agora Dollar",
119
+ version: "1"
120
+ }
121
+ },
122
+ x402: {
123
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
124
+ enabled: true
125
+ }
126
+ },
127
+ ethereum: {
128
+ chainId: 1,
129
+ chainIdHex: "0x1",
130
+ name: "ethereum",
131
+ displayName: "Ethereum",
132
+ networkType: "evm",
133
+ rpcUrl: "https://eth.llamarpc.com",
134
+ explorerUrl: "https://etherscan.io",
135
+ nativeCurrency: {
136
+ name: "Ethereum",
137
+ symbol: "ETH",
138
+ decimals: 18
139
+ },
140
+ usdc: {
141
+ address: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
142
+ decimals: 6,
143
+ name: "USD Coin",
144
+ version: "2"
145
+ },
146
+ tokens: {
147
+ usdc: {
148
+ address: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
149
+ decimals: 6,
150
+ name: "USD Coin",
151
+ version: "2"
152
+ },
153
+ eurc: {
154
+ address: "0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c",
155
+ decimals: 6,
156
+ name: "Euro Coin",
157
+ version: "2"
158
+ },
159
+ ausd: {
160
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
161
+ decimals: 6,
162
+ name: "Agora Dollar",
163
+ version: "1"
164
+ },
165
+ pyusd: {
166
+ address: "0x6c3ea9036406852006290770BEdFcAbA0e23A0e8",
167
+ decimals: 6,
168
+ name: "PayPal USD",
169
+ version: "1"
170
+ }
171
+ },
172
+ x402: {
173
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
174
+ enabled: true
175
+ }
176
+ },
177
+ polygon: {
178
+ chainId: 137,
179
+ chainIdHex: "0x89",
180
+ name: "polygon",
181
+ displayName: "Polygon",
182
+ networkType: "evm",
183
+ rpcUrl: "https://polygon-rpc.com",
184
+ explorerUrl: "https://polygonscan.com",
185
+ nativeCurrency: {
186
+ name: "Polygon",
187
+ symbol: "POL",
188
+ decimals: 18
189
+ },
190
+ usdc: {
191
+ address: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
192
+ decimals: 6,
193
+ name: "USD Coin",
194
+ version: "2"
195
+ },
196
+ tokens: {
197
+ usdc: {
198
+ address: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
199
+ decimals: 6,
200
+ name: "USD Coin",
201
+ version: "2"
202
+ },
203
+ ausd: {
204
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
205
+ decimals: 6,
206
+ name: "Agora Dollar",
207
+ version: "1"
208
+ }
209
+ },
210
+ x402: {
211
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
212
+ enabled: true
213
+ }
214
+ },
215
+ arbitrum: {
216
+ chainId: 42161,
217
+ chainIdHex: "0xa4b1",
218
+ name: "arbitrum",
219
+ displayName: "Arbitrum One",
220
+ networkType: "evm",
221
+ rpcUrl: "https://arb1.arbitrum.io/rpc",
222
+ explorerUrl: "https://arbiscan.io",
223
+ nativeCurrency: {
224
+ name: "Ethereum",
225
+ symbol: "ETH",
226
+ decimals: 18
227
+ },
228
+ usdc: {
229
+ address: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
230
+ decimals: 6,
231
+ name: "USD Coin",
232
+ version: "2"
233
+ },
234
+ tokens: {
235
+ usdc: {
236
+ address: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
237
+ decimals: 6,
238
+ name: "USD Coin",
239
+ version: "2"
240
+ },
241
+ ausd: {
242
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
243
+ decimals: 6,
244
+ name: "Agora Dollar",
245
+ version: "1"
246
+ },
247
+ usdt: {
248
+ address: "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",
249
+ decimals: 6,
250
+ name: "USD\u20AE0",
251
+ version: "1"
252
+ }
253
+ },
254
+ x402: {
255
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
256
+ enabled: true
257
+ }
258
+ },
259
+ optimism: {
260
+ chainId: 10,
261
+ chainIdHex: "0xa",
262
+ name: "optimism",
263
+ displayName: "Optimism",
264
+ networkType: "evm",
265
+ rpcUrl: "https://mainnet.optimism.io",
266
+ explorerUrl: "https://optimistic.etherscan.io",
267
+ nativeCurrency: {
268
+ name: "Ethereum",
269
+ symbol: "ETH",
270
+ decimals: 18
271
+ },
272
+ usdc: {
273
+ address: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
274
+ decimals: 6,
275
+ name: "USD Coin",
276
+ version: "2"
277
+ },
278
+ tokens: {
279
+ usdc: {
280
+ address: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
281
+ decimals: 6,
282
+ name: "USD Coin",
283
+ version: "2"
284
+ },
285
+ usdt: {
286
+ address: "0x01bff41798a0bcf287b996046ca68b395dbc1071",
287
+ decimals: 6,
288
+ name: "USD\u20AE0",
289
+ version: "1"
290
+ }
291
+ },
292
+ x402: {
293
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
294
+ enabled: true
295
+ }
296
+ },
297
+ celo: {
298
+ chainId: 42220,
299
+ chainIdHex: "0xa4ec",
300
+ name: "celo",
301
+ displayName: "Celo",
302
+ networkType: "evm",
303
+ rpcUrl: "https://forno.celo.org",
304
+ explorerUrl: "https://celoscan.io",
305
+ nativeCurrency: {
306
+ name: "Celo",
307
+ symbol: "CELO",
308
+ decimals: 18
309
+ },
310
+ usdc: {
311
+ address: "0xcebA9300f2b948710d2653dD7B07f33A8B32118C",
312
+ decimals: 6,
313
+ name: "USDC",
314
+ // Celo uses "USDC" not "USD Coin" for EIP-712
315
+ version: "2"
316
+ },
317
+ tokens: {
318
+ usdc: {
319
+ address: "0xcebA9300f2b948710d2653dD7B07f33A8B32118C",
320
+ decimals: 6,
321
+ name: "USDC",
322
+ // Celo uses "USDC" not "USD Coin" for EIP-712
323
+ version: "2"
324
+ },
325
+ usdt: {
326
+ address: "0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e",
327
+ decimals: 6,
328
+ name: "Tether USD",
329
+ // Celo USDT uses "Tether USD" for EIP-712
330
+ version: "1"
331
+ }
332
+ },
333
+ x402: {
334
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
335
+ enabled: true
336
+ }
337
+ },
338
+ hyperevm: {
339
+ chainId: 999,
340
+ chainIdHex: "0x3e7",
341
+ name: "hyperevm",
342
+ displayName: "HyperEVM",
343
+ networkType: "evm",
344
+ rpcUrl: "https://rpc.hyperliquid.xyz/evm",
345
+ explorerUrl: "https://hyperevmscan.io",
346
+ nativeCurrency: {
347
+ name: "Ethereum",
348
+ symbol: "ETH",
349
+ decimals: 18
350
+ },
351
+ usdc: {
352
+ address: "0xb88339CB7199b77E23DB6E890353E22632Ba630f",
353
+ decimals: 6,
354
+ name: "USDC",
355
+ // HyperEVM uses "USDC" not "USD Coin"
356
+ version: "2"
357
+ },
358
+ tokens: {
359
+ usdc: {
360
+ address: "0xb88339CB7199b77E23DB6E890353E22632Ba630f",
361
+ decimals: 6,
362
+ name: "USDC",
363
+ // HyperEVM uses "USDC" not "USD Coin"
364
+ version: "2"
365
+ }
366
+ },
367
+ x402: {
368
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
369
+ enabled: true
370
+ }
371
+ },
372
+ unichain: {
373
+ chainId: 130,
374
+ chainIdHex: "0x82",
375
+ name: "unichain",
376
+ displayName: "Unichain",
377
+ networkType: "evm",
378
+ rpcUrl: "https://unichain-rpc.publicnode.com",
379
+ explorerUrl: "https://uniscan.xyz",
380
+ nativeCurrency: {
381
+ name: "Ethereum",
382
+ symbol: "ETH",
383
+ decimals: 18
384
+ },
385
+ usdc: {
386
+ address: "0x078d782b760474a361dda0af3839290b0ef57ad6",
387
+ decimals: 6,
388
+ name: "USDC",
389
+ // Unichain uses "USDC" not "USD Coin"
390
+ version: "2"
391
+ },
392
+ tokens: {
393
+ usdc: {
394
+ address: "0x078d782b760474a361dda0af3839290b0ef57ad6",
395
+ decimals: 6,
396
+ name: "USDC",
397
+ // Unichain uses "USDC" not "USD Coin"
398
+ version: "2"
399
+ }
400
+ },
401
+ x402: {
402
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
403
+ enabled: true
404
+ }
405
+ },
406
+ monad: {
407
+ chainId: 143,
408
+ chainIdHex: "0x8f",
409
+ name: "monad",
410
+ displayName: "Monad",
411
+ networkType: "evm",
412
+ rpcUrl: "https://rpc.monad.xyz",
413
+ explorerUrl: "https://monad.socialscan.io",
414
+ nativeCurrency: {
415
+ name: "Monad",
416
+ symbol: "MON",
417
+ decimals: 18
418
+ },
419
+ usdc: {
420
+ address: "0x754704bc059f8c67012fed69bc8a327a5aafb603",
421
+ decimals: 6,
422
+ name: "USDC",
423
+ // Monad uses "USDC" not "USD Coin"
424
+ version: "2"
425
+ },
426
+ tokens: {
427
+ usdc: {
428
+ address: "0x754704bc059f8c67012fed69bc8a327a5aafb603",
429
+ decimals: 6,
430
+ name: "USDC",
431
+ // Monad uses "USDC" not "USD Coin"
432
+ version: "2"
433
+ },
434
+ ausd: {
435
+ address: "0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a",
436
+ decimals: 6,
437
+ name: "Agora Dollar",
438
+ version: "1"
439
+ }
440
+ },
441
+ x402: {
442
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
443
+ enabled: true
444
+ }
445
+ },
446
+ // ============================================================================
447
+ // SVM CHAINS (2 networks) - Solana Virtual Machine
448
+ // ============================================================================
449
+ solana: {
450
+ chainId: 0,
451
+ // Non-EVM
452
+ chainIdHex: "0x0",
453
+ name: "solana",
454
+ displayName: "Solana",
455
+ networkType: "svm",
456
+ rpcUrl: "https://api.mainnet-beta.solana.com",
457
+ explorerUrl: "https://solscan.io",
458
+ nativeCurrency: {
459
+ name: "Solana",
460
+ symbol: "SOL",
461
+ decimals: 9
462
+ },
463
+ usdc: {
464
+ address: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
465
+ // USDC SPL token mint
466
+ decimals: 6,
467
+ name: "USD Coin",
468
+ version: "1"
469
+ },
470
+ x402: {
471
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
472
+ enabled: true
473
+ }
474
+ },
475
+ fogo: {
476
+ chainId: 0,
477
+ // Non-EVM (SVM)
478
+ chainIdHex: "0x0",
479
+ name: "fogo",
480
+ displayName: "Fogo",
481
+ networkType: "svm",
482
+ rpcUrl: "https://rpc.fogo.nightly.app/",
483
+ explorerUrl: "https://explorer.fogo.nightly.app",
484
+ nativeCurrency: {
485
+ name: "Fogo",
486
+ symbol: "FOGO",
487
+ decimals: 9
488
+ },
489
+ usdc: {
490
+ address: "uSd2czE61Evaf76RNbq4KPpXnkiL3irdzgLFUMe3NoG",
491
+ // Fogo USDC mint
492
+ decimals: 6,
493
+ name: "USDC",
494
+ version: "1"
495
+ },
496
+ x402: {
497
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
498
+ enabled: true
499
+ }
500
+ },
501
+ // ============================================================================
502
+ // STELLAR (1 network)
503
+ // ============================================================================
504
+ stellar: {
505
+ chainId: 0,
506
+ // Non-EVM
507
+ chainIdHex: "0x0",
508
+ name: "stellar",
509
+ displayName: "Stellar",
510
+ networkType: "stellar",
511
+ rpcUrl: "https://horizon.stellar.org",
512
+ explorerUrl: "https://stellar.expert/explorer/public",
513
+ nativeCurrency: {
514
+ name: "Lumens",
515
+ symbol: "XLM",
516
+ decimals: 7
517
+ // Stellar uses 7 decimals (stroops)
518
+ },
519
+ usdc: {
520
+ address: "CCW67TSZV3SSS2HXMBQ5JFGCKJNXKZM7UQUWUZPUTHXSTZLEO7SJMI75",
521
+ // Soroban Asset Contract
522
+ decimals: 7,
523
+ // Stellar USDC uses 7 decimals
524
+ name: "USDC",
525
+ version: "1"
526
+ },
527
+ x402: {
528
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
529
+ enabled: true
530
+ }
531
+ },
532
+ // ============================================================================
533
+ // NEAR (1 network) - Uses NEP-366 meta-transactions
534
+ // ============================================================================
535
+ near: {
536
+ chainId: 0,
537
+ // Non-EVM
538
+ chainIdHex: "0x0",
539
+ name: "near",
540
+ displayName: "NEAR Protocol",
541
+ networkType: "near",
542
+ rpcUrl: "https://rpc.mainnet.near.org",
543
+ explorerUrl: "https://nearblocks.io",
544
+ nativeCurrency: {
545
+ name: "NEAR",
546
+ symbol: "NEAR",
547
+ decimals: 24
548
+ // NEAR uses 24 decimals (yoctoNEAR)
549
+ },
550
+ usdc: {
551
+ address: "17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1",
552
+ // Native Circle USDC
553
+ decimals: 6,
554
+ name: "USDC",
555
+ version: "1"
556
+ },
557
+ x402: {
558
+ facilitatorUrl: DEFAULT_FACILITATOR_URL,
559
+ enabled: true
560
+ // NEP-366 meta-transactions supported
561
+ }
562
+ }
563
+ };
564
+ function getChainByName(name) {
565
+ return SUPPORTED_CHAINS[name.toLowerCase()];
566
+ }
567
+
568
+ // src/utils/x402.ts
569
+ function chainToCAIP2(chainName) {
570
+ const caip2 = CAIP2_IDENTIFIERS[chainName.toLowerCase()];
571
+ if (caip2) {
572
+ return caip2;
573
+ }
574
+ const chain = getChainByName(chainName);
575
+ if (chain) {
576
+ if (chain.networkType === "evm") {
577
+ return `eip155:${chain.chainId}`;
578
+ }
579
+ return `${chain.networkType}:${chainName}`;
580
+ }
581
+ return chainName;
582
+ }
583
+
39
584
  // src/providers/stellar/index.ts
40
585
  function stringToUint8Array(str) {
41
586
  return new TextEncoder().encode(str);
@@ -268,22 +813,34 @@ var StellarProvider = class {
268
813
  }
269
814
  /**
270
815
  * Encode Stellar payment as X-PAYMENT header
816
+ *
817
+ * @param paymentPayload - JSON-encoded payment payload from signPayment()
818
+ * @param version - x402 protocol version (1 or 2, defaults to 1)
819
+ * @returns Base64-encoded X-PAYMENT header value
271
820
  */
272
- encodePaymentHeader(paymentPayload) {
821
+ encodePaymentHeader(paymentPayload, version = 1) {
273
822
  const payload = JSON.parse(paymentPayload);
274
- const x402Payload = {
823
+ const payloadData = {
824
+ from: payload.from,
825
+ to: payload.to,
826
+ amount: payload.amount,
827
+ tokenContract: payload.tokenContract,
828
+ authorizationEntryXdr: payload.authorizationEntryXdr,
829
+ nonce: payload.nonce,
830
+ signatureExpirationLedger: payload.signatureExpirationLedger
831
+ };
832
+ const x402Payload = version === 2 ? {
833
+ x402Version: 2,
834
+ scheme: "exact",
835
+ network: chainToCAIP2("stellar"),
836
+ // CAIP-2 format for v2
837
+ payload: payloadData
838
+ } : {
275
839
  x402Version: 1,
276
840
  scheme: "exact",
277
841
  network: "stellar",
278
- payload: {
279
- from: payload.from,
280
- to: payload.to,
281
- amount: payload.amount,
282
- tokenContract: payload.tokenContract,
283
- authorizationEntryXdr: payload.authorizationEntryXdr,
284
- nonce: payload.nonce,
285
- signatureExpirationLedger: payload.signatureExpirationLedger
286
- }
842
+ // Plain chain name for v1
843
+ payload: payloadData
287
844
  };
288
845
  return btoa(JSON.stringify(x402Payload));
289
846
  }