BacodoBACODO

Componente aggiuntivo NestJS

Integrazione Stripe per NestJS

Aggiungi lo stripe Node SDK ufficiale, un modulo Pagamenti e un controller webhook che verifica Stripe-Signature sul corpo grezzo. NestJS è l'API: non monta Payment Element e non è un gestore di percorsi Next.js.

  • Codice sorgente completo incluso e tuo in modo permanente
  • Non è richiesta alcuna chiave di licenza aggiuntiva o licenza ricorrente
  • Pronto per la produzione e testato
  • Integrato nel tuo progetto e stack NestJS esistente
  • Supporto tecnico post-consegna di 30 giorni incluso
  • Supporto tecnico esteso opzionale di 6 mesi al 20% del prezzo aggiuntivo

Da

$175

USD · NestJS

Visualizza la demo

Integrazione Stripe per NestJS · NestJS

Codice sorgente completoNessuna chiave di licenzaPronto per la produzioneIntegrazione testataSupporto di 30 giorni

Requirements

What Integrazione Stripe per NestJS needs

  • Progetto NestJS esistente
  • Accesso a Stripe Test Mode
  • Serve un frontend per l’interfaccia di pagamento

Non serve l’accesso al repository. L’accesso al progetto serve solo se volete che Bacodo integri direttamente.

Cosa fa

Stripe sulla tua API NestJS: il controller non è un modulo di carta

Bacodo integra Stripe nel progetto NestJS che già possiedi. Dopo la consegna, il modulo, il servizio e il controller risiedono nel repository. Possiedi ancora l'account Stripe, le chiavi API e le tariffe Stripe. NestJS non memorizza mai il PAN.

Problema che risolve

Un percorso Stripe NestJS di produzione necessita dell'SDK stripe ufficiale, della creazione di PaymentIntent in un provider e del buildEvent nel buffer di richiesta non modificato. Il parser JSON predefinito di Nest interrompe la verifica della firma se @Body() il webhook. Questo è un vero bug, non uno slogan.

Come interviene nel progetto

Aggiungiamo un modulo NestJS (ConfigService per STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET), un servizio che crea PaymentIntents e un controller webhook che legge rawBody. Le scritture degli ordini passano attraverso il repository o l'ORM che già usi: Prisma, TypeORM o MikroORM, non un negozio solo Bacodo.

Perché fa risparmiare tempo di sviluppo

Il tuo team salta la prima implementazione di produzione di NestJS Stripe: rawBody su Express o Fastify, gestione degli eventi idempotenti, PaymentIntents compatibili con SCA e un passaggio di consegne che documenta le chiavi test-to-live.

Per chi è

Ingegneri e agenzie backend che già utilizzano NestJS e necessitano di un'API di pagamento gestibile. Se desideri Next.js App Router o React SPA, questi sono atterraggi Stripe diversi.

Funzioni chiave

Cosa include Integrazione Stripe per NestJS

SDK stripe ufficiale in un provider NestJS

Crea PaymentIntent con il pacchetto stripe Node all'interno di un servizio NestJS. La chiave segreta proviene da ConfigService / env, mai da un DTO pubblicato dal client e mai da un bundle frontend.

Il controller webhook utilizza rawBody, non @Body()

stripe.webhooks.constructEvent necessita dei byte esatti firmati Stripe. Abilitiamo Nest rawBody (o un parser raw Fastify) su quel percorso. L'analisi preliminare di JSON è il motivo per cui le integrazioni di NestJS Stripe falliscono in produzione.

Stato dell'ordine NestJS dopo payment_intent.succeeded

L'adempimento viene eseguito nel gestore NestJS dopo che buildEvent ha esito positivo, non dopo una pagina di ringraziamento. Aggiorniamo il tuo ordine esistente o il record dei tuoi diritti in modo che l'API che già esponi rifletta lo stato di pagamento.

Modalità di test NestJS e chiavi Stripe live

Spedisci prima NestJS con le chiavi di test Stripe e il segreto del webhook. La messa in modalità live è un passaggio documentato all'env e all'endpoint Dashboard, non a una licenza aggiuntiva.

