@asgcard/pay 0.1.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 (76) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/LICENSE +21 -0
  3. package/README.md +393 -0
  4. package/dist/cjs/adapters/base.js +174 -0
  5. package/dist/cjs/adapters/base.js.map +1 -0
  6. package/dist/cjs/adapters/evm.js +263 -0
  7. package/dist/cjs/adapters/evm.js.map +1 -0
  8. package/dist/cjs/adapters/index.js +13 -0
  9. package/dist/cjs/adapters/index.js.map +1 -0
  10. package/dist/cjs/adapters/stellar.js +173 -0
  11. package/dist/cjs/adapters/stellar.js.map +1 -0
  12. package/dist/cjs/adapters/stripe.js +338 -0
  13. package/dist/cjs/adapters/stripe.js.map +1 -0
  14. package/dist/cjs/adapters/types.js +3 -0
  15. package/dist/cjs/adapters/types.js.map +1 -0
  16. package/dist/cjs/client.js +309 -0
  17. package/dist/cjs/client.js.map +1 -0
  18. package/dist/cjs/index.js +36 -0
  19. package/dist/cjs/index.js.map +1 -0
  20. package/dist/cjs/logger.js +7 -0
  21. package/dist/cjs/logger.js.map +1 -0
  22. package/dist/cjs/mpp.js +187 -0
  23. package/dist/cjs/mpp.js.map +1 -0
  24. package/dist/cjs/policy.js +71 -0
  25. package/dist/cjs/policy.js.map +1 -0
  26. package/dist/cjs/stellar.js +87 -0
  27. package/dist/cjs/stellar.js.map +1 -0
  28. package/dist/esm/adapters/base.js +170 -0
  29. package/dist/esm/adapters/base.js.map +1 -0
  30. package/dist/esm/adapters/evm.js +258 -0
  31. package/dist/esm/adapters/evm.js.map +1 -0
  32. package/dist/esm/adapters/index.js +5 -0
  33. package/dist/esm/adapters/index.js.map +1 -0
  34. package/dist/esm/adapters/stellar.js +136 -0
  35. package/dist/esm/adapters/stellar.js.map +1 -0
  36. package/dist/esm/adapters/stripe.js +334 -0
  37. package/dist/esm/adapters/stripe.js.map +1 -0
  38. package/dist/esm/adapters/types.js +2 -0
  39. package/dist/esm/adapters/types.js.map +1 -0
  40. package/dist/esm/client.js +302 -0
  41. package/dist/esm/client.js.map +1 -0
  42. package/dist/esm/index.js +16 -0
  43. package/dist/esm/index.js.map +1 -0
  44. package/dist/esm/logger.js +3 -0
  45. package/dist/esm/logger.js.map +1 -0
  46. package/dist/esm/mpp.js +175 -0
  47. package/dist/esm/mpp.js.map +1 -0
  48. package/dist/esm/policy.js +67 -0
  49. package/dist/esm/policy.js.map +1 -0
  50. package/dist/esm/stellar.js +50 -0
  51. package/dist/esm/stellar.js.map +1 -0
  52. package/dist/types/adapters/base.d.ts +53 -0
  53. package/dist/types/adapters/base.d.ts.map +1 -0
  54. package/dist/types/adapters/evm.d.ts +81 -0
  55. package/dist/types/adapters/evm.d.ts.map +1 -0
  56. package/dist/types/adapters/index.d.ts +6 -0
  57. package/dist/types/adapters/index.d.ts.map +1 -0
  58. package/dist/types/adapters/stellar.d.ts +67 -0
  59. package/dist/types/adapters/stellar.d.ts.map +1 -0
  60. package/dist/types/adapters/stripe.d.ts +206 -0
  61. package/dist/types/adapters/stripe.d.ts.map +1 -0
  62. package/dist/types/adapters/types.d.ts +35 -0
  63. package/dist/types/adapters/types.d.ts.map +1 -0
  64. package/dist/types/client.d.ts +89 -0
  65. package/dist/types/client.d.ts.map +1 -0
  66. package/dist/types/index.d.ts +15 -0
  67. package/dist/types/index.d.ts.map +1 -0
  68. package/dist/types/logger.d.ts +10 -0
  69. package/dist/types/logger.d.ts.map +1 -0
  70. package/dist/types/mpp.d.ts +153 -0
  71. package/dist/types/mpp.d.ts.map +1 -0
  72. package/dist/types/policy.d.ts +40 -0
  73. package/dist/types/policy.d.ts.map +1 -0
  74. package/dist/types/stellar.d.ts +27 -0
  75. package/dist/types/stellar.d.ts.map +1 -0
  76. package/package.json +86 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ // @asgcard/pay — Production x402/MPP SDK for AI agent payments
