- 現有 NestJS 專案
- Stripe 測試模式存取
- 付款介面需要 frontend
無需倉庫權限。僅在你希望我們直接整合時才需要專案存取權限。
NestJS 插件
新增官方 Stripe Node SDK、支付模組和用於驗證原始主體上的 Stripe-Signature 的 Webhook 控制器。 NestJS 是 API — 它不會掛載 Payment Element,也不是 Next.js 路由處理程序。
起
$175
USD · NestJS
NestJS 的 Stripe 集成 · NestJS
Requirements
無需倉庫權限。僅在你希望我們直接整合時才需要專案存取權限。
功能說明
Bacodo 將 Stripe 整合到您已有的 NestJS 專案中。移交後,模組、服務和控制器位於您的儲存庫中。您仍然擁有 Stripe 帳戶、API 密鑰和 Stripe 費用。 NestJS 從不儲存 PAN。
生產 NestJS Stripe 路徑需要官方的 stripe SDK、在提供者中建立 PaymentIntent,以及在未修改的請求緩衝區上建構事件。如果您@Body() webhook,Nest 的預設 JSON 解析器會破壞簽章驗證。這是一個真正的錯誤,而不是一個口號。
我們新增一個 NestJS 模組(STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET 的 ConfigService)、一個建立 PaymentIntents 的服務以及一個讀取 rawBody 的 Webhook 控制器。訂單寫入會通過您已使用的儲存庫或 ORM(Prisma、TypeORM 或 MikroORM),而不是僅限 Bacodo 的儲存。
您的團隊跳過第一個生產 NestJS Stripe 實作:Express 或 Fastify 上的 rawBody、冪等事件處理、SCA 感知的 PaymentIntents 以及記錄測試到上線金鑰的移交。
已經運行 NestJS 並需要可維護的支付 API 的後端工程師和機構。如果您想要 Next.js App Router 或 React SPA,那麼這些是不同的 Stripe 著陸點。
主要功能
使用 NestJS 服務內的 stripe Node 套件建立 PaymentIntents。金鑰來自 ConfigService / env — 絕不來自客戶端發布的 DTO,也絕不來自前端套件。
stripe.webhooks.constructEvent 需要 Stripe 簽章的確切位元組。我們在該路由上啟用 Nest rawBody(或 Fastify 原始解析器)。首先解析 JSON 是 NestJS Stripe 整合在生產中失敗的原因。
ConstructEvent 成功後(而不是感謝頁面後),Fulfillment 在 NestJS 處理程序中運作。我們更新您現有的訂單或權利記錄,以便您已經公開的 API 反映付費狀態。
首先使用 Stripe 測試金鑰和 webhook 金鑰發送 NestJS。上線是記錄的環境和儀表板端點切換,而不是附加許可證。
條紋重試。 NestJS 處理程序關閉 event.id(或 PaymentIntent id),因此重複的 POST 不會雙重履行。
React、Next.js 或行動應用程式僅從此 NestJS API 接收可發布金鑰和短暫的 client_secret。此附加元件是 NestJS 伺服器路徑,而不是 Nest 內的 Elements。
適用場景
您已經在 NestJS 中建立了訂單,並且需要 API 來建立 PaymentIntents 並標記那些透過 Webhooks 支付的訂單。
您需要 NestJS 中的可維護 Stripe 模組、客戶端儲存庫中的原始程式碼以及記錄的即時金鑰切換,而不是放入 main.ts 中的一次性 Express 腳本。
NestJS 建立第一個 PaymentIntent 或附加付款方式。定期條紋計費和客戶入口網站保留在伺服器上。繁重的計費工作可能需要自訂報價。
Next.js、React 或 mobile 已經呼叫此 NestJS API。 NestJS 的 Stripe 整合僅是 API 端——如果您也需要的話,前端 Stripe.js 是不同的平台。
Demo
預覽 NestJS 伺服器路徑:建立 PaymentIntent、接收 POST /webhooks/stripe、在 rawBody 上建構事件、更新訂單狀態。相容性檢查後,您的 Stripe 帳戶的即時沙箱即可使用。本頁面不處理真實收費,也不在NestJS收卡。
運作方式
標準 Bacodo 附加工作流程,針對 Express 與 Fastify、rawBody、ConfigModule 以及您的服務已使用的 ORM 進行特定於 NestJS 的檢查。
01
確認 NestJS 的 Stripe 集成,以及第一天是否是 NestJS API 上的 PaymentIntents、結帳會話或兩者。
02
查看 NestJS / Node 版本、HTTP 適配器(Express 預設或 Fastify)、現有訂單持久性、身份驗證防護以及您是否已經擁有 Stripe 帳戶。
03
新增條帶包、付款模組、建立意圖端點和用於驗證原始正文上的簽名的 Webhook 控制器。
04
從 env 連線 ConfigService:金鑰、客戶端的可發佈金鑰、webhook 金鑰以及將呼叫的公共 HTTPS URL Stripe。
05
針對 NestJS Webhook 執行 Stripe CLI 或儀表板測試事件,以及建立意圖和拒絕路徑。確認已解析的 JSON 正文未如預期簽名。
06
提供 NestJS 原始碼、環境註解和即時金鑰清單。 NestJS 實作由您負責維護。
架構
NestJS 進程持有金鑰。客戶端要求 NestJS 控制器建立 PaymentIntent。 Stripe 透過 webhook 通知 NestJS。 NestJS 驗證 rawBody 上的簽名,然後寫入訂單狀態。
支援的技術
Stripe SDK 接受的 Node LTS 上的目前 NestJS。預設 HTTP 適配器是 Express。只有當 NestJS 應用程式啟動方式已如此且我們在相容性檢查中同意時,才會包含 Fastify。
PaymentIntents、結帳會話和 webhooks.constructEvent。除非您明確要求,否則我們不會為產品製作非官方的 Nestjs-stripe 包裝器。
訂單或權利更新保留在 Prisma、TypeORM、MikroORM 或您已有的儲存庫上。該附加元件不會發明新的資料庫。
您的 Stripe 帳戶、NestJS 使用的測試和即時金鑰、webhook 端點和儀表板事件。 Stripe 處理費由 Stripe 負擔。
可以執行 Node 並從 Stripe 接收 HTTPS POST 的主機。僅靜態網站或僅 Next.js 匯出無法託管此 NestJS Webhook 路徑。
交付內容
Pricing
此價格僅適用於 NestJS 平台。它不使用 Next.js、Django、FastAPI、React 或 Flutter 附加定價。
NestJS 的 Stripe 集成
將生產就緒的 Stripe PaymentIntents 和簽署的 Webhooks 新增至現有的 NestJS API 並保留原始程式碼。
需求
$175
一次性NestJS
需要 frontend?
安全結帳由stripe
交付與安全
典型的 NestJS Stripe 整合的範圍是在 NestJS 相容性檢查之後。時間軸取決於您的 HTTP 適配器、驗證防護以及用戶端呼叫 NestJS 的方式。
在我們移交之前,會針對 NestJS 應用程式執行測試模式 PaymentIntents、Webhook 簽章、重試和拒絕路徑。
金鑰和 Webhook 簽章金鑰保留在伺服器環境中。客戶端僅收到可發佈的金鑰或短期的 client_secret。
NestJS webhook 控制器在更新訂單或權利狀態之前驗證原始主體上的 Stripe 簽章。
我們不主張 PCI 認證、零欺詐或保證批准率。 NestJS 不儲存 PAN。卡資料是由客戶端上的 Stripe Checkout 或 Elements 收集的,而不是我們保留的自訂 NestJS 卡 DTO。
FAQ
Stripe Integration for NestJS 包括官方 stripe Node SDK、NestJS Payments 模組、create-PaymentIntent 服務、在原始主體上調用 constructEvent 的 Webhook 控制器、現有商店的訂單狀態更新、針對 Stripe 測試事件的測試以及移交註釋。您會在專案中收到 NestJS 原始碼。 Stripe 費用和您的 Stripe 帳戶是分開的。
是的。 Stripe Integration for NestJS 是為您已有的 NestJS API 建置的。我們將模組、控制器和 ConfigService env 放入您目前的 NestJS 應用程式中,而不是將單獨的演示儲存庫作為可交付成果提供。
不可以。 NestJS 不得存放 PAN。客戶使用 Stripe Checkout 或 Elements。 Stripe Integration for NestJS 擁有伺服器端 PaymentIntents、webhooks 和訂單寫入。發布原始卡片資料的自訂 NestJS DTO 超出了預設範圍。
NestJS 的 Stripe Integration 使用官方的 stripe Node 函式庫來實作 PaymentIntents、Checkout Sessions 和 webhooks.constructEvent。除非您明確要求,否則我們不會為產品製作非官方的 Nestjs-stripe 包裝器。
stripe.webhooks.constructEvent 驗證 Stripe 簽章的確切位元組。 Nest 的預設 JSON 解析器會改變該主體。 Stripe Integration for NestJS 在 webhook 路由上啟用 rawBody(或 Fastify 原始解析器)。使用 @Body() 會導致 NestJS 簽名檢查在生產中失敗。
NestJS 的預設 Stripe 整合假定 Nest 附帶 Express 適配器。只有當您的 NestJS 應用程式已使用 FastifyAdapter 啟動並且我們在 NestJS 相容性檢查期間同意原始主體路徑時,才會包含 Fastify。
NestJS 可以建立 PaymentIntent 或 Checkout Session 並儲存 Stripe 客戶 ID。定期 Stripe Billing 產品、客戶入口網站和發票邏輯保留在伺服器上。訂閱量大的 NestJS 工作可能需要自訂報價。
NestJS 程序使用 ConfigService/環境變數中的金鑰和 Webhook 簽章金鑰。客戶端僅收到可發布的金鑰。 NestJS 的 Stripe Integration 不會將金鑰放入 DTO 或前端包中。
我們首先針對 Stripe 測試鍵實作 Stripe Integration for NestJS 並測試 Webhook 事件。上線是 Stripe Dashboard 和 NestJS env 中記錄的金鑰和端點切換,而不是附加授權啟動。
NestJS 建立支援 SCA 的 PaymentIntents。客戶端使用 Stripe.js 或 Checkout 完成 3-D Secure。 NestJS 僅在 webhook 上的 payment_intent.succeeded 之後完成,而不是僅在瀏覽器重定向之後完成。
是,用於在 NestJS 建立的 PaymentIntent 或結帳會話之後實作。 NestJS 201 對客戶端的回應並不是事實的來源。 Webhook 控制器驗證簽名,然後將訂單標記為已付款。
是的。 Stripe Integration for NestJS 通常會在現有 NestJS 訂單模型旁邊新增欄位或精簡付款記錄,而不是取代 Prisma、TypeORM 或 MikroORM。
不需要。您建立並擁有 Stripe 帳戶、API 金鑰和 Stripe 處理費。 NestJS 附加價格是在您的 NestJS 專案中實施的價格,而不是 Bacodo 支付授權的價格。
不。 NestJS 是一個獨立的 Node API。 Next.js 應用程式路由器和路由處理程序是 Next.js 的 Stripe 整合。我們不會將 NestJS API 重寫到此 NestJS 附加價格中的 Next.js 中。
是的。 PaymentIntent 或 Checkout 會話元資料、客戶記錄以及 Webhook 確認後保留的欄位在 Stripe Integration for NestJS 期間與您現有的 NestJS 訂單模型保持一致。
NestJS 原始碼位於您的儲存庫中,因此您的團隊可以維護它。包含的 30 天支援涵蓋了已交付的 Stripe Integration for NestJS 範圍中的技術問題和缺陷,而不是不相關的 NestJS 功能工作。
在 30 天的時間內,我們協助解決因記錄的 Stripe API 或 stripe 包變更而導致的已交付 NestJS 整合的損壞。此後持續的 NestJS 升級是您的維護,或者是擴展技術支援(如果您購買)。
我們記錄如何讀取 PaymentIntent 狀態、Stripe 儀表板日誌和 NestJS webhook 交付。 30 天支援包括對簽章失敗(通常是 rawBody)、重試以及交付的 NestJS 流的金鑰配置錯誤進行故障排除。
我們根據我們在整合時固定的條帶版本來確認您的 NestJS 和 Node LTS 版本。較舊或嚴重分叉的 NestJS 運行時可能需要額外的範圍。
交付的 NestJS Stripe 路徑包含移交後 30 天。擴展技術支援是可選的,費用為 NestJS 附加價格的 20%,涵蓋針對同一 NestJS 整合(而不是新產品構建)的六個月以上的技術幫助。
將生產就緒的 Stripe 付款添加到現有的 NestJS API,保留原始程式碼,並讓伺服器自行實現。
$175