import base64
import json
import os
# Your wallet addresses (from env or config)
EVM_PAY_TO = os.environ.get("EVM_ADDRESS", "0x209693Bc6afc0C5328bA36FaF03C514EF312287C")
SVM_PAY_TO = os.environ.get("SVM_ADDRESS", "6KPYDyuRnpuKcm1TerUmwLd2BcaihvhF4Ccrr8beruu2")
# Example: protected resource URL and metadata
resource_url = "https://api.example.com/weather"
resource_description = "Weather data"
resource_mime_type = "application/json"
payment_required = {
"x402Version": 2,
"error": "PAYMENT-SIGNATURE header is required",
"resource": {
"url": resource_url,
"description": resource_description,
"mimeType": resource_mime_type,
},
"accepts": [
{
"scheme": "exact",
"network": "eip155:84532",
"amount": "10000",
"asset": "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
"payTo": EVM_PAY_TO,
"maxTimeoutSeconds": 60,
"extra": {"name": "USDC", "version": "2"},
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d",
"amount": "1000000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"payTo": SVM_PAY_TO,
"maxTimeoutSeconds": 60,
"extra": {"feePayer": "2wKupLR9q6wXYppw8Gr2NvWxKBUqm4PPJKkQfoxHDBg4"},
},
],
"extensions": {},
}
payment_required_b64 = base64.b64encode(json.dumps(payment_required).encode()).decode()