Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Environment, Paddle } from "npm:@paddle/paddle-node-sdk@1.9.1";
- import { createClient } from "npm:@supabase/supabase-js";
- const paddle = new Paddle(Deno.env.get("PADDLE_API_KEY")!, {
- environment: Environment.sandbox,
- });
- const supabase = createClient(Deno.env.get("SUPABASE_URL")!, Deno.env.get("SUPABASE_SERVICE_ROLE_KEY")!);
- Deno.serve(async (req: Request) => {
- const { record } = await req.json();
- const customerCheck = await paddle.customers.list({
- email: record.email
- }).next()
- if (customerCheck.length > 0) {
- await supabase.from("user_info").update({
- paddle_customer_id: customerCheck[0].id
- }).eq("id", record.id)
- console.log("User exists in paddle, synced to database", record.id, customerCheck[0].id);
- return new Response("OK", { status: 200 });
- }
- const customer = await paddle.customers.create({
- email: record.email,
- customData: {
- userId: record.id
- }
- })
- await supabase.from("user_info").update({
- paddle_customer_id: customer.id
- }).eq("id", record.id)
- console.log("User created in paddle", record.id, customer.id);
- return new Response("OK", { status: 200 });
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement