BacodoBACODO

Dodatek NestJS

Integracja Stripe dla NestJS

Dodaj oficjalny zestaw SDK Stripe Node, moduł Payments i kontroler webhook, który weryfikuje podpis Stripe na surowej treści. NestJS to API — nie montuje elementu płatniczego i nie jest modułem obsługi tras Next.js.

  • Zawiera pełny kod źródłowy i jest Twój na stałe
  • Nie jest wymagany dodatkowy klucz licencyjny ani licencja cykliczna
  • Gotowe do produkcji i przetestowane
  • Zintegrowany z istniejącym projektem i stosem NestJS
  • W cenie 30-dniowa pomoc techniczna po przekazaniu
  • Opcjonalne 6-miesięczne rozszerzone wsparcie techniczne za 20% ceny dodatku

Od

$175

USD · NestJS

Integracja Stripe dla NestJS · NestJS

Pełny kod źródłowyBrak klucza licencyjnegoGotowy do produkcjiPrzetestowana integracja30-dniowe wsparcie

Requirements

What Integracja Stripe dla NestJS needs

  • Istniejący projekt NestJS
  • Dostęp do Stripe Test Mode
  • Do interfejsu płatności potrzebny jest frontend

Dostęp do repozytorium nie jest wymagany. Dostęp do projektu jest potrzebny tylko, gdy Bacodo ma zintegrować dodatek bezpośrednio.

Co robi

Stripe na Twoim API NestJS — kontroler nie jest formą karty

Bacodo integruje Stripe z projektem NestJS, który już posiadasz. Po przekazaniu moduł, usługa i kontroler znajdują się w Twoim repozytorium. Nadal jesteś właścicielem konta Stripe, kluczy API i opłat Stripe. NestJS nigdy nie przechowuje PAN.

Problem, który rozwiązuje

Ścieżka produkcyjna NestJS Stripe wymaga oficjalnego zestawu SDK Stripe, utworzenia PaymentIntent u dostawcy i zdarzenia konstrukcyjnego w niezmodyfikowanym buforze żądań. Domyślny parser JSON Nest przerywa weryfikację podpisu, jeśli użyjesz @Body() webhooka. To prawdziwy błąd, a nie slogan.

Jak ląduje w projekcie

Dodajemy moduł NestJS (ConfigService dla STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET), usługę tworzącą PaymentIntents oraz kontroler webhook czytający rawBody. Zapisy zamówień przechodzą przez repozytorium lub ORM, którego już używasz — Prisma, TypeORM lub MikroORM — a nie sklep obsługujący wyłącznie Bacodo.

Dlaczego oszczędza czas programowania

Twój zespół pomija pierwszą produkcyjną implementację NestJS Stripe: rawBody w Express lub Fastify, idempotentna obsługa zdarzeń, PaymentIntents obsługujące SCA i przekazanie dokumentujące klucze do testowania.

Dla kogo to jest

Inżynierowie zaplecza i agencje, które już korzystają z NestJS i potrzebują łatwego w utrzymaniu interfejsu API płatności. Jeśli potrzebujesz routera aplikacji Next.js lub React SPA, są to różne lądowania Stripe.

Kluczowe funkcje

Co zawiera Integracja Stripe dla NestJS

Oficjalny pakiet SDK w paski u dostawcy NestJS

Utwórz PaymentIntents za pomocą pakietu Stripe Node w usłudze NestJS. Tajny klucz pochodzi z ConfigService / env — nigdy z DTO publikowanego przez klienta i nigdy z pakietu frontendowego.

Kontroler webhooka używa rawBody, a nie @Body()

stripe.webhooks.constructEvent wymaga dokładnie tych bajtów podpisanych przez Stripe. Włączamy Nest rawBody (lub parser surowego Fastify) na tej trasie. Najpierw analizowanie JSON powoduje niepowodzenie integracji NestJS Stripe w środowisku produkcyjnym.

Stan zamówienia NestJS po pomyślnym zakończeniu płatności

Realizacja odbywa się w procedurze obsługi NestJS po pomyślnym zakończeniu zdarzenia ConstructEvent, a nie po stronie z podziękowaniami. Aktualizujemy Twoje istniejące zamówienie lub rekord uprawnień, aby interfejs API, który już udostępniasz, odzwierciedlał stan płatny.

Tryb testowy NestJS, a następnie aktywne klucze Stripe

Najpierw wyślij NestJS z kluczami testowymi Stripe i sekretem webhooka. Uruchomienie to udokumentowane przeniesienie środowiska i punktu końcowego pulpitu nawigacyjnego, a nie licencja dodatkowa.

Idempotentna obsługa webhooka NestJS

Próby pasków. Program obsługi NestJS wyłącza event.id (lub identyfikator PaymentIntent), aby zduplikowany POST nie został dwukrotnie spełniony.

Twoi klienci NestJS pozostają klientami

React, Next.js lub aplikacja mobilna otrzymuje tylko klucz do publikacji i krótkotrwały sekret_klienta z tego API NestJS. Ten dodatek to ścieżka serwera NestJS, a nie elementy wewnątrz Nest.

Zastosowania

Kiedy Integracja Stripe dla NestJS pasuje

Istniejący interfejs API handlu lub rezerwacji NestJS

Tworzysz już zamówienia w NestJS i potrzebujesz API, aby utworzyć PaymentIntents i oznaczyć te zamówienia jako opłacone z webhooków.

Agencja przekazująca API klienta NestJS do produkcji

Potrzebujesz łatwego w utrzymaniu modułu Stripe w NestJS, źródła w repozytorium klienta i udokumentowanego przeniesienia klucza na żywo zamiast jednorazowego skryptu Express upuszczanego do pliku main.ts.

SaaS rozliczany za pośrednictwem interfejsu API NestJS

NestJS tworzy pierwszy PaymentIntent lub dołącza metodę płatności. Cykliczne rozliczenia Stripe i portal klienta pozostają na serwerze. Ciężkie prace związane z rozliczeniami mogą wymagać niestandardowej wyceny.

NestJS za oddzielnym frontendem

Next.js, React lub mobile już wywołuje to API NestJS. Integracja Stripe dla NestJS to tylko strona API — frontend Stripe.js to inna platforma docelowa, jeśli też tego potrzebujesz.

Demo

Podgląd ścieżki webhooka NestJS Stripe

Podgląd ścieżki serwera NestJS: utwórz PaymentIntent, odbierz POST /webhooks/stripe,structEvent na rawBody, zaktualizuj stan zamówienia. Aktywna piaskownica powiązana z Twoim kontem Stripe będzie dostępna po sprawdzeniu zgodności. Ta strona nie przetwarza rzeczywistych opłat i nie gromadzi kart w NestJS.

Jak to działa

Jak realizowana jest integracja Stripe dla NestJS

Standardowy przepływ pracy dodatku Bacodo ze specyficznymi dla NestJS kontrolami Express vs Fastify, rawBody, ConfigModule i ORM, z których już korzystają Twoje usługi.

  1. 01

    Wybierz opcję Pasek NestJS

    Potwierdź integrację Stripe z NestJS i czy pierwszym dniem są PaymentIntents, Sesje realizacji transakcji, czy oba w interfejsie API NestJS.

  2. 02

    Kontrola zgodności NestJS

    Sprawdź wersje NestJS/Node, adapter HTTP (domyślny Express lub Fastify), trwałość istniejących zamówień, ochronę autoryzacji i to, czy masz już konto Stripe.

  3. 03

    Zintegruj z NestJS

    Dodaj pakiet Stripe, moduł Payments, punkt końcowy tworzenia intencji i kontroler elementu webhook, który weryfikuje podpisy w nieprzetworzonej treści.

  4. 04

    Skonfiguruj aplikację NestJS

    Wire ConfigService z env: tajny klucz, klucz do publikacji dla klientów, tajny element webhook i publiczny adres URL HTTPS, który wywoła Stripe.

  5. 05

    Przetestuj ścieżkę płatności NestJS

    Uruchamiaj zdarzenia testowe Stripe CLI lub Dashboard względem webhooka NestJS, a także ścieżki tworzenia i odrzucania. Potwierdź, że przeanalizowana treść JSON nie została podpisana zgodnie z oczekiwaniami.

  6. 06

    Przekaż źródło NestJS

    Dostarcz źródło NestJS, notatki env i listę kontrolną aktywnego klucza. Utrzymanie implementacji NestJS należy do Ciebie.

Architektura

Jak Stripe łączy się z projektem NestJS

Proces NestJS przechowuje tajny klucz. Klienci proszą kontroler NestJS o utworzenie PaymentIntent. Stripe powiadamia NestJS za pomocą webhooka. NestJS weryfikuje podpis na rawBody, a następnie zapisuje stan zamówienia.

