- โปรเจกต์ NestJS ที่มีอยู่
- สิทธิ์เข้าถึง Stripe Test Mode
- ต้องมีฟรอนต์เอนด์สำหรับหน้าชำระเงิน
ไม่ต้องให้สิทธิ์รีโป หากต้องการให้ Bacodo ผสานโดยตรงจึงค่อยให้สิทธิ์โปรเจกต์ชั่วคราว
โปรแกรมเสริม NestJS
เพิ่ม stripe Node SDK อย่างเป็นทางการ โมดูลการชำระเงิน และตัวควบคุม webhook ที่ตรวจสอบ Stripe-Signature บนเนื้อหาดิบ NestJS คือ API ซึ่งไม่ได้ติดตั้ง Payment Element และไม่ใช่ Next.js Route Handlers
เริ่มต้น
$175
USD · NestJS
การรวม Stripe สำหรับ NestJS · NestJS
Requirements
ไม่ต้องให้สิทธิ์รีโป หากต้องการให้ Bacodo ผสานโดยตรงจึงค่อยให้สิทธิ์โปรเจกต์ชั่วคราว
ทำอะไร
Bacodo ผสานรวม Stripe เข้ากับโปรเจ็กต์ NestJS ที่คุณมีอยู่แล้ว หลังจากส่งมอบ โมดูล บริการ และตัวควบคุมจะอยู่ใน repo ของคุณ คุณยังคงเป็นเจ้าของบัญชี Stripe, คีย์ API และค่าธรรมเนียม Stripe NestJS ไม่เคยเก็บ PAN
เส้นทาง NestJS Stripe ที่ใช้งานจริงจำเป็นต้องมี stripe SDK อย่างเป็นทางการ การสร้าง PaymentIntent ในผู้ให้บริการ และ buildEvent บนบัฟเฟอร์คำขอที่ยังไม่ได้แก้ไข ตัวแยกวิเคราะห์ JSON เริ่มต้นของ Nest จะทำลายการตรวจสอบลายเซ็นหากคุณ @Body() เป็นเว็บฮุค นั่นเป็นข้อผิดพลาดที่แท้จริง ไม่ใช่สโลแกน
เราเพิ่มโมดูล NestJS (ConfigService สำหรับ STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET) บริการที่สร้าง PaymentIntents และตัวควบคุม webhook ที่อ่าน rawBody การเขียนคำสั่งจะต้องผ่านพื้นที่เก็บข้อมูลหรือ ORM ที่คุณใช้อยู่แล้ว — Prisma, TypeORM หรือ MikroORM — ไม่ใช่ร้านค้าเฉพาะของ Bacodo
ทีมของคุณข้ามการใช้งาน NestJS Stripe ที่ใช้งานจริงครั้งแรก: rawBody on Express หรือ Fastify, การจัดการเหตุการณ์ idempotent, PaymentIntents ที่รับรู้ SCA และการส่งมอบที่บันทึกคีย์ทดสอบสู่การใช้งานจริง
วิศวกรและเอเจนซี่แบ็กเอนด์ที่ใช้ NestJS อยู่แล้วและต้องการ API การชำระเงินที่บำรุงรักษาได้ หากคุณต้องการ Next.js App Router หรือ React SPA สิ่งเหล่านี้คือการลงจอด Stripe ที่แตกต่างกัน
ฟีเจอร์หลัก
สร้าง PaymentIntents ด้วยแพ็คเกจ stripe Node ภายในบริการ NestJS รหัสลับมาจาก ConfigService / env — ไม่เคยมาจาก DTO ที่ไคลเอ็นต์โพสต์ และไม่เคยมาจากบันเดิลส่วนหน้า
stripe.webhooks.constructEvent ต้องการลายเซ็นลายไบต์ที่แน่นอน เราเปิดใช้งาน Nest rawBody (หรือ Fastify raw parser) บนเส้นทางนั้น การแยกวิเคราะห์ JSON ก่อนคือวิธีที่การรวม NestJS Stripe ล้มเหลวในการผลิต
การดำเนินการจะดำเนินการในตัวจัดการ NestJS หลังจาก ConstructEvent สำเร็จ ไม่ใช่หลังจากหน้าขอบคุณ เราอัปเดตคำสั่งซื้อหรือบันทึกการให้สิทธิ์ที่มีอยู่ของคุณ เพื่อให้ API ที่คุณเปิดเผยแล้วสะท้อนสถานะการชำระเงิน
จัดส่ง NestJS พร้อมด้วยคีย์ทดสอบ Stripe และความลับของเว็บฮุคก่อน การถ่ายทอดสดถือเป็นการตัดผ่านจุดสิ้นสุดของแดชบอร์ดและสภาพแวดล้อมที่ได้รับการบันทึกไว้ ไม่ใช่สิทธิ์การใช้งานเสริม
ลองแถบอีกครั้ง ตัวจัดการ NestJS คีย์ปิด event.id (หรือ PaymentIntent id) ดังนั้น POST ที่ซ้ำกันจึงไม่ตอบสนองซ้ำซ้อน
แอป React, Next.js หรือมือถือจะได้รับเฉพาะคีย์ที่เผยแพร่ได้และ client_secret ที่มีอายุสั้นจาก NestJS API นี้ ส่วนเสริมนี้คือเส้นทางเซิร์ฟเวอร์ NestJS ไม่ใช่องค์ประกอบภายใน Nest
กรณีใช้งาน
คุณสร้างคำสั่งซื้อใน NestJS แล้ว และต้องการ API เพื่อสร้าง PaymentIntents และทำเครื่องหมายคำสั่งซื้อเหล่านั้นที่ชำระเงินจาก webhooks
คุณต้องมีโมดูล Stripe ที่สามารถบำรุงรักษาได้ใน NestJS แหล่งที่มาใน repo ไคลเอนต์ และการตัดคีย์สดที่บันทึกไว้ แทนที่จะเป็นสคริปต์ Express แบบครั้งเดียวที่ทิ้งลงใน main.ts
NestJS สร้าง PaymentIntent แรกหรือแนบวิธีการชำระเงิน การเรียกเก็บเงิน Stripe ที่เกิดขึ้นประจำและพอร์ทัลลูกค้าจะอยู่บนเซิร์ฟเวอร์ งานเรียกเก็บเงินจำนวนมากอาจต้องมีใบเสนอราคาที่กำหนดเอง
Next.js, React หรือ mobile เรียก NestJS API นี้แล้ว Stripe Integration สำหรับ NestJS เป็นฝั่ง API เท่านั้น - ส่วนหน้า Stripe.js เป็นแพลตฟอร์มที่แตกต่างกันหากคุณต้องการเช่นกัน
เดโม
ดูตัวอย่างเส้นทางเซิร์ฟเวอร์ NestJS: สร้าง PaymentIntent รับ POST /webhooks/stripe สร้างเหตุการณ์บน rawBody อัปเดตสถานะคำสั่งซื้อ แซนด์บ็อกซ์สดสำหรับบัญชี Stripe ของคุณพร้อมใช้งานหลังจากการตรวจสอบความเข้ากันได้ หน้านี้ไม่ได้ประมวลผลการเรียกเก็บเงินจริงและไม่รวบรวมการ์ดใน NestJS
วิธีทำงาน
เวิร์กโฟลว์ส่วนเสริมมาตรฐานของ Bacodo พร้อมการตรวจสอบเฉพาะ NestJS สำหรับ Express และ Fastify, rawBody, ConfigModule และ ORM ที่บริการของคุณใช้อยู่แล้ว
01
ยืนยันการรวม Stripe สำหรับ NestJS และไม่ว่าวันแรกจะเป็น PaymentIntents, Checkout Sessions หรือทั้งสองอย่างใน NestJS API
02
ตรวจสอบเวอร์ชัน NestJS / Node, อะแดปเตอร์ HTTP (ค่าเริ่มต้นแบบด่วนหรือ Fastify), ความคงอยู่ของคำสั่งซื้อที่มีอยู่, ตัวป้องกันการตรวจสอบสิทธิ์ และดูว่าคุณมีบัญชี Stripe อยู่แล้วหรือไม่
03
เพิ่มแพ็คเกจแถบ โมดูลการชำระเงิน จุดปลายทางสำหรับการสร้างเจตนา และตัวควบคุมเว็บฮุคที่ตรวจสอบลายเซ็นบนเนื้อหาดิบ
04
Wire ConfigService จาก env: รหัสลับ, รหัสที่เผยแพร่ได้สำหรับไคลเอ็นต์, ข้อมูลลับของเว็บฮุค และแถบ HTTPS URL สาธารณะจะเรียกใช้
05
เรียกใช้เหตุการณ์การทดสอบ Stripe CLI หรือแดชบอร์ดกับ NestJS webhook รวมถึง create-intent และเส้นทางปฏิเสธ ยืนยันว่าเนื้อหา JSON ที่แยกวิเคราะห์ล้มเหลวในการลงนามตามที่คาดไว้
06
ส่งแหล่งที่มา NestJS บันทึก env และรายการตรวจสอบคีย์สด การใช้งาน NestJS เป็นของคุณที่ต้องดูแลรักษา
สถาปัตยกรรม
กระบวนการ NestJS เก็บรหัสลับไว้ ลูกค้าขอให้คอนโทรลเลอร์ NestJS สร้าง PaymentIntent Stripe แจ้งเตือน NestJS โดย webhook NestJS ตรวจสอบลายเซ็นบน rawBody จากนั้นเขียนสถานะการสั่งซื้อ
เทคโนโลยีที่รองรับ
NestJS ปัจจุบันบนโหนด LTS ที่ stripe SDK ยอมรับ อะแดปเตอร์ HTTP เริ่มต้นคือ Express Fastify จะรวมไว้ก็ต่อเมื่อนั่นเป็นวิธีที่แอป NestJS บูทแล้วและเรายอมรับในการตรวจสอบความเข้ากันได้
PaymentIntents, เซสชันการชำระเงิน และ webhooks.constructEvent เราไม่สร้างผลิตภัณฑ์ห่อหุ้ม Nestjs-stripe อย่างไม่เป็นทางการ เว้นแต่ว่าคุณต้องการอย่างชัดเจน
การอัปเดตคำสั่งซื้อหรือการให้สิทธิ์จะยังคงอยู่ใน Prisma, TypeORM, MikroORM หรือพื้นที่เก็บข้อมูลที่คุณมีอยู่แล้ว ส่วนเสริมนี้ไม่ได้สร้างฐานข้อมูลใหม่
บัญชี Stripe ของคุณ การทดสอบและคีย์สดที่ใช้โดย NestJS, จุดสิ้นสุดของเว็บฮุค และกิจกรรมแดชบอร์ด ค่าธรรมเนียมการดำเนินการ Stripe ยังคงอยู่กับ Stripe
โฮสต์ที่สามารถเรียกใช้ Node และรับ HTTPS POST จาก Stripe เว็บไซต์แบบคงที่เท่านั้นหรือการส่งออกเฉพาะ Next.js ไม่สามารถโฮสต์เส้นทาง Webhook ของ NestJS ได้
สิ่งที่รวมอยู่
Pricing
ราคานี้สำหรับแพลตฟอร์ม NestJS เท่านั้น ไม่ใช้การกำหนดราคาส่วนเสริม Next.js, Django, FastAPI, React หรือ Flutter
การรวม Stripe สำหรับ NestJS
เพิ่ม Stripe PaymentIntents ที่พร้อมใช้งานจริงและลงนาม webhooks ลงใน NestJS API ที่มีอยู่และเก็บซอร์สโค้ดไว้
ข้อกำหนด
$175
จ่ายครั้งเดียวNestJS
ต้องการฟรอนต์เอนด์หรือไม่?
ชำระเงินอย่างปลอดภัยผ่านstripe
การส่งมอบและความปลอดภัย
การรวม NestJS Stripe โดยทั่วไปจะมีขอบเขตหลังจากการตรวจสอบความเข้ากันได้ของ NestJS ไทม์ไลน์ขึ้นอยู่กับอะแดปเตอร์ HTTP, ตัวป้องกันการตรวจสอบสิทธิ์ และวิธีที่ไคลเอ็นต์เรียกใช้ NestJS
PaymentIntents โหมดทดสอบ ลายเซ็นเว็บฮุค การลองใหม่ และเส้นทางการปฏิเสธจะถูกใช้กับแอป NestJS ก่อนที่เราจะส่งมอบ
รหัสลับและความลับในการเซ็นชื่อเว็บฮุคจะยังคงอยู่ในสภาพแวดล้อมเซิร์ฟเวอร์ ลูกค้าจะได้รับเฉพาะคีย์ที่เผยแพร่ได้หรือ client_secret ที่มีอายุสั้นเท่านั้น
ตัวควบคุม Webhook ของ NestJS ตรวจสอบลายเซ็น Stripe บนเนื้อหาดิบก่อนอัปเดตคำสั่งซื้อหรือสถานะการให้สิทธิ์
เราไม่อ้างสิทธิ์ในการรับรอง PCI, การฉ้อโกงเป็นศูนย์ หรือรับประกันอัตราการอนุมัติ NestJS ไม่เก็บ PAN ข้อมูลการ์ดจะถูกรวบรวมโดย Stripe Checkout หรือ Elements บนไคลเอนต์ ไม่ใช่ DTO ของการ์ด NestJS แบบกำหนดเองที่เรายังคงมีอยู่
คำถามที่พบบ่อย
Stripe Integration สำหรับ NestJS ประกอบด้วย stripe Node SDK อย่างเป็นทางการ, โมดูลการชำระเงิน NestJS, บริการ create-PaymentIntent, ตัวควบคุม webhook ที่เรียก ConstructEvent บนเนื้อหาดิบ, การอัปเดตสถานะคำสั่งซื้อในร้านค้าที่มีอยู่ของคุณ, การทดสอบกับเหตุการณ์การทดสอบ Stripe และบันทึกการส่งมอบ คุณได้รับแหล่ง NestJS ในโครงการของคุณ ค่าธรรมเนียม Stripe และบัญชี Stripe ของคุณแยกจากกัน
ใช่ Stripe Integration สำหรับ NestJS สร้างขึ้นสำหรับ NestJS API ที่คุณมีอยู่แล้ว เราติดตั้งโมดูล ตัวควบคุม และ ConfigService env ลงในแอป NestJS ปัจจุบันของคุณ แทนที่จะจัดส่ง repo สาธิตแยกต่างหากเป็นการส่งมอบ
ไม่ NestJS จะต้องไม่จัดเก็บ PAN ลูกค้าใช้ Stripe Checkout หรือ Elements Stripe Integration สำหรับ NestJS เป็นเจ้าของ PaymentIntents, webhooks และการเขียนคำสั่งฝั่งเซิร์ฟเวอร์ NestJS DTO แบบกำหนดเองที่โพสต์ข้อมูลการ์ดดิบอยู่นอกขอบเขตเริ่มต้น
Stripe Integration สำหรับ NestJS ใช้ไลบรารี Stripe Node อย่างเป็นทางการสำหรับ PaymentIntents, Checkout Sessions และ webhooks.constructEvent เราไม่สร้างผลิตภัณฑ์ห่อหุ้ม Nestjs-stripe อย่างไม่เป็นทางการ เว้นแต่ว่าคุณต้องการอย่างชัดเจน
stripe.webhooks.constructEvent ตรวจสอบไบต์ที่ลงนามลายที่แน่นอน ตัวแยกวิเคราะห์ JSON เริ่มต้นของ Nest จะกลายพันธุ์เนื้อหานั้น Stripe Integration สำหรับ NestJS เปิดใช้งาน rawBody (หรือ Fastify raw parser) บนเส้นทาง webhook การใช้ @Body() ทำให้การตรวจสอบลายเซ็น NestJS ล้มเหลวในการผลิต
Default Stripe Integration สำหรับ NestJS จะถือว่า Express adapter Nest จัดส่งไปด้วย Fastify จะรวมอยู่เฉพาะในกรณีที่แอป NestJS ของคุณบูทด้วย FastifyAdapter และเรายอมรับเส้นทางเนื้อหาดิบในระหว่างการตรวจสอบความเข้ากันได้ของ NestJS
NestJS สามารถสร้าง PaymentIntent หรือ Checkout Session และจัดเก็บรหัสลูกค้า Stripe ผลิตภัณฑ์การเรียกเก็บเงิน Stripe ที่เป็นกิจวัตร พอร์ทัลลูกค้า และตรรกะของใบแจ้งหนี้จะอยู่บนเซิร์ฟเวอร์ งาน NestJS ที่มีการสมัครใช้งานจำนวนมากอาจต้องมีใบเสนอราคาที่กำหนดเอง
กระบวนการ NestJS ใช้คีย์ลับและข้อมูลลับในการเซ็นชื่อ webhook จาก ConfigService / ตัวแปรสภาพแวดล้อม ลูกค้าจะได้รับเฉพาะรหัสที่เผยแพร่ได้ Stripe Integration สำหรับ NestJS ไม่ได้ใส่คีย์ลับใน DTO หรือบันเดิลส่วนหน้า
เราใช้ Stripe Integration สำหรับ NestJS กับคีย์ทดสอบ Stripe และทดสอบเหตุการณ์ webhook ก่อน การถ่ายทอดสดเป็นคีย์ที่มีการบันทึกไว้และการตัดจุดสิ้นสุดใน Stripe Dashboard และ NestJS env ของคุณ ไม่ใช่การเปิดใช้งานใบอนุญาตเสริม
NestJS สร้าง PaymentIntents ที่รองรับ SCA ลูกค้าดำเนินการ 3-D Secure ด้วย Stripe.js หรือ Checkout NestJS จะดำเนินการหลังจาก Payment_intent.succeeded บน webhook เท่านั้น ไม่ใช่หลังจากการเปลี่ยนเส้นทางเบราว์เซอร์เพียงอย่างเดียว
ใช่สำหรับการดำเนินการหลังจาก PaymentIntent หรือเซสชันการชำระเงินที่สร้างโดย NestJS การตอบกลับ NestJS 201 ต่อลูกค้าไม่ใช่แหล่งที่มาของความจริง ตัวควบคุม webhook ตรวจสอบลายเซ็นแล้วทำเครื่องหมายคำสั่งซื้อที่ชำระเงินแล้ว
ใช่ โดยทั่วไป Stripe Integration สำหรับ NestJS จะเพิ่มฟิลด์หรือบันทึกการชำระเงินแบบบางถัดจากโมเดลคำสั่งซื้อ NestJS ที่มีอยู่ของคุณแทนที่จะแทนที่ Prisma, TypeORM หรือ MikroORM
ไม่ คุณสร้างและเป็นเจ้าของบัญชี Stripe, คีย์ API และค่าธรรมเนียมการดำเนินการ Stripe ราคาเสริม NestJS ใช้กับโปรเจ็กต์ NestJS ของคุณ ไม่ใช่ใบอนุญาตการชำระเงินของ Bacodo
ไม่ NestJS เป็น Node API แบบสแตนด์อโลน เราเตอร์แอป Next.js และตัวจัดการเส้นทางเป็นการรวม Stripe สำหรับ Next.js เราไม่เขียน NestJS API ลงใน Next.js ภายในราคาเสริมของ NestJS นี้
ใช่ ข้อมูลเมตาของเซสชัน PaymentIntent หรือ Checkout บันทึกลูกค้า และฟิลด์ที่คุณคงอยู่หลังจากการยืนยันเว็บฮุคจะสอดคล้องกับโมเดลคำสั่งซื้อ NestJS ที่มีอยู่ของคุณในระหว่างการรวม Stripe สำหรับ NestJS
แหล่งที่มาของ NestJS อยู่ใน repo ของคุณ ดังนั้นทีมของคุณสามารถดูแลรักษาได้ การสนับสนุน 30 วันที่มีให้ครอบคลุมคำถามทางเทคนิคและข้อบกพร่องใน Stripe Integration ที่จัดส่งสำหรับขอบเขต NestJS ไม่ใช่งานฟีเจอร์ NestJS ที่ไม่เกี่ยวข้อง
ในช่วงกรอบเวลา 30 วัน เราช่วยเหลือเรื่องการแตกหักในการรวม NestJS ที่จัดส่ง ซึ่งเกิดจาก Stripe API ที่จัดทำเอกสารไว้หรือการเปลี่ยนแปลงแพ็คเกจแถบ การอัปเกรด NestJS อย่างต่อเนื่องหลังจากนั้นเป็นการบำรุงรักษาของคุณ หรือการสนับสนุนด้านเทคนิคเพิ่มเติมหากคุณซื้อ
เราจัดทำเอกสารวิธีการอ่านสถานะ PaymentIntent, บันทึก Stripe Dashboard และการจัดส่ง NestJS webhook การสนับสนุน 30 วันประกอบด้วยการแก้ไขปัญหาความล้มเหลวของลายเซ็น (โดยทั่วไปคือ RawBody) การลองใหม่ และคีย์ที่กำหนดค่าไม่ถูกต้องสำหรับโฟลว์ NestJS ที่จัดส่ง
เรายืนยันเวอร์ชัน NestJS และ Node LTS ของคุณกับรุ่น stripe ที่เราปักหมุดไว้ ณ เวลาที่รวมระบบ รันไทม์ NestJS ที่เก่ากว่าหรือมีการแยกส่วนอย่างหนักอาจต้องมีขอบเขตเพิ่มเติม
30 วันหลังจากรวมการส่งมอบสำหรับเส้นทาง NestJS Stripe ที่จัดส่ง การสนับสนุนด้านเทคนิคแบบขยายเวลาเป็นทางเลือกในราคา 20% ของราคาเสริม NestJS นี้ และครอบคลุมความช่วยเหลือทางเทคนิคเพิ่มเติมอีกหกเดือนเกี่ยวกับการผสานรวม NestJS เดียวกัน ไม่ใช่ผลิตภัณฑ์ใหม่
เพิ่มการชำระเงิน Stripe ที่พร้อมใช้งานจริงไปยัง NestJS API ที่มีอยู่ของคุณ เก็บซอร์สโค้ด และปล่อยให้เซิร์ฟเวอร์ดำเนินการเอง
$175