juntekim.com/stripe_to_invoice/app/api/stripe/connect/route.ts

26 lines
695 B
TypeScript

import { cookies } from "next/headers";
import { NextResponse } from "next/server";
export async function GET() {
const cookieStore = await cookies();
const session = cookieStore.get("session");
// Safety: must be logged in
if (!session) {
return NextResponse.redirect(
new URL("/login", process.env.NEXT_PUBLIC_BASE_URL)
);
}
const params = new URLSearchParams({
response_type: "code",
client_id: process.env.STRIPE_CLIENT_ID!,
scope: "read_write",
redirect_uri: process.env.STRIPE_REDIRECT_URI!,
});
const stripeAuthUrl =
`https://connect.stripe.com/oauth/authorize?${params.toString()}`;
return NextResponse.redirect(stripeAuthUrl);
}