Gestione idempotente del webhook NestJS

La banda riprova. Il gestore NestJS disattiva event.id (o PaymentIntent id) in modo che un POST duplicato non si compia due volte.

I tuoi clienti NestJS rimangono tali

Un'app React, Next.js o mobile riceve solo una chiave pubblicabile e un client_secret di breve durata da questa API NestJS. Questo componente aggiuntivo è il percorso del server NestJS, non Elements inside Nest.

Casi d’uso

Quando Integrazione Stripe per NestJS è adatto

API NestJS esistente per il commercio o la prenotazione

Crei già ordini in NestJS e hai bisogno dell'API per creare PaymentIntent e contrassegnare gli ordini pagati dai webhook.

Agenzia che consegna un'API client NestJS alla produzione

È necessario un modulo Stripe gestibile in NestJS, sorgente nel repository del client e un cutover live-key documentato invece di uno script Express una tantum inserito in main.ts.

SaaS fatturato tramite un'API NestJS

NestJS crea il primo PaymentIntent o allega un metodo di pagamento. La fatturazione Stripe ricorrente e il portale clienti rimangono sul server. Lavori di fatturazione pesanti potrebbero richiedere un preventivo personalizzato.

NestJS dietro un frontend separato

Next.js, React o mobile chiamano già questa API NestJS. Stripe Integration for NestJS è solo lato API: il frontend Stripe.js è una piattaforma diversa se ne hai bisogno.

Demo

Anteprima del percorso del webhook NestJS Stripe

Visualizza l'anteprima del percorso del server NestJS: crea PaymentIntent, ricevi POST /webhooks/stripe, buildEvent su rawBody, aggiorna lo stato dell'ordine. Una sandbox live sul tuo account Stripe è disponibile dopo il controllo di compatibilità. Questa pagina non elabora addebiti reali e non raccoglie carte in NestJS.

Come funziona

Come viene fornita l'integrazione Stripe per NestJS

Flusso di lavoro aggiuntivo Bacodo standard, con controlli specifici di NestJS per Express vs Fastify, rawBody, ConfigModule e l'ORM già utilizzato dai tuoi servizi.

  1. 01

    Seleziona NestJS Stripe

    Conferma l'integrazione di Stripe per NestJS e se il primo giorno è PaymentIntents, Checkout Sessions o entrambi sull'API NestJS.

  2. 02

    Controllo di compatibilità NestJS

    Controlla le versioni NestJS/Nodo, l'adattatore HTTP (Express default o Fastify), la persistenza degli ordini esistenti, le protezioni di autenticazione e se disponi già di un account Stripe.

  3. 03

    Integrazione in NestJS

    Aggiungi il pacchetto stripe, un modulo Payments, un endpoint create-intent e un controller webhook che verifica le firme sul corpo non elaborato.

  4. 04

    Configura l'app NestJS

    Wire ConfigService da env: chiave segreta, chiave pubblicabile per i client, segreto del webhook e lo stripe URL HTTPS pubblico che chiamerà.

  5. 05

    Testa il percorso di pagamento NestJS

    Esegui eventi di test della CLI o della dashboard di Stripe rispetto al webhook NestJS, oltre a percorsi di creazione di intenti e di rifiuto. Conferma che un corpo JSON analizzato non riesce a firmare come previsto.

  6. 06

    Consegnare l'origine NestJS

    Fornisci il codice sorgente NestJS, le note di ambiente e un elenco di controllo con tasti live. La manutenzione dell'implementazione NestJS spetta a te.

Architettura

Come Stripe si connette a un progetto NestJS

Il processo NestJS detiene la chiave segreta. I clienti chiedono a un controller NestJS di creare un PaymentIntent. Stripe invia una notifica a NestJS tramite webhook. NestJS verifica la firma su rawBody, quindi scrive lo stato dell'ordine.

Applicazione clienteController NestJSSDK del nodo stripeStripe Payment IntentsWebhook → NestJS rawBodyIl tuo ORM/repository

