fix: route P2P deposits and verification to Asset Hub instead of relay chain

DepositModal was building transactions via relay chain API, and all three
edge functions (verify-deposit, process-withdraw, process-withdrawal) had
RPC endpoints hardcoded or defaulting to the relay chain. This caused
deposit verification to fail with "Transaction not yet finalized" and
created a chain mismatch with the withdrawal system which operates on
Asset Hub.

- DepositModal: use assetHubApi instead of api for transfer TX
- verify-deposit: RPC_HTTP/RPC_WS default to asset-hub-rpc (env override)
- process-withdraw: RPC_ENDPOINT default to asset-hub-rpc (env override)
- process-withdrawal: RPC_ENDPOINT default to asset-hub-rpc
This commit is contained in:
2026-02-23 21:50:57 +03:00
parent 1f9111bdd4
commit a50a5dbffb
4 changed files with 12 additions and 12 deletions
@@ -26,8 +26,8 @@ function getCorsHeaders(origin: string | null) {
// Platform hot wallet address
const PLATFORM_WALLET = '5HN6sFM7TbPQazmfhJP1kU8itw7Tb2A9UML8TwSYRwiN9q5Z'
// RPC endpoint
const RPC_ENDPOINT = 'wss://rpc.pezkuwichain.io'
// RPC endpoint — defaults to Asset Hub where user balances live
const RPC_ENDPOINT = Deno.env.get('RPC_ENDPOINT') || 'wss://asset-hub-rpc.pezkuwichain.io'
// Token decimals
const DECIMALS = 12
@@ -28,7 +28,7 @@ import { cryptoWaitReady } from 'npm:@pezkuwi/util-crypto@14.0.11'
const SUPABASE_URL = Deno.env.get("SUPABASE_URL")!;
const SUPABASE_SERVICE_ROLE_KEY = Deno.env.get("SUPABASE_SERVICE_ROLE_KEY")!;
const PLATFORM_WALLET_SEED = Deno.env.get("PLATFORM_WALLET_SEED")!;
const RPC_ENDPOINT = Deno.env.get("RPC_ENDPOINT") || "wss://rpc.pezkuwichain.io";
const RPC_ENDPOINT = Deno.env.get("RPC_ENDPOINT") || "wss://asset-hub-rpc.pezkuwichain.io";
// Asset IDs
const ASSET_IDS: Record<string, number | null> = {
@@ -28,9 +28,9 @@ function getCorsHeaders(origin: string | null) {
// Platform hot wallet address (PRODUCTION) - Treasury_3
const PLATFORM_WALLET = '5H18ZZBU4LwPYbeEZ1JBGvibCU2edhhM8HNUtFi7GgC36CgS'
// RPC endpoints for PezkuwiChain
const RPC_HTTP = 'https://rpc.pezkuwichain.io'
const RPC_WS = 'wss://rpc.pezkuwichain.io'
// RPC endpoints — defaults to Asset Hub where user balances live
const RPC_HTTP = Deno.env.get('RPC_HTTP') || 'https://asset-hub-rpc.pezkuwichain.io'
const RPC_WS = Deno.env.get('RPC_WS') || 'wss://asset-hub-rpc.pezkuwichain.io'
// Token decimals
const DECIMALS = 12