From 8d53618f6fec1c2ebc36900065fbdbc0c29a80a3 Mon Sep 17 00:00:00 2001 From: Joaquim Verges Date: Tue, 28 Oct 2025 11:54:31 -0700 Subject: [PATCH] [Paywall] Support string price format when tokenAddress is not provided --- .../src/app/api/paywall/route.ts | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/apps/playground-web/src/app/api/paywall/route.ts b/apps/playground-web/src/app/api/paywall/route.ts index 553d10f10d9..b15d25d8646 100644 --- a/apps/playground-web/src/app/api/paywall/route.ts +++ b/apps/playground-web/src/app/api/paywall/route.ts @@ -41,7 +41,7 @@ export async function GET(request: NextRequest) { const amount = queryParams.get("amount") || "0.01"; const payTo = queryParams.get("payTo") ?? undefined; - const tokenAddress = queryParams.get("tokenAddress") || token.address; + const tokenAddress = queryParams.get("tokenAddress"); const decimals = queryParams.get("decimals") || token.decimals.toString(); const waitUntil = (queryParams.get("waitUntil") as "simulated" | "submitted" | "confirmed") || @@ -53,13 +53,15 @@ export async function GET(request: NextRequest) { paymentData, network: defineChain(Number(chainId)), payTo, - price: { - amount: toUnits(amount, parseInt(decimals)).toString(), - asset: { - address: tokenAddress as `0x${string}`, - decimals: decimals ? parseInt(decimals) : token.decimals, - }, - }, + price: tokenAddress + ? { + amount: toUnits(amount, parseInt(decimals)).toString(), + asset: { + address: tokenAddress as `0x${string}`, + decimals: decimals ? parseInt(decimals) : token.decimals, + }, + } + : amount, routeConfig: { description: "Access to paid content", },