chore: switch payment defaults from staging to production

- Transak: default env PRODUCTION, fail if API key missing instead of
  falling back to STAGING_KEY
- Coinbase: default environment production instead of sandbox
- Openfort: default chain ID 8453 (Base mainnet) instead of 84532 (Sepolia)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Jeff Emmett 2026-03-07 11:28:22 -08:00
parent a62a33b4dc
commit be8982f160
1 changed files with 9 additions and 8 deletions

View File

@ -199,8 +199,9 @@ routes.post("/api/flows/user-onramp", async (c) => {
widgetUrl = session.onrampUrl; widgetUrl = session.onrampUrl;
} else { } else {
// 2b. Transak: build widget URL server-side // 2b. Transak: build widget URL server-side
const transakApiKey = process.env.TRANSAK_API_KEY || 'STAGING_KEY'; const transakApiKey = process.env.TRANSAK_API_KEY;
const transakEnv = process.env.TRANSAK_ENV || 'STAGING'; if (!transakApiKey) return c.json({ error: "Transak not configured" }, 503);
const transakEnv = process.env.TRANSAK_ENV || 'PRODUCTION';
const baseUrl = transakEnv === 'PRODUCTION' const baseUrl = transakEnv === 'PRODUCTION'
? 'https://global.transak.com' ? 'https://global.transak.com'
: 'https://global-stg.transak.com'; : 'https://global-stg.transak.com';
@ -274,16 +275,16 @@ routes.get("/api/onramp/config", (c) => {
provider: process.env.ONRAMP_PROVIDER || (process.env.COINBASE_CDP_PROJECT_ID ? "coinbase" : "transak"), provider: process.env.ONRAMP_PROVIDER || (process.env.COINBASE_CDP_PROJECT_ID ? "coinbase" : "transak"),
available, available,
// Transak fields (only needed if provider=transak) // Transak fields (only needed if provider=transak)
apiKey: process.env.TRANSAK_API_KEY || "STAGING_KEY", apiKey: process.env.TRANSAK_API_KEY || "",
environment: process.env.TRANSAK_ENV || "STAGING", environment: process.env.TRANSAK_ENV || "PRODUCTION",
}); });
}); });
// Legacy endpoint — keep for backwards compat // Legacy endpoint — keep for backwards compat
routes.get("/api/transak/config", (c) => { routes.get("/api/transak/config", (c) => {
return c.json({ return c.json({
apiKey: process.env.TRANSAK_API_KEY || "STAGING_KEY", apiKey: process.env.TRANSAK_API_KEY || "",
environment: process.env.TRANSAK_ENV || "STAGING", environment: process.env.TRANSAK_ENV || "PRODUCTION",
}); });
}); });
@ -495,7 +496,7 @@ export const flowsModule: RSpaceModule = {
apiKeyId: process.env.COINBASE_CDP_KEY_ID, apiKeyId: process.env.COINBASE_CDP_KEY_ID,
apiKeySecret: process.env.COINBASE_CDP_KEY_SECRET, apiKeySecret: process.env.COINBASE_CDP_KEY_SECRET,
projectId: process.env.COINBASE_CDP_PROJECT_ID, projectId: process.env.COINBASE_CDP_PROJECT_ID,
environment: (process.env.COINBASE_ENVIRONMENT as 'sandbox' | 'production') || 'sandbox', environment: (process.env.COINBASE_ENVIRONMENT as 'sandbox' | 'production') || 'production',
}); });
console.log('[rflows] Coinbase Onramp provider initialized'); console.log('[rflows] Coinbase Onramp provider initialized');
} }
@ -504,7 +505,7 @@ export const flowsModule: RSpaceModule = {
_openfort = new OpenfortProvider({ _openfort = new OpenfortProvider({
apiKey: process.env.OPENFORT_API_KEY, apiKey: process.env.OPENFORT_API_KEY,
publishableKey: process.env.OPENFORT_PUBLISHABLE_KEY, publishableKey: process.env.OPENFORT_PUBLISHABLE_KEY,
chainId: parseInt(process.env.BASE_CHAIN_ID || '84532', 10), chainId: parseInt(process.env.BASE_CHAIN_ID || '8453', 10),
}); });
console.log('[rflows] Openfort provider initialized'); console.log('[rflows] Openfort provider initialized');
} }