uvd-x402-sdk 0.5.0__tar.gz → 0.5.2__tar.gz
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.
- {uvd_x402_sdk-0.5.0/src/uvd_x402_sdk.egg-info → uvd_x402_sdk-0.5.2}/PKG-INFO +1 -1
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/pyproject.toml +1 -1
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/__init__.py +6 -1
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/facilitator.py +9 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/algorand.py +10 -10
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2/src/uvd_x402_sdk.egg-info}/PKG-INFO +1 -1
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/LICENSE +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/README.md +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/setup.cfg +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/client.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/config.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/decorators.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/exceptions.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/__init__.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/django_integration.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/fastapi_integration.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/flask_integration.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/lambda_integration.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/models.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/__init__.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/base.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/evm.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/near.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/solana.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/networks/stellar.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/response.py +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk.egg-info/SOURCES.txt +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk.egg-info/dependency_links.txt +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk.egg-info/requires.txt +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk.egg-info/top_level.txt +0 -0
- {uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/tests/test_client.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: uvd-x402-sdk
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.2
|
|
4
4
|
Summary: Python SDK for x402 payments - gasless crypto payments across 16 blockchains with multi-stablecoin support (USDC, EURC, AUSD, PYUSD, USDT)
|
|
5
5
|
Author-email: Ultravioleta DAO <dev@ultravioletadao.xyz>
|
|
6
6
|
Project-URL: Homepage, https://github.com/UltravioletaDAO/uvd-x402-sdk-python
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "uvd-x402-sdk"
|
|
7
|
-
version = "0.5.
|
|
7
|
+
version = "0.5.2"
|
|
8
8
|
description = "Python SDK for x402 payments - gasless crypto payments across 16 blockchains with multi-stablecoin support (USDC, EURC, AUSD, PYUSD, USDT)"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -41,7 +41,7 @@ Supported Networks (16 total):
|
|
|
41
41
|
- Algorand (2): Algorand mainnet, Algorand testnet
|
|
42
42
|
"""
|
|
43
43
|
|
|
44
|
-
__version__ = "0.5.
|
|
44
|
+
__version__ = "0.5.2"
|
|
45
45
|
__author__ = "Ultravioleta DAO"
|
|
46
46
|
|
|
47
47
|
from uvd_x402_sdk.client import X402Client
|
|
@@ -128,6 +128,9 @@ from uvd_x402_sdk.facilitator import (
|
|
|
128
128
|
NEAR_FEE_PAYER_TESTNET,
|
|
129
129
|
STELLAR_FEE_PAYER_MAINNET,
|
|
130
130
|
STELLAR_FEE_PAYER_TESTNET,
|
|
131
|
+
# EVM facilitator addresses (for reference)
|
|
132
|
+
EVM_FACILITATOR_MAINNET,
|
|
133
|
+
EVM_FACILITATOR_TESTNET,
|
|
131
134
|
# Helper functions
|
|
132
135
|
get_fee_payer,
|
|
133
136
|
get_facilitator_address,
|
|
@@ -221,6 +224,8 @@ __all__ = [
|
|
|
221
224
|
"NEAR_FEE_PAYER_TESTNET",
|
|
222
225
|
"STELLAR_FEE_PAYER_MAINNET",
|
|
223
226
|
"STELLAR_FEE_PAYER_TESTNET",
|
|
227
|
+
"EVM_FACILITATOR_MAINNET",
|
|
228
|
+
"EVM_FACILITATOR_TESTNET",
|
|
224
229
|
"get_fee_payer",
|
|
225
230
|
"get_facilitator_address",
|
|
226
231
|
"requires_fee_payer",
|
|
@@ -59,6 +59,15 @@ STELLAR_FEE_PAYER_MAINNET = "GCHPGXJT2WFFRFCA5TV4G4E3PMMXLNIDUH27PKDYA4QJ2XGYZWG
|
|
|
59
59
|
STELLAR_FEE_PAYER_TESTNET = "GBBFZMLUJEZVI32EN4XA2KPP445XIBTMTRBLYWFIL556RDTHS2OWFQ2Z"
|
|
60
60
|
|
|
61
61
|
|
|
62
|
+
# =============================================================================
|
|
63
|
+
# EVM Facilitator Addresses (for reference - EVM uses EIP-3009, no fee payer needed)
|
|
64
|
+
# =============================================================================
|
|
65
|
+
|
|
66
|
+
# EVM facilitator wallet addresses (used for settlement, not fee payment)
|
|
67
|
+
EVM_FACILITATOR_MAINNET = "0x103040545AC5031A11E8C03dd11324C7333a13C7"
|
|
68
|
+
EVM_FACILITATOR_TESTNET = "0x34033041a5944B8F10f8E4D8496Bfb84f1A293A8"
|
|
69
|
+
|
|
70
|
+
|
|
62
71
|
# =============================================================================
|
|
63
72
|
# Network to Fee Payer Mapping
|
|
64
73
|
# =============================================================================
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Algorand network configurations for x402 payments.
|
|
3
3
|
|
|
4
4
|
This module supports Algorand blockchain networks:
|
|
5
|
-
- Algorand mainnet (network: "algorand
|
|
5
|
+
- Algorand mainnet (network: "algorand")
|
|
6
6
|
- Algorand testnet (network: "algorand-testnet")
|
|
7
7
|
|
|
8
8
|
Algorand uses ASA (Algorand Standard Assets) for USDC:
|
|
@@ -23,7 +23,7 @@ Payload Format:
|
|
|
23
23
|
{
|
|
24
24
|
"x402Version": 1,
|
|
25
25
|
"scheme": "exact",
|
|
26
|
-
"network": "algorand
|
|
26
|
+
"network": "algorand",
|
|
27
27
|
"payload": {
|
|
28
28
|
"paymentIndex": 1,
|
|
29
29
|
"paymentGroup": [
|
|
@@ -96,7 +96,7 @@ ALGORAND = NetworkConfig(
|
|
|
96
96
|
# Genesis hash (for CAIP-2)
|
|
97
97
|
"genesis_hash": "wGHE2Pwdvd7S12BL5FaOP20EGYesN73ktiC1qzkkit8=",
|
|
98
98
|
# x402 network name (facilitator expects this format)
|
|
99
|
-
"x402_network": "algorand
|
|
99
|
+
"x402_network": "algorand",
|
|
100
100
|
},
|
|
101
101
|
)
|
|
102
102
|
|
|
@@ -301,21 +301,21 @@ def get_x402_network_name(network_name: str) -> str:
|
|
|
301
301
|
"""
|
|
302
302
|
Get the x402 network name for an Algorand network.
|
|
303
303
|
|
|
304
|
-
The facilitator expects "algorand
|
|
304
|
+
The facilitator expects "algorand" or "algorand-testnet".
|
|
305
305
|
|
|
306
306
|
Args:
|
|
307
307
|
network_name: SDK network name ('algorand' or 'algorand-testnet')
|
|
308
308
|
|
|
309
309
|
Returns:
|
|
310
|
-
x402 network name ('algorand
|
|
310
|
+
x402 network name ('algorand' or 'algorand-testnet')
|
|
311
311
|
"""
|
|
312
312
|
from uvd_x402_sdk.networks.base import get_network
|
|
313
313
|
|
|
314
314
|
network = get_network(network_name)
|
|
315
315
|
if not network:
|
|
316
|
-
# Default mapping
|
|
317
|
-
if network_name == "algorand":
|
|
318
|
-
return "algorand
|
|
316
|
+
# Default mapping - normalize "algorand-mainnet" to "algorand"
|
|
317
|
+
if network_name == "algorand-mainnet":
|
|
318
|
+
return "algorand"
|
|
319
319
|
return network_name
|
|
320
320
|
|
|
321
321
|
return network.extra_config.get("x402_network", network_name)
|
|
@@ -533,7 +533,7 @@ def create_private_key_signer(private_key: str) -> Callable:
|
|
|
533
533
|
|
|
534
534
|
def build_x402_payment_request(
|
|
535
535
|
payload: AlgorandPaymentPayload,
|
|
536
|
-
network: str = "algorand
|
|
536
|
+
network: str = "algorand",
|
|
537
537
|
scheme: str = "exact",
|
|
538
538
|
version: int = 1,
|
|
539
539
|
) -> Dict[str, Any]:
|
|
@@ -542,7 +542,7 @@ def build_x402_payment_request(
|
|
|
542
542
|
|
|
543
543
|
Args:
|
|
544
544
|
payload: AlgorandPaymentPayload from build_atomic_group()
|
|
545
|
-
network: Network name ("algorand
|
|
545
|
+
network: Network name ("algorand" or "algorand-testnet")
|
|
546
546
|
scheme: Payment scheme (default "exact")
|
|
547
547
|
version: x402 version (default 1)
|
|
548
548
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: uvd-x402-sdk
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.2
|
|
4
4
|
Summary: Python SDK for x402 payments - gasless crypto payments across 16 blockchains with multi-stablecoin support (USDC, EURC, AUSD, PYUSD, USDT)
|
|
5
5
|
Author-email: Ultravioleta DAO <dev@ultravioletadao.xyz>
|
|
6
6
|
Project-URL: Homepage, https://github.com/UltravioletaDAO/uvd-x402-sdk-python
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/django_integration.py
RENAMED
|
File without changes
|
{uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/fastapi_integration.py
RENAMED
|
File without changes
|
{uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/flask_integration.py
RENAMED
|
File without changes
|
{uvd_x402_sdk-0.5.0 → uvd_x402_sdk-0.5.2}/src/uvd_x402_sdk/integrations/lambda_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|