- Project NestJS hiện có
- Quyền Stripe Test Mode
- Cần frontend cho giao diện thanh toán
Không cần cấp quyền repository. Chỉ cần cấp quyền project nếu bạn muốn Bacodo tích hợp trực tiếp.
Add-on NestJS
Thêm stripe Node SDK chính thức, module Payments, và controller webhook verify Stripe-Signature trên raw body. NestJS là API — không mount Payment Element và không phải Next.js Route Handlers.
From
$175
USD · NestJS
Tích hợp Stripe cho NestJS · NestJS
Yêu cầu
Không cần cấp quyền repository. Chỉ cần cấp quyền project nếu bạn muốn Bacodo tích hợp trực tiếp.
What it does
Bacodo tích hợp Stripe vào dự án NestJS bạn đã có. Sau bàn giao, module, service và controller nằm trong repo của bạn. Bạn vẫn sở hữu tài khoản Stripe, API key và phí Stripe. NestJS không bao giờ lưu PAN.
Đường Stripe NestJS production cần stripe SDK chính thức, tạo PaymentIntent trong provider, và constructEvent trên buffer request chưa sửa. JSON parser mặc định của Nest phá chữ ký nếu bạn @Body() webhook. Đó là bug thật, không phải slogan.
Chúng tôi thêm module NestJS (ConfigService cho STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET), service tạo PaymentIntent, và controller webhook đọc rawBody. Ghi đơn đi qua repository hoặc ORM bạn đang dùng — Prisma, TypeORM hoặc MikroORM — không phải store chỉ của Bacodo.
Team bỏ qua lần triển khai Stripe NestJS production đầu tiên: rawBody trên Express hoặc Fastify, xử lý event idempotent, PaymentIntent hỗ trợ SCA, và bàn giao cắt test sang live.
Backend engineer và agency đã chạy NestJS, cần API thanh toán dễ bảo trì. Nếu bạn muốn Next.js App Router hoặc SPA React, đó là landing Stripe khác.
Key features
Tạo PaymentIntent bằng package stripe Node trong service NestJS. Secret key lấy từ ConfigService / env — không bao giờ từ DTO client post, không bao giờ từ bundle frontend.
stripe.webhooks.constructEvent cần đúng bytes Stripe đã ký. Chúng tôi bật Nest rawBody (hoặc raw parser Fastify) trên route đó. Parse JSON trước là cách tích hợp Stripe NestJS fail trên production.
Fulfillment chạy trong handler NestJS sau khi constructEvent thành công, không sau trang cảm ơn. Chúng tôi cập nhật bản ghi order hoặc entitlement bạn đã có.
Ship NestJS với key test và webhook secret trước. Cắt live là đổi env và endpoint Dashboard đã ghi chú, không phải license add-on.
Stripe retry. Handler NestJS khóa theo event.id (hoặc PaymentIntent id) để POST trùng không fulfill hai lần.
App React, Next.js hoặc mobile chỉ nhận publishable key và client_secret ngắn hạn từ API NestJS này. Add-on này là đường server NestJS, không phải Elements trong Nest.
Use cases
Bạn đã tạo đơn trong NestJS và cần API tạo PaymentIntent rồi đánh dấu đã thanh toán từ webhook.
Cần module Stripe dễ bảo trì trong NestJS, source trong repo khách, và checklist cắt live-key thay vì nhét script Express vào main.ts.
NestJS tạo PaymentIntent đầu hoặc gắn payment method. Stripe Billing định kỳ và customer portal ở server. Billing nặng có thể cần báo giá tùy chỉnh.
Next.js, React hoặc mobile đã gọi API NestJS này. Tích hợp Stripe cho NestJS chỉ là phía API — Stripe.js frontend là landing platform khác nếu bạn cần.
Demo
Xem đường server NestJS: tạo PaymentIntent, nhận POST /webhooks/stripe, constructEvent trên rawBody, cập nhật trạng thái đơn. Sandbox sống có sau compatibility check. Trang này không thu tiền thật và không thu thẻ trong NestJS.
How it works
Quy trình add-on Bacodo chuẩn, với kiểm tra riêng cho Express vs Fastify, rawBody, ConfigModule và ORM service đang dùng.
01
Xác nhận Tích hợp Stripe cho NestJS và ngày đầu là PaymentIntent, Checkout Session, hay cả hai trên API NestJS.
02
Xem phiên bản NestJS / Node, HTTP adapter (Express mặc định hoặc Fastify), persistence đơn, auth guard, và tài khoản Stripe.
03
Thêm package stripe, module Payments, endpoint tạo intent, và controller webhook verify chữ ký trên raw body.
04
Gắn ConfigService từ env: secret key, publishable key cho client, webhook secret, và URL HTTPS công khai Stripe sẽ gọi.
05
Chạy Stripe CLI hoặc sự kiện test Dashboard vào webhook NestJS, cộng tạo intent và từ chối. Xác nhận body JSON đã parse thì chữ ký fail như kỳ vọng.
06
Giao source NestJS, ghi chú env và checklist live-key. Phần NestJS thuộc về bạn bảo trì.
Architecture
Process NestJS giữ secret key. Client hỏi controller NestJS tạo PaymentIntent. Stripe báo NestJS bằng webhook. NestJS verify chữ ký trên rawBody rồi ghi trạng thái đơn.
Supported technologies
NestJS hiện tại trên Node LTS mà stripe SDK chấp nhận. HTTP adapter mặc định là Express. Fastify chỉ gồm nếu app NestJS đã boot kiểu đó và thống nhất trong compatibility check.
PaymentIntents, Checkout Sessions và webhooks.constructEvent. Chúng tôi không biến wrapper nestjs-stripe không chính thức thành sản phẩm trừ khi bạn yêu cầu rõ.
Cập nhật đơn hoặc entitlement ở Prisma, TypeORM, MikroORM hoặc repository bạn đã có. Add-on này không bịa database mới.
Tài khoản Stripe của bạn, key test và live NestJS dùng, endpoint webhook, và sự kiện Dashboard. Phí xử lý ở lại Stripe.
Host chạy được Node và nhận HTTPS POST từ Stripe. Site chỉ static hoặc Next.js export không host được webhook NestJS này.
What's included
Pricing
Giá này chỉ cho nền tảng NestJS. Không dùng giá add-on Next.js, Django, FastAPI, React hay Flutter.
Tích hợp Stripe cho NestJS
Thêm PaymentIntent và webhook ký sẵn sàng production vào API NestJS hiện có và giữ toàn bộ source.
Yêu cầu
$175
một lầnNestJS
Chưa có frontend?
Thanh toán an toàn quastripe
Delivery + security
Tích hợp Stripe NestJS điển hình được scope sau compatibility check. Timeline phụ thuộc HTTP adapter, auth guard và cách client gọi NestJS.
PaymentIntent test, chữ ký webhook, retry và từ chối được chạy trên app NestJS trước khi bàn giao.
Secret key và webhook signing secret ở env server. Client chỉ nhận publishable key hoặc client_secret ngắn hạn.
Controller webhook NestJS verify chữ ký Stripe trên raw body trước khi cập nhật đơn.
Chúng tôi không tuyên bố chứng nhận PCI, zero fraud hay tỉ lệ duyệt đảm bảo. NestJS không lưu PAN. Thẻ do Stripe Checkout hoặc Elements thu trên client, không DTO thẻ NestJS tự persist.
FAQ
Tích hợp Stripe cho NestJS gồm stripe Node SDK chính thức, module Payments NestJS, service tạo PaymentIntent, controller webhook gọi constructEvent trên raw body, cập nhật trạng thái đơn trên store hiện có, test sự kiện Stripe test, và ghi chú bàn giao. Bạn nhận source NestJS trong project. Phí Stripe và tài khoản Stripe là phần riêng.
Có. Tích hợp Stripe cho NestJS dành cho API NestJS bạn đã có. Chúng tôi gắn module, controller và env ConfigService vào app NestJS hiện tại, không giao một repo demo riêng làm deliverable.
Không. NestJS không được lưu PAN. Client dùng Stripe Checkout hoặc Elements. Tích hợp Stripe cho NestJS sở hữu PaymentIntent phía server, webhook và ghi đơn. DTO NestJS tự viết post raw card nằm ngoài scope mặc định.
Tích hợp Stripe cho NestJS dùng thư viện stripe Node chính thức cho PaymentIntents, Checkout Sessions và webhooks.constructEvent. Chúng tôi không biến wrapper nestjs-stripe không chính thức thành sản phẩm trừ khi bạn yêu cầu rõ.
stripe.webhooks.constructEvent verify đúng bytes Stripe đã ký. JSON parser mặc định của Nest làm đổi body đó. Tích hợp Stripe cho NestJS bật rawBody (hoặc raw parser Fastify) trên route webhook. Dùng @Body() ở đó là cách chữ ký NestJS fail trên production.
Mặc định Tích hợp Stripe cho NestJS giả định adapter Express mà Nest đi kèm. Fastify chỉ gồm nếu app NestJS đã boot bằng FastifyAdapter và chúng tôi thống nhất đường raw-body trong compatibility check NestJS.
NestJS có thể tạo PaymentIntent hoặc Checkout Session và lưu Stripe customer id. Sản phẩm Stripe Billing định kỳ, customer portal và logic hóa đơn ở server. Việc NestJS nặng subscription có thể cần báo giá tùy chỉnh.
Process NestJS dùng secret key và webhook signing secret từ ConfigService / biến môi trường. Client chỉ nhận publishable key. Tích hợp Stripe cho NestJS không đưa secret key vào DTO hay bundle frontend.
Chúng tôi triển khai Tích hợp Stripe cho NestJS với key test và sự kiện webhook test trước. Lên live là cắt key và endpoint đã ghi chú trên Stripe Dashboard và env NestJS, không phải kích hoạt license add-on.
NestJS tạo PaymentIntent hỗ trợ SCA. Client hoàn tất 3-D Secure bằng Stripe.js hoặc Checkout. NestJS chỉ fulfill sau payment_intent.succeeded trên webhook, không chỉ sau redirect trình duyệt.
Có, để fulfillment sau PaymentIntent hoặc Checkout Session do NestJS tạo. Response 201 NestJS gửi client không phải nguồn sự thật. Controller webhook verify chữ ký rồi đánh dấu đơn đã thanh toán.
Có. Tích hợp Stripe cho NestJS thường thêm field hoặc bản ghi thanh toán mỏng cạnh model đơn NestJS hiện có, không thay Prisma, TypeORM hay MikroORM.
Không. Bạn tạo và sở hữu tài khoản Stripe, API key và phí xử lý Stripe. Giá add-on NestJS là triển khai vào project NestJS, không phải license thanh toán Bacodo.
Không. NestJS là API Node độc lập. Next.js App Router và Route Handlers thuộc Tích hợp Stripe cho Next.js. Chúng tôi không viết lại API NestJS thành Next.js trong giá add-on NestJS này.
Có. Metadata PaymentIntent hoặc Checkout Session, bản ghi khách và các field bạn persist sau webhook được căn với model đơn NestJS hiện có trong Tích hợp Stripe cho NestJS.
Source NestJS nằm trong repo nên team bạn tự maintain. Hỗ trợ 30 ngày gồm câu hỏi kỹ thuật và lỗi trong scope Tích hợp Stripe cho NestJS đã giao, không phải feature NestJS không liên quan.
Trong cửa sổ 30 ngày chúng tôi hỗ trợ breakage trên tích hợp NestJS đã giao do thay đổi Stripe API hoặc package stripe đã tài liệu. Nâng cấp NestJS sau đó là bảo trì của bạn, hoặc Hỗ trợ kỹ thuật mở rộng nếu mua.
Chúng tôi ghi chú cách đọc trạng thái PaymentIntent, log Stripe Dashboard và webhook NestJS. Hỗ trợ 30 ngày gồm xử lý fail chữ ký (thường là rawBody), retry và key sai cấu hình cho luồng NestJS đã giao.
Chúng tôi xác nhận phiên bản NestJS và Node LTS với bản stripe chúng tôi pin lúc tích hợp. Runtime NestJS cũ hoặc fork nặng có thể cần scope thêm.
30 ngày sau bàn giao được gồm cho đường Stripe NestJS đã giao. Hỗ trợ kỹ thuật mở rộng là tùy chọn, 20% giá add-on NestJS này, thêm sáu tháng hỗ trợ kỹ thuật trên cùng tích hợp NestJS, không phải xây sản phẩm mới.
Thêm thanh toán Stripe sẵn sàng production vào API NestJS hiện có, giữ source, và để server sở hữu fulfillment.
$175