2
+ // https://pay.asgcard.dev
3
+ // Core
4
+ export { OwsClient } from './client';
5
+ export { PolicyEngine } from './policy';
6
+ // MPP Protocol utilities
7
+ export { parseMppChallenge, parseMppChallenges, decodeChallengeRequest, buildMppCredential, buildAuthorizationHeader, parseMppReceipt, detectProtocol, extractMppChallenges, base64urlEncode, base64urlDecode, } from './mpp';
8
+ // Adapters — Universal EVM (recommended for on-chain x402)
9
+ export { EvmPaymentAdapter, listEvmChains } from './adapters/evm';
10
+ // Adapters — Stripe MPP (fiat + stablecoins via Shared Payment Tokens)
11
+ export { StripePaymentAdapter } from './adapters/stripe';
12
+ // Adapters — Stellar
13
+ export { StellarPaymentAdapter } from './adapters/stellar';
14
+ // Adapters — Base (backward compat, use EvmPaymentAdapter instead)
15
+ export { BasePaymentAdapter } from './adapters/base';
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,0BAA0B;AAE1B,OAAO;AACP,OAAO,EAAE,SAAS,EAAoB,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,YAAY,EAAgB,MAAM,UAAU,CAAC;AAGtD,yBAAyB;AACzB,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,eAAe,GAChB,MAAM,OAAO,CAAC;AAYf,2DAA2D;AAC3D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGlE,uEAAuE;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,qBAAqB;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,mEAAmE;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** No-op logger — used when no logger is provided. */
2
+ export const noopLogger = () => { };
3
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAQA,sDAAsD;AACtD,MAAM,CAAC,MAAM,UAAU,GAAW,GAAG,EAAE,GAAE,CAAC,CAAC"}
@@ -0,0 +1,175 @@
1
+ /**
2
+ * MPP — Machine Payments Protocol utilities.
3
+ *
4
+ * Handles parsing/building of MPP-standard headers:
5
+ * - WWW-Authenticate: Payment (Challenge)
6
+ * - Authorization: Payment (Credential)
7
+ * - Payment-Receipt (Receipt)
8
+ *
9
+ * @see https://mpp.dev/protocol/challenges
10
+ * @see https://mpp.dev/protocol/credentials
11
+ * @see https://mpp.dev/protocol/receipts
12
+ * @see https://paymentauth.org — IETF specification
13
+ */
14
+ // ─── Base64url helpers ──────────────────────────────────────────────
15
+ /**
16
+ * Encode string to base64url (RFC 4648 §5).
17
+ * No padding, URL-safe alphabet.
18
+ */
19
+ export function base64urlEncode(str) {
20
+ const b64 = Buffer.from(str, 'utf-8').toString('base64');
21
+ return b64.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
22
+ }
23
+ /**
24
+ * Decode base64url string.
25
+ */
26
+ export function base64urlDecode(str) {
27
+ // Restore standard base64
28
+ let b64 = str.replace(/-/g, '+').replace(/_/g, '/');
29
+ // Add padding
30
+ while (b64.length % 4 !== 0)
31
+ b64 += '=';
32
+ return Buffer.from(b64, 'base64').toString('utf-8');
33
+ }
34
+ // ─── Challenge parsing ──────────────────────────────────────────────
35
+ /**
36
+ * Parse a `WWW-Authenticate: Payment` header value into an MppChallenge.
37
+ *
38
+ * Format:
39
+ * ```
40
+ * Payment id="abc", realm="mpp.dev", method="stripe", intent="charge",
41
+ * expires="2025-01-15T12:05:00Z", request="eyJhbW91bnQ..."
42
+ * ```
43
+ *
44
+ * @param header — Raw header value (with or without "Payment " prefix)
45
+ * @returns Parsed challenge object
46
+ * @throws Error if required fields are missing
47
+ */
48
+ export function parseMppChallenge(header) {
49
+ // Strip "Payment " prefix if present
50
+ let raw = header.trim();
51
+ if (raw.startsWith('Payment ')) {
52
+ raw = raw.slice(8);
53
+ }
54
+ // Parse RFC 7235 auth-param format: key="value", key="value"
55
+ const params = parseAuthParams(raw);
56
+ // Validate required fields
57
+ const required = ['id', 'realm', 'method', 'intent', 'request'];
58
+ for (const key of required) {
59
+ if (!params[key]) {
60
+ throw new Error(`MPP Challenge missing required field: ${key}`);
61
+ }
62
+ }
63
+ return {
64
+ id: params.id,
65
+ realm: params.realm,
66
+ method: params.method,
67
+ intent: params.intent,
68
+ request: params.request,
69
+ expires: params.expires,
70
+ description: params.description,
71
+ };
72
+ }
73
+ /**
74
+ * Parse multiple `WWW-Authenticate: Payment` headers.
75
+ * Servers can offer multiple payment options.
76
+ */
77
+ export function parseMppChallenges(headers) {
78
+ return headers.map(parseMppChallenge);
79
+ }
80
+ /**
81
+ * Decode the `request` field of a Challenge into a structured object.
82
+ */
83
+ export function decodeChallengeRequest(challenge) {
84
+ const json = base64urlDecode(challenge.request);
85
+ return JSON.parse(json);
86
+ }
87
+ // ─── Credential building ────────────────────────────────────────────
88
+ /**
89
+ * Build an MPP Credential for the `Authorization: Payment` header.
90
+ *
91
+ * @param challenge — The challenge being responded to
92
+ * @param source — DID or identifier of the payer
93
+ * @param payload — Method-specific proof (SPT for Stripe, tx for Tempo)
94
+ * @returns Base64url-encoded credential string
95
+ */
96
+ export function buildMppCredential(challenge, source, payload) {
97
+ const credential = {
98
+ challenge,
99
+ source,
100
+ payload,
101
+ };
102
+ return base64urlEncode(JSON.stringify(credential));
103
+ }
104
+ /**
105
+ * Build the full `Authorization` header value.
106
+ */
107
+ export function buildAuthorizationHeader(challenge, source, payload) {
108
+ return `Payment ${buildMppCredential(challenge, source, payload)}`;
109
+ }
110
+ // ─── Receipt parsing ────────────────────────────────────────────────
111
+ /**
112
+ * Parse a `Payment-Receipt` header.
113
+ */
114
+ export function parseMppReceipt(header) {
115
+ try {
116
+ const json = base64urlDecode(header.trim());
117
+ return JSON.parse(json);
118
+ }
119
+ catch {
120
+ return { raw: header };
121
+ }
122
+ }
123
+ // ─── Protocol detection ─────────────────────────────────────────────
124
+ /**
125
+ * Detect whether a 402 response uses MPP or x402 protocol.
126
+ *
127
+ * MPP: has `WWW-Authenticate: Payment` header
128
+ * x402: has JSON body with `x402Version` and `accepts[]`
129
+ */
130
+ export function detectProtocol(headers, body) {
131
+ // Check for MPP: WWW-Authenticate header with Payment scheme
132
+ const wwwAuth = headers['www-authenticate'] || headers['WWW-Authenticate'];
133
+ if (wwwAuth) {
134
+ const values = Array.isArray(wwwAuth) ? wwwAuth : [wwwAuth];
135
+ if (values.some((v) => v.trim().startsWith('Payment '))) {
136
+ return 'mpp';
137
+ }
138
+ }
139
+ // Check for x402: JSON body with x402Version
140
+ if (body && typeof body === 'object' && ('x402Version' in body || 'accepts' in body)) {
141
+ return 'x402';
142
+ }
143
+ return 'unknown';
144
+ }
145
+ /**
146
+ * Extract all MPP challenges from response headers.
147
+ * Handles both single and multiple WWW-Authenticate headers.
148
+ */
149
+ export function extractMppChallenges(headers) {
150
+ const wwwAuth = headers['www-authenticate'] || headers['WWW-Authenticate'];
151
+ if (!wwwAuth)
152
+ return [];
153
+ const values = Array.isArray(wwwAuth) ? wwwAuth : [wwwAuth];
154
+ return values
155
+ .filter((v) => v.trim().startsWith('Payment '))
156
+ .map(parseMppChallenge);
157
+ }
158
+ // ─── Internal helpers ───────────────────────────────────────────────
159
+ /**
160
+ * Parse RFC 7235 auth-param format.
161
+ * `key="value", key="value"`
162
+ */
163
+ function parseAuthParams(raw) {
164
+ const params = {};
165
+ // Match key="value" pairs, handling escaped quotes
166
+ const regex = /(\w+)="((?:[^"\\]|\\.)*)"/g;
167
+ let match;
168
+ while ((match = regex.exec(raw)) !== null) {
169
+ const [, key, value] = match;
170
+ // Unescape backslash-escaped characters
171
+ params[key] = value.replace(/\\(.)/g, '$1');
172
+ }
173
+ return params;
174
+ }
175
+ //# sourceMappingURL=mpp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mpp.js","sourceRoot":"","sources":["../../src/mpp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * PolicyEngine — On-device budget controller for autonomous AI agents.
3
+ *
4
+ * Enforces per-transaction caps, monthly rolling budgets, and optional
5
+ * destination whitelists so that an agent can never overspend without
6
+ * explicit human approval.
7
+ *
8
+ * Fail-closed: if any check fails, the payment is rejected.
9
+ */
10
+ import { noopLogger } from './logger';
11
+ export class PolicyEngine {
12
+ policy;
13
+ currentMonthSpent = 0;
14
+ log;
15
+ constructor(policy, logger) {
16
+ this.policy = policy;
17
+ this.log = logger ?? noopLogger;
18
+ }
19
+ /**
20
+ * Returns `true` if the proposed spend passes every policy gate.
21
+ * Fail-closed: any unrecognised state returns `false`.
22
+ */
23
+ checkPolicy(amountUsd, destination) {
24
+ if (amountUsd <= 0) {
25
+ this.log(`[Policy] 🚫 Invalid amount: $${amountUsd}`);
26
+ return false;
27
+ }
28
+ if (amountUsd > this.policy.maxAmountPerTransaction) {
29
+ this.log(`[Policy] 🚫 $${amountUsd} exceeds per-tx limit of $${this.policy.maxAmountPerTransaction}`);
30
+ return false;
31
+ }
32
+ if (this.currentMonthSpent + amountUsd > this.policy.monthlyBudget) {
33
+ this.log(`[Policy] 🚫 $${amountUsd} would exceed monthly budget of $${this.policy.monthlyBudget} (spent: $${this.currentMonthSpent})`);
34
+ return false;
35
+ }
36
+ if (this.policy.allowedDestinations &&
37
+ this.policy.allowedDestinations.length > 0 &&
38
+ destination &&
39
+ !this.policy.allowedDestinations.includes(destination)) {
40
+ this.log(`[Policy] 🚫 Destination ${destination} not in whitelist`);
41
+ return false;
42
+ }
43
+ return true;
44
+ }
45
+ /** Record a successful spend against the rolling budget. */
46
+ recordSpend(amountUsd) {
47
+ this.currentMonthSpent += amountUsd;
48
+ this.log(`[Policy] 📊 Spent $${amountUsd} — total: $${this.currentMonthSpent}/$${this.policy.monthlyBudget}`);
49
+ }
50
+ /** Get total USD spent in the current period. */
51
+ getSpent() {
52
+ return this.currentMonthSpent;
53
+ }
54
+ /** Get remaining USD budget. */
55
+ getRemainingBudget() {
56
+ return Math.max(0, this.policy.monthlyBudget - this.currentMonthSpent);
57
+ }
58
+ /** Reset the spend counter (e.g. on month rollover or for testing). */
59
+ resetBudget() {
60
+ this.currentMonthSpent = 0;
61
+ }
62
+ /** Get a snapshot of the current policy configuration. */
63
+ getPolicy() {
64
+ return { ...this.policy };
65
+ }
66
+ }
67
+ //# sourceMappingURL=policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAU,UAAU,EAAE,MAAM,UAAU,CAAC;AAW9C,MAAM,OAAO,YAAY;IAKb;IAJF,iBAAiB,GAAG,CAAC,CAAC;IACtB,GAAG,CAAS;IAEpB,YACU,MAAoB,EAC5B,MAAe;QADP,WAAM,GAAN,MAAM,CAAc;QAG5B,IAAI,CAAC,GAAG,GAAG,MAAM,IAAI,UAAU,CAAC;IAClC,CAAC;IAED;;;OAGG;IACI,WAAW,CAAC,SAAiB,EAAE,WAAoB;QACxD,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,gCAAgC,SAAS,EAAE,CAAC,CAAC;YACtD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YACpD,IAAI,CAAC,GAAG,CACN,gBAAgB,SAAS,6BAA6B,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAC5F,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,GAAG,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YACnE,IAAI,CAAC,GAAG,CACN,gBAAgB,SAAS,oCAAoC,IAAI,CAAC,MAAM,CAAC,aAAa,aAAa,IAAI,CAAC,iBAAiB,GAAG,CAC7H,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IACE,IAAI,CAAC,MAAM,CAAC,mBAAmB;YAC/B,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;YAC1C,WAAW;YACX,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,WAAW,CAAC,EACtD,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,2BAA2B,WAAW,mBAAmB,CAAC,CAAC;YACpE,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4DAA4D;IACrD,WAAW,CAAC,SAAiB;QAClC,IAAI,CAAC,iBAAiB,IAAI,SAAS,CAAC;QACpC,IAAI,CAAC,GAAG,CACN,sBAAsB,SAAS,cAAc,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CACpG,CAAC;IACJ,CAAC;IAED,iDAAiD;IAC1C,QAAQ;QACb,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,gCAAgC;IACzB,kBAAkB;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACzE,CAAC;IAED,uEAAuE;IAChE,WAAW;QAChB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,0DAA0D;IACnD,SAAS;QACd,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;CACF"}
@@ -0,0 +1,50 @@
1
+ import * as StellarSdk from '@stellar/stellar-sdk';
2
+ /**
3
+ * StellarPaymentAdapter — Executes on-chain Stellar payments.
4
+ *
5
+ * In the production ASG Pay stack the adapter targets USDC on Stellar
6
+ * mainnet (see https://pay.asgcard.dev). For hackathon purposes it
7
+ * defaults to Stellar Testnet with native XLM.
8
+ */
9
+ export class StellarPaymentAdapter {
10
+ keypair;
11
+ server;
12
+ networkPassphrase;
13
+ constructor(options) {
14
+ this.keypair = StellarSdk.Keypair.fromSecret(options.secretKey);
15
+ this.networkPassphrase =
16
+ options.networkPassphrase || StellarSdk.Networks.TESTNET;
17
+ this.server = new StellarSdk.Horizon.Server(options.horizonUrl || 'https://horizon-testnet.stellar.org');
18
+ }
19
+ /**
20
+ * Send `amount` (in stroops) of native XLM to `destination`.
21
+ * Returns the transaction hash on success, or `null` on failure.
22
+ */
23
+ async pay(destination, amount, network) {
24
+ try {
25
+ console.log(`[Stellar] 🚀 Building payment → ${destination} (${amount} stroops, ${network})`);
26
+ const sourceAccount = await this.server.loadAccount(this.keypair.publicKey());
27
+ const tx = new StellarSdk.TransactionBuilder(sourceAccount, {
28
+ fee: StellarSdk.BASE_FEE,
29
+ networkPassphrase: this.networkPassphrase,
30
+ })
31
+ .addOperation(StellarSdk.Operation.payment({
32
+ destination,
33
+ asset: StellarSdk.Asset.native(),
34
+ amount: (parseInt(amount) / 10_000_000).toFixed(7),
35
+ }))
36
+ .setTimeout(30)
37
+ .build();
38
+ tx.sign(this.keypair);
39
+ console.log('[Stellar] 📡 Submitting transaction…');
40
+ const response = await this.server.submitTransaction(tx);
41
+ console.log(`[Stellar] ✅ Confirmed — hash: ${response.hash}`);
42
+ return response.hash;
43
+ }
44
+ catch (error) {
45
+ console.error('[Stellar] ❌ Transaction failed:', error?.response?.data || error.message);
46
+ return null;
47
+ }
48
+ }
49
+ }
50
+ //# sourceMappingURL=stellar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stellar.js","sourceRoot":"","sources":["../../src/stellar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,sBAAsB,CAAC;AAWnD;;;;;;GAMG;AACH,MAAM,OAAO,qBAAqB;IACxB,OAAO,CAAqB;IAC5B,MAAM,CAA4B;IAClC,iBAAiB,CAAS;IAElC,YAAY,OAAqC;QAC/C,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,iBAAiB;YACpB,OAAO,CAAC,iBAAiB,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC3D,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CACzC,OAAO,CAAC,UAAU,IAAI,qCAAqC,CAC5D,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,GAAG,CACd,WAAmB,EACnB,MAAc,EACd,OAAe;QAEf,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CACT,mCAAmC,WAAW,KAAK,MAAM,aAAa,OAAO,GAAG,CACjF,CAAC;YAEF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACjD,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CACzB,CAAC;YAEF,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,kBAAkB,CAAC,aAAa,EAAE;gBAC1D,GAAG,EAAE,UAAU,CAAC,QAAQ;gBACxB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;aAC1C,CAAC;iBACC,YAAY,CACX,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC3B,WAAW;gBACX,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE;gBAChC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;aACnD,CAAC,CACH;iBACA,UAAU,CAAC,EAAE,CAAC;iBACd,KAAK,EAAE,CAAC;YAEX,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEtB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAE9D,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CACX,iCAAiC,EACjC,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,KAAK,CAAC,OAAO,CACvC,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,53 @@
1
+ import { PaymentAdapter } from './types';
2
+ import { Logger } from '../logger';
3
+ export interface BaseAdapterOptions {
4
+ /** Hex private key (0x-prefixed). If omitted, a random key is generated. */
5
+ privateKey?: `0x${string}`;
6
+ /** 'mainnet' or 'testnet' (default: 'testnet') */
7
+ network?: 'mainnet' | 'testnet';
8
+ /** Optional custom RPC URL */
9
+ rpcUrl?: string;
10
+ /**
11
+ * Asset to settle with.
12
+ * - 'ETH' — native ETH transfer (default)
13
+ * - 'USDC' — ERC-20 USDC transfer via Circle's official contract
14
+ */
15
+ asset?: 'ETH' | 'USDC';
16
+ /** Optional logger. */
17
+ logger?: Logger;
18
+ }
19
+ /**
20
+ * BasePaymentAdapter — On-chain settlement on Base (Coinbase L2).
21
+ *
22
+ * Supports both native ETH transfers and USDC (ERC-20) transfers.
23
+ * Uses viem for lightweight, type-safe EVM interactions.
24
+ *
25
+ * Networks:
26
+ * - Base Mainnet (eip155:8453) — production
27
+ * - Base Sepolia (eip155:84532) — testnet
28
+ *
29
+ * @see https://base.org
30
+ * @see https://x402.org
31
+ */
32
+ export declare class BasePaymentAdapter implements PaymentAdapter {
33
+ readonly chainName = "Base";
34
+ readonly caip2Id: string;
35
+ private wallet;
36
+ private publicClient;
37
+ private account;
38
+ private chain;
39
+ private asset;
40
+ private log;
41
+ constructor(options?: BaseAdapterOptions);
42
+ getAddress(): string;
43
+ /** Get native ETH balance (formatted). */
44
+ getBalance(): Promise<string>;
45
+ /** Get USDC balance (formatted, 6 decimals). */
46
+ getUsdcBalance(): Promise<string>;
47
+ pay(destination: string, amount: string, network: string): Promise<string | null>;
48
+ /** Execute a native ETH transfer. */
49
+ private payEth;
50
+ /** Execute a USDC ERC-20 transfer. */
51
+ private payUsdc;
52
+ }
53
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/adapters/base.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,MAAM,EAAc,MAAM,WAAW,CAAC;AA+B/C,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,kDAAkD;IAClD,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,SAAgB,SAAS,UAAU;IACnC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,GAAG,CAAS;gBAER,OAAO,GAAE,kBAAuB;IAsB5C,UAAU,IAAI,MAAM;IAIpB,0CAA0C;IACpC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAOnC,gDAAgD;IAC1C,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAgBjC,GAAG,CACP,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOzB,qCAAqC;YACvB,MAAM;IAuCpB,sCAAsC;YACxB,OAAO;CAkDtB"}
@@ -0,0 +1,81 @@
1
+ import { PaymentAdapter } from './types';
2
+ import { Logger } from '../logger';
3
+ /** All EVM chains supported by @asgcard/pay. */
4
+ export type EvmChainName = 'base' | 'base-sepolia' | 'arbitrum' | 'arbitrum-sepolia' | 'optimism' | 'optimism-sepolia' | 'ethereum' | 'ethereum-sepolia' | 'polygon' | 'polygon-amoy';
5
+ export interface EvmAdapterOptions {
6
+ /**
7
+ * Chain to settle on.
8
+ * @example 'base', 'arbitrum', 'optimism', 'ethereum', 'polygon'
9
+ * @example 'base-sepolia', 'arbitrum-sepolia' (testnets)
10
+ */
11
+ chain: EvmChainName;
12
+ /**
13
+ * Asset to settle with.
14
+ * - 'native' — chain's native token (ETH on L1/L2, MATIC on Polygon)
15
+ * - 'USDC' — Circle's native USDC (ERC-20)
16
+ * @default 'native'
17
+ */
18
+ asset?: 'native' | 'USDC';
19
+ /** Hex private key (0x-prefixed). If omitted, a random key is generated. */
20
+ privateKey?: `0x${string}`;
21
+ /** Optional custom RPC URL. Uses viem's default public RPCs if omitted. */
22
+ rpcUrl?: string;
23
+ /** Optional logger. SDK is silent by default. */
24
+ logger?: Logger;
25
+ }
26
+ /**
27
+ * EvmPaymentAdapter — Universal EVM on-chain settlement.
28
+ *
29
+ * One adapter for ALL EVM chains supported by x402:
30
+ * Base, Arbitrum, Optimism, Ethereum, Polygon — mainnet & testnet.
31
+ *
32
+ * Supports native token (ETH/MATIC) and USDC (Circle ERC-20) transfers.
33
+ *
34
+ * @example
35
+ * ```ts
36
+ * // Arbitrum USDC settlement
37
+ * const adapter = new EvmPaymentAdapter({
38
+ * chain: 'arbitrum',
39
+ * asset: 'USDC',
40
+ * privateKey: '0x...',
41
+ * });
42
+ *
43
+ * // Base ETH settlement (testnet)
44
+ * const adapter = new EvmPaymentAdapter({
45
+ * chain: 'base-sepolia',
46
+ * asset: 'native',
47
+ * });
48
+ * ```
49
+ *
50
+ * @see https://x402.org — x402 payment protocol
51
+ * @see https://pay.asgcard.dev — ASG Pay production infrastructure
52
+ */
53
+ export declare class EvmPaymentAdapter implements PaymentAdapter {
54
+ readonly chainName: string;
55
+ readonly caip2Id: string;
56
+ private wallet;
57
+ private publicClient;
58
+ private account;
59
+ private chainConfig;
60
+ private asset;
61
+ private log;
62
+ constructor(options: EvmAdapterOptions);
63
+ getAddress(): string;
64
+ /** Get native token balance (ETH, MATIC, etc.). */
65
+ getNativeBalance(): Promise<string>;
66
+ /** Get USDC balance (6 decimals). Returns '0.00' if USDC not supported. */
67
+ getUsdcBalance(): Promise<string>;
68
+ pay(destination: string, amount: string, network: string): Promise<string | null>;
69
+ private payNative;
70
+ private payUsdc;
71
+ private shortAddr;
72
+ }
73
+ /** Returns metadata for all supported EVM chains. */
74
+ export declare function listEvmChains(): Array<{
75
+ name: EvmChainName;
76
+ displayName: string;
77
+ chainId: number;
78
+ caip2Id: string;
79
+ hasUsdc: boolean;
80
+ }>;
81
+ //# sourceMappingURL=evm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../../src/adapters/evm.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,MAAM,EAAc,MAAM,WAAW,CAAC;AAI/C,gDAAgD;AAChD,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,cAAc,GACd,UAAU,GACV,kBAAkB,GAClB,UAAU,GACV,kBAAkB,GAClB,UAAU,GACV,kBAAkB,GAClB,SAAS,GACT,cAAc,CAAC;AAmGnB,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,KAAK,EAAE,YAAY,CAAC;IACpB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,GAAG,CAAS;gBAER,OAAO,EAAE,iBAAiB;IAuCtC,UAAU,IAAI,MAAM;IAIpB,mDAAmD;IAC7C,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOzC,2EAA2E;IACrE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAcjC,GAAG,CACP,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;YASX,SAAS;YAqCT,OAAO;IA2CrB,OAAO,CAAC,SAAS;CAGlB;AAID,qDAAqD;AACrD,wBAAgB,aAAa,IAAI,KAAK,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC,CAQD"}
@@ -0,0 +1,6 @@
1
+ export { PaymentAdapter } from './types';
2
+ export { EvmPaymentAdapter, EvmAdapterOptions, EvmChainName, listEvmChains } from './evm';
3
+ export { StripePaymentAdapter, StripeAdapterOptions } from './stripe';
4
+ export { BasePaymentAdapter, BaseAdapterOptions } from './base';
5
+ export { StellarPaymentAdapter, StellarPaymentAdapterOptions } from './stellar';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { PaymentAdapter } from './types';
2
+ import { Logger } from '../logger';
3
+ export interface StellarPaymentAdapterOptions {
4
+ /** Stellar secret key for the agent's wallet. */
5
+ secretKey: string;
6
+ /**
7
+ * Asset to settle with:
8
+ * - 'XLM' — native lumens (default for testnet)
9
+ * - 'USDC' — Circle's native USDC on Stellar (recommended for production)
10
+ */
11
+ asset?: 'XLM' | 'USDC';
12
+ /**
13
+ * Network: 'mainnet' | 'testnet' (default: 'testnet').
14
+ * Determines Horizon URL, network passphrase, and CAIP-2 ID.
15
+ */
16
+ network?: 'mainnet' | 'testnet';
17
+ /** Override the Horizon URL. */
18
+ horizonUrl?: string;
19
+ /** Optional logger. */
20
+ logger?: Logger;
21
+ }
22
+ /**
23
+ * StellarPaymentAdapter — On-chain settlement on the Stellar network.
24
+ *
25
+ * Supports:
26
+ * - Native XLM payments (testnet default)
27
+ * - Circle USDC payments (production recommended)
28
+ *
29
+ * The production ASG Pay stack settles USDC on Stellar mainnet.
30
+ * @see https://pay.asgcard.dev
31
+ * @see https://stellar.org/usdc
32
+ */
33
+ export declare class StellarPaymentAdapter implements PaymentAdapter {
34
+ readonly chainName = "Stellar";
35
+ readonly caip2Id: string;
36
+ private keypair;
37
+ private server;
38
+ private networkPassphrase;
39
+ private assetType;
40
+ private log;
41
+ constructor(options: StellarPaymentAdapterOptions);
42
+ getAddress(): string;
43
+ /**
44
+ * Get the Stellar asset object based on configuration.
45
+ * - XLM: native asset (no trustline needed)
46
+ * - USDC: Circle's issued USDC (trustline required)
47
+ */
48
+ private getAsset;
49
+ /**
50
+ * Convert atomic units to human-readable amount.
51
+ * Stellar uses 7 decimal places (stroops) for all assets.
52
+ */
53
+ private formatAmount;
54
+ pay(destination: string, amount: string, network: string): Promise<string | null>;
55
+ /**
56
+ * Check if the account has a USDC trustline.
57
+ * Returns false if using XLM or if the trustline exists.
58
+ * Returns true if USDC is selected but trustline is missing.
59
+ */
60
+ needsTrustline(): Promise<boolean>;
61
+ /**
62
+ * Establish a USDC trustline (required before receiving USDC).
63
+ * Only needed once per account.
64
+ */
65
+ createUsdcTrustline(): Promise<string | null>;
66
+ }
67
+ //# sourceMappingURL=stellar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stellar.d.ts","sourceRoot":"","sources":["../../../src/adapters/stellar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,MAAM,EAAc,MAAM,WAAW,CAAC;AAK/C,MAAM,WAAW,4BAA4B;IAC3C,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,qBAAsB,YAAW,cAAc;IAC1D,SAAgB,SAAS,aAAa;IACtC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,GAAG,CAAS;gBAER,OAAO,EAAE,4BAA4B;IAqBjD,UAAU,IAAI,MAAM;IAIpB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAOhB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAIP,GAAG,CACd,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA0CzB;;;;OAIG;IACU,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAiB/C;;;OAGG;IACU,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CA6B3D"}