Tecnologie supportate

Cosa usa davvero Integrazione Stripe per NestJS

NestJS su Node.js

NestJS corrente su un nodo LTS accettato dall'SDK di stripe. L'adattatore HTTP predefinito è Express. Fastify è incluso solo se questo è già il modo in cui si avvia l'app NestJS e lo concordiamo nel controllo di compatibilità.

Libreria ufficiale di stripe Node

PaymentIntent, sessioni di pagamento e webhooks.constructEvent. Non creiamo un wrapper Nestjs-Stripe non ufficiale per il prodotto a meno che tu non ne richieda esplicitamente uno.

La tua persistenza NestJS

Gli aggiornamenti degli ordini o dei diritti rimangono su Prisma, TypeORM, MikroORM o sul repository che già possiedi. Questo componente aggiuntivo non inventa un nuovo database.

Account Stripe per l'API NestJS

Il tuo account Stripe, le chiavi di test e attive utilizzate da NestJS, endpoint webhook ed eventi Dashboard. Le spese di elaborazione di Stripe restano a carico di Stripe.

Hosting NestJS richiesto

Un host che può eseguire Node e ricevere POST HTTPS da Stripe. Un sito solo statico o un'esportazione solo Next.js non può ospitare questo percorso webhook NestJS.

Cosa è incluso

Cosa include Stripe Integration per NestJS

  • Integrazione nel progetto NestJS esistente
  • Codice sorgente completo nel tuo repository
  • ConfigModule env, modulo Pagamenti e controller webhook
  • PaymentIntent o Checkout Session creano il percorso richiesto da questa API
  • rawBody / note dell'adattatore in modo che buildEvent verifichi effettivamente
  • Webhook e flussi di intenti NestJS testati prima della consegna
  • Note di consegna per il passaggio dal test al live
  • Supporto tecnico di 30 giorni dopo la consegna

Non nel prezzo aggiuntivo

  • Account Stripe, chiavi API e commissioni di elaborazione Stripe: sono di tua proprietà
  • Una nuova vetrina o interfaccia utente Stripe.js: NestJS è l'API
  • Una riscrittura da NestJS a Next.js Route Handlers
  • Marketplace Connect, prodotti di fatturazione personalizzati o sostituzione di acquisti in-app, a meno che non siano considerati lavori personalizzati

Pricing

Integrazione Stripe per i prezzi NestJS

Questo prezzo è solo per la piattaforma NestJS. Non utilizza i prezzi dei componenti aggiuntivi Next.js, Django, FastAPI, React o Flutter.

Integrazione Stripe per NestJS

Aggiungi Stripe PaymentIntent pronti per la produzione e webhook firmati a un'API NestJS esistente e mantieni il codice sorgente.

Requisiti

  • Progetto NestJS esistente
  • Accesso a Stripe Test Mode
  • Serve un frontend per l’interfaccia di pagamento

$175

una tantum

NestJS

Vi serve un frontend?

  • Codice sorgente completo
  • Nessun costo di licenza
  • 30 giorni di supporto
  • Integrazione completa

Pagamento sicuro constripe

Consegna e sicurezza

Pratiche di consegna e sicurezza di NestJS

Consegna NestJS stimata

L'integrazione tipica di NestJS Stripe viene effettuata dopo il controllo di compatibilità di NestJS. La sequenza temporale dipende dall'adattatore HTTP, dalle protezioni di autenticazione e dal modo in cui i client chiamano NestJS.

Testato su NestJS prima della consegna

PaymentIntent in modalità test, firme webhook, nuovi tentativi e percorsi di rifiuto vengono esercitati sull'app NestJS prima della consegna.

I segreti di Stripe rimangono in NestJS ConfigService

Le chiavi segrete e i segreti di firma del webhook rimangono nell'ambiente del server. I client ricevono solo una chiave pubblicabile o un client_secret di breve durata.

Verifica del webhook prima della scrittura di NestJS