Aplikacja klienckaKontroler NestJSpakiet SDK węzła paskowegoIntencje płatności w paskiWebhook → NestJS rawBodyTwój ORM/repozytorium

Obsługiwane technologie

Czego naprawdę używa Integracja Stripe dla NestJS

NestJS na Node.js

Bieżący NestJS na Node LTS, który akceptuje Stripe SDK. Domyślny adapter HTTP to Express. Fastify jest uwzględniane tylko wtedy, gdy aplikacja NestJS już się uruchamia i potwierdzamy to podczas sprawdzania zgodności.

Oficjalna biblioteka Stripe Node

PaymentIntents, sesje realizacji transakcji i webhooks.constructEvent. Nie tworzymy nieoficjalnego opakowania w paski typu „nestjs” dla produktu, chyba że wyraźnie tego potrzebujesz.

Twoja wytrwałość w NestJS

Aktualizacje zamówień lub uprawnień pozostają w Prisma, TypeORM, MikroORM lub repozytorium, które już posiadasz. Ten dodatek nie tworzy nowej bazy danych.

Konto Stripe dla API NestJS

Twoje konto Stripe, klucze testowe i aktywne używane przez NestJS, punkt końcowy webhooka i zdarzenia Dashboard. Opłaty za przetwarzanie Stripe pozostają w Stripe.

Wymagany hosting NestJS

Host, na którym można uruchomić Node i odbierać wiadomości HTTPS POST od Stripe. Witryna statyczna lub eksport tylko do pliku Next.js nie mogą obsługiwać tej ścieżki webhooka NestJS.

Co jest w cenie

Co obejmuje integracja Stripe dla NestJS

  • Integracja z istniejącym projektem NestJS
  • Pełny kod źródłowy w Twoim repozytorium
  • ConfigModule env, moduł płatności i kontroler webhook
  • PaymentIntent lub Checkout Session tworzą ścieżkę potrzebną dla tego interfejsu API
  • notatki rawBody/adapter, więc constEvent faktycznie weryfikuje
  • Przetestowano webhook NestJS i przepływy intencji przed przekazaniem
  • Notatki z przekazania dotyczące przejścia od testu do uruchomienia
  • 30-dniowe wsparcie techniczne po przekazaniu

Nie w cenie dodatku

  • Konto Stripe, klucze API i opłaty za przetwarzanie Stripe — jesteś ich właścicielem
  • Nowa witryna sklepowa lub interfejs Stripe.js — NestJS to API
  • Przepisanie z NestJS do obsługi tras Next.js
  • Marketplace Connect, niestandardowe produkty rozliczeniowe lub wymiana zakupów w aplikacji, chyba że są objęte zakresem prac niestandardowych

Pricing

Integracja Stripe w cenie NestJS

Ta cena dotyczy wyłącznie platformy NestJS. Nie korzysta z cen dodatków Next.js, Django, FastAPI, React ani Flutter.

Integracja Stripe dla NestJS

Dodaj gotowe do produkcji rozwiązania Stripe PaymentIntents i podpisane webhooki do istniejącego interfejsu API NestJS i zachowaj kod źródłowy.

Wymagania

  • Istniejący projekt NestJS
  • Dostęp do Stripe Test Mode
  • Do interfejsu płatności potrzebny jest frontend

$175

jednorazowo

NestJS

Potrzebujesz frontendu?

  • Pełny kod źródłowy
  • Bez opłaty licencyjnej
  • 30 dni wsparcia
  • Pełna integracja

Bezpieczna płatność przezstripe

Dostawa i bezpieczeństwo

Praktyki związane z dostawą i bezpieczeństwem NestJS

Szacowana dostawa NestJS

Typowa integracja NestJS Stripe jest ustalana po sprawdzeniu zgodności NestJS. Oś czasu zależy od adaptera HTTP, strażników autoryzacji i sposobu, w jaki klienci wywołują NestJS.

Testowane na NestJS przed przekazaniem

Intenty płatności w trybie testowym, podpisy webhook, ponowne próby i ścieżki odrzuceń są sprawdzane w aplikacji NestJS przed jej przekazaniem.

Sekrety pasków pozostają w NestJS ConfigService

Tajne klucze i sekrety podpisywania webhooków pozostają w środowisku serwera. Klienci otrzymują tylko klucz do publikacji lub krótkotrwały sekret_klienta.

Weryfikacja webhooka przed zapisem NestJS

Kontroler webhooka NestJS weryfikuje podpisy Stripe w nieprzetworzonej treści przed aktualizacją zamówienia lub stanu uprawnienia.

Żadnych nieweryfikowalnych roszczeń dotyczących bezpieczeństwa NestJS

Nie żądamy certyfikatu PCI, zerowego oszustwa ani gwarantowanych wskaźników akceptacji. NestJS nie przechowuje PAN. Dane karty są gromadzone przez Stripe Checkout lub Elements na kliencie, a nie w przypadku niestandardowej karty DTO NestJS, którą utrzymujemy.

FAQ

Najczęstsze pytania

Co obejmuje integracja Stripe dla NestJS?

Integracja Stripe dla NestJS obejmuje oficjalny pakiet SDK Stripe Node, moduł NestJS Payments, usługę create-PaymentIntent, kontroler webhook wywołującystructEvent na surowym ciele, aktualizacje stanu zamówień w istniejącym sklepie, testy pod kątem zdarzeń testowych Stripe i notatki dotyczące przekazania. W swoim projekcie otrzymujesz źródło NestJS. Opłaty Stripe i Twoje konto Stripe są odrębne.

Czy zintegrujesz Stripe z naszym istniejącym projektem NestJS?

Tak. Integracja Stripe dla NestJS jest zbudowana dla API NestJS, które już posiadasz. Dopasowujemy moduł, kontroler i środowisko ConfigService do Twojej bieżącej aplikacji NestJS, zamiast dostarczać oddzielne repozytorium demonstracyjne jako element dostarczany.

Czy Stripe Integration for NestJS zbiera numery kart w NestJS?

Nie. NestJS nie może przechowywać PAN. Klienci korzystają z Stripe Checkout lub Elements. Integracja Stripe dla NestJS posiada po stronie serwera PaymentIntents, webhooki i zapisy zamówień. Niestandardowy DTO NestJS, który publikuje nieprzetworzone dane karty, jest poza zakresem domyślnym.

Z jakiego pakietu Stripe korzysta Stripe Integration for NestJS?

Integracja Stripe dla NestJS korzysta z oficjalnej biblioteki Stripe Node dla PaymentIntents, Checkout Sessions i webhooks.constructEvent. Nie tworzymy nieoficjalnego opakowania w paski typu „nestjs” dla produktu, chyba że wyraźnie tego potrzebujesz.

Dlaczego integracja Stripe dla NestJS kładzie nacisk na rawBody?

stripe.webhooks.constructEvent sprawdza dokładnie liczbę podpisanych bajtów Stripe. Domyślny parser JSON Nest mutuje tę treść. Integracja Stripe dla NestJS umożliwia użycie rawBody (lub parsera surowego Fastify) na trasie webhooka. Użycie @Body() powoduje niepowodzenie kontroli podpisów NestJS w środowisku produkcyjnym.

Czy Fastify jest uwzględnione w integracji Stripe dla NestJS?

Domyślna integracja Stripe dla NestJS zakłada, że adapter Express jest dostarczany z Nest. Fastify jest uwzględniane tylko wtedy, gdy Twoja aplikacja NestJS została już uruchomiona za pomocą FastifyAdapter i uzgodniliśmy ścieżkę nieprzetworzonej treści podczas sprawdzania zgodności NestJS.

Czy integracja Stripe dla NestJS może pobierać opłaty za subskrypcję?

NestJS może utworzyć sesję PaymentIntent lub Checkout i przechowywać identyfikator klienta Stripe. Produkty rozliczeniowe Stripe Billing, portal klienta i logika faktur pozostają na serwerze. Praca NestJS wymagająca dużej liczby subskrypcji może wymagać niestandardowej wyceny.

Gdzie w aplikacji NestJS znajdują się klucze do publikacji i tajne klucze Stripe?

Proces NestJS wykorzystuje tajny klucz i sekret podpisywania webhooka z ConfigService/zmiennych środowiskowych. Klienci otrzymują tylko klucz do publikacji. Integracja Stripe dla NestJS nie umieszcza tajnych kluczy w DTO ani w pakiecie frontendowym.

Jak działa tryb testowy Stripe i tryb na żywo w NestJS?

Wdrażamy integrację Stripe dla NestJS z kluczami testowymi Stripe i najpierw testujemy zdarzenia webhook. Uruchomienie to udokumentowane przeniesienie klucza i punktu końcowego w Twoim Stripe Dashboard i środowisku NestJS, a nie aktywacja licencji dodatkowej.

W jaki sposób integracja Stripe dla NestJS obsługuje 3-D Secure / SCA?

NestJS tworzy PaymentIntents obsługujące SCA. Klient uzupełnia 3-D Secure za pomocą Stripe.js lub Checkout. NestJS spełnia swoją funkcję dopiero po Payment_intent.succeeded na webhooku, a nie po samym przekierowaniu przeglądarki.

Czy do realizacji transakcji NestJS wymagane są webhooki Stripe?

Tak, w przypadku realizacji po utworzonej przez NestJS sesji PaymentIntent lub realizacji transakcji. Odpowiedź NestJS 201 udzielona klientowi nie jest źródłem prawdy. Kontroler webhooka weryfikuje podpisy, a następnie zaznacza opłacone zamówienie.

Czy możemy zachować Prisma lub TypeORM z integracją Stripe dla NestJS?

Tak. Integracja Stripe dla NestJS zazwyczaj dodaje pola lub cienki rekord płatności obok istniejącego modelu zamówienia NestJS, zamiast zastępować Prisma, TypeORM lub MikroORM.

Czy cena integracji Stripe dla NestJS obejmuje konto Stripe lub opłaty?

Nie. Tworzysz i jesteś właścicielem konta Stripe, kluczy API i opłat za przetwarzanie Stripe. Ceną dodatku NestJS jest wdrożenie do Twojego projektu NestJS, a nie licencja płatnicza Bacodo.

Czy integracja Stripe dla NestJS jest taka sama jak w przypadku obsługi tras Next.js?

Nie. NestJS to samodzielny interfejs API węzła. Router aplikacji Next.js i moduły obsługi tras umożliwiają integrację Stripe z Next.js. W ramach tej ceny dodatku NestJS nie przepisujemy interfejsu API NestJS na Next.js.

Czy możemy dostosować rachunki i metadane Stripe w NestJS?

Tak. Metadane PaymentIntent lub Checkout Session, rekordy klientów i pola, które utrzymujesz po potwierdzeniu webhooka, są dopasowane do istniejącego modelu zamówienia NestJS podczas integracji Stripe dla NestJS.

Jaka obsługa NestJS będzie dostępna po przekazaniu Stripe?

Źródło NestJS znajduje się w Twoim repozytorium, więc Twój zespół może nim zarządzać. Dołączone 30-dniowe wsparcie obejmuje pytania techniczne i defekty w dostarczonej integracji Stripe dla zakresu NestJS, a nie niepowiązane prace związane z funkcjami NestJS.

W jaki sposób obsługiwane są aktualizacje Stripe lub NestJS po integracji?

W ciągu 30 dni pomagamy w przypadku awarii w dostarczonej integracji NestJS spowodowanej udokumentowaną zmianą API Stripe lub zmianą pakietu Stripe. Późniejsze aktualizacje NestJS obejmują konserwację lub rozszerzoną pomoc techniczną, jeśli ją kupisz.

Co się stanie, jeśli płatności Stripe w produkcyjnej aplikacji NestJS nie powiodą się?

Dokumentujemy sposób odczytywania statusu PaymentIntent, dzienników Stripe Dashboard i dostarczania webhooka NestJS. 30-dniowe wsparcie obejmuje rozwiązywanie problemów z błędami podpisów (zwykle rawBody), ponownymi próbami i błędnie skonfigurowanymi kluczami dla dostarczonego przepływu NestJS.

Które wersje NestJS są kompatybilne z integracją Stripe dla NestJS?

Potwierdzamy wersje NestJS i Node LTS względem wersji paskowej, którą przypinamy w czasie integracji. Starsze lub mocno rozwidlone środowiska wykonawcze NestJS mogą wymagać dodatkowego zakresu.

Czym jest 30-dniowe wsparcie w porównaniu z 6-miesięcznym rozszerzonym wsparciem technicznym dla integracji Stripe dla NestJS?

Dostarczona ścieżka NestJS Stripe obejmuje 30 dni od przekazania. Rozszerzone wsparcie techniczne jest opcjonalne w cenie 20% ceny dodatku NestJS i obejmuje dodatkowe sześć miesięcy pomocy technicznej dotyczącej tej samej integracji NestJS, a nie nowej wersji produktu.

Integracja Stripe dla NestJS

Dodaj gotowe do produkcji płatności Stripe do istniejącego API NestJS, zachowaj kod źródłowy i pozwól serwerowi na własną realizację.

$175