Il controller del webhook NestJS verifica le firme Stripe sul corpo non elaborato prima di aggiornare l'ordine o lo stato dei diritti.

Nessuna dichiarazione di sicurezza NestJS non verificabile

Non rivendichiamo la certificazione PCI, zero frodi o tassi di approvazione garantiti. NestJS non memorizza PAN. I dati della carta vengono raccolti da Stripe Checkout o Elements su un client, non su una carta NestJS personalizzata DTO che persistiamo.

FAQ

Domande frequenti

Cosa include l'integrazione Stripe per NestJS?

L'integrazione Stripe per NestJS include l'SDK ufficiale stripe Node, un modulo NestJS Payments, un servizio create-PaymentIntent, un controller webhook che chiama buildEvent sul corpo non elaborato, aggiornamenti sullo stato dell'ordine sul tuo negozio esistente, test rispetto agli eventi di test Stripe e note di consegna. Ricevi il sorgente NestJS nel tuo progetto. Le commissioni Stripe e il tuo account Stripe sono separati.

Integrerai Stripe nel nostro progetto NestJS esistente?

Sì. Stripe Integration for NestJS è progettato per un'API NestJS di cui già disponi. Inseriamo un modulo, un controller e un ambiente ConfigService nella tua attuale app NestJS invece di spedire un repository demo separato come risultato finale.

Stripe Integration for NestJS raccoglie i numeri delle carte in NestJS?

No. NestJS non deve archiviare PAN. I clienti utilizzano Stripe Checkout o Elements. Stripe Integration for NestJS possiede PaymentIntent lato server, webhook e scritture degli ordini. Un DTO NestJS personalizzato che pubblica i dati grezzi delle carte non rientra nell'ambito predefinito.

Quale pacchetto Stripe utilizza Stripe Integration for NestJS?

Stripe Integration for NestJS utilizza la libreria stripe Node ufficiale per PaymentIntents, Checkout Sessions e webhooks.constructEvent. Non creiamo un wrapper Nestjs-Stripe non ufficiale per il prodotto a meno che tu non ne richieda esplicitamente uno.

Perché Stripe Integration for NestJS insiste su rawBody?

stripe.webhooks.constructEvent verifica i byte esatti firmati da Stripe. Il parser JSON predefinito di Nest modifica quel corpo. L'integrazione Stripe per NestJS abilita rawBody (o un parser raw Fastify) sulla rotta del webhook. Utilizzando @Body() è possibile che i controlli della firma NestJS falliscano in produzione.

Fastify è incluso nell'integrazione Stripe per NestJS?

L'integrazione Stripe predefinita per NestJS presuppone l'adattatore Express fornito da Nest. Fastify è incluso solo se la tua app NestJS si avvia già con FastifyAdapter e concordiamo il percorso del corpo grezzo durante il controllo di compatibilità di NestJS.

Stripe Integration for NestJS può riscuotere i pagamenti dell'abbonamento?

NestJS può creare un PaymentIntent o una sessione di pagamento e memorizzare l'ID cliente Stripe. I prodotti Stripe Billing ricorrenti, il portale clienti e la logica delle fatture rimangono sul server. Il lavoro NestJS con abbonamenti pesanti potrebbe richiedere un preventivo personalizzato.

Dove si trovano le chiavi pubblicabili e segrete di Stripe in un'app NestJS?

Il processo NestJS utilizza la chiave segreta e il segreto di firma del webhook da ConfigService/variabili di ambiente. I client ricevono solo la chiave pubblicabile. Stripe Integration for NestJS non inserisce chiavi segrete nei DTO o in un bundle frontend.

Come funzionano la modalità test Stripe e la modalità live in NestJS?

Implementiamo l'integrazione Stripe per NestJS rispetto alle chiavi di test Stripe e testiamo prima gli eventi webhook. La messa in modalità live è una chiave documentata e un passaggio all'endpoint nella dashboard Stripe e nell'ambiente NestJS, non un'attivazione di licenza aggiuntiva.

In che modo Stripe Integration for NestJS gestisce 3-D Secure/SCA?

NestJS crea PaymentIntent che supportano la SCA. Il cliente completa 3-D Secure con Stripe.js o Checkout. NestJS soddisfa solo dopo payment_intent.succeeded sul webhook, non solo dopo un reindirizzamento del browser.

I webhook Stripe sono necessari per il pagamento NestJS?

Sì per l'adempimento dopo un PaymentIntent o una sessione di pagamento creata da NestJS. Una risposta NestJS 201 al cliente non è la fonte della verità. Il controller del webhook verifica le firme e quindi contrassegna l'ordine pagato.

Possiamo mantenere Prisma o TypeORM con l'integrazione Stripe per NestJS?

Sì. L'integrazione di Stripe per NestJS in genere aggiunge campi o un record di pagamento sottile accanto al modello di ordine NestJS esistente invece di sostituire Prisma, TypeORM o MikroORM.

Il prezzo dell'integrazione Stripe per NestJS include un account Stripe o commissioni?

No. Crei e possiedi l'account Stripe, le chiavi API e le tariffe di elaborazione Stripe. Il prezzo del componente aggiuntivo NestJS rappresenta l'implementazione nel tuo progetto NestJS, non una licenza di pagamento Bacodo.

L'integrazione di Stripe per NestJS è uguale ai gestori di percorsi Next.js?

No. NestJS è un'API Node autonoma. Il router dell'app Next.js e i gestori di routing sono l'integrazione Stripe per Next.js. Non riscriviamo un'API NestJS in Next.js all'interno del prezzo del componente aggiuntivo NestJS.

Possiamo personalizzare le ricevute e i metadati Stripe in NestJS?

Sì. I metadati PaymentIntent o Checkout Session, i record dei clienti e i campi mantenuti dopo la conferma del webhook sono allineati al modello di ordine NestJS esistente durante l'integrazione di Stripe per NestJS.

Quale supporto NestJS è incluso dopo la consegna di Stripe?

La fonte NestJS è nel tuo repository, quindi il tuo team può gestirla. Il supporto di 30 giorni incluso copre domande tecniche e difetti nell'ambito dell'integrazione Stripe fornita per NestJS, non nel funzionamento delle funzionalità NestJS non correlate.

Come vengono gestiti gli aggiornamenti stripe o NestJS dopo l'integrazione?

Durante il periodo di 30 giorni aiutiamo in caso di interruzione dell'integrazione NestJS fornita causata da un'API Stripe documentata o da una modifica del pacchetto stripe. Gli aggiornamenti successivi di NestJS costituiscono la tua manutenzione o il supporto tecnico esteso se lo acquisti.

Cosa succede se i pagamenti Stripe falliscono in un'app NestJS di produzione?

Documentiamo come leggere lo stato di PaymentIntent, i log di Stripe Dashboard e la consegna del webhook NestJS. Il supporto di 30 giorni include la risoluzione dei problemi relativi agli errori di firma (solitamente rawBody), ai nuovi tentativi e alle chiavi configurate in modo errato per il flusso NestJS consegnato.

Quali versioni di NestJS sono compatibili con Stripe Integration per NestJS?

Confermiamo le tue versioni NestJS e Node LTS rispetto alla versione stripe che aggiungiamo al momento dell'integrazione. I runtime NestJS più vecchi o fortemente biforcati potrebbero richiedere un ambito aggiuntivo.

Cos'è il supporto di 30 giorni rispetto al supporto tecnico esteso di 6 mesi per l'integrazione Stripe per NestJS?

Per il percorso Stripe NestJS consegnato sono inclusi 30 giorni dalla consegna. Il supporto tecnico esteso è facoltativo al 20% del prezzo del componente aggiuntivo NestJS e copre altri sei mesi di assistenza tecnica sulla stessa integrazione NestJS, non sulla creazione di un nuovo prodotto.

Integrazione Stripe per NestJS

Aggiungi i pagamenti Stripe pronti per la produzione alla tua API NestJS esistente, mantieni il codice sorgente e lascia che sia il server a completarsi.

$175