BacodoBACODO

Complemento NestJS

Integração Stripe para NestJS

Adicione o stripe Node SDK oficial, um módulo Payments e um controlador de webhook que verifica Stripe-Signature no corpo bruto. NestJS é a API - ele não monta o elemento de pagamento e não é o Next.js Route Handlers.

  • Código-fonte completo incluído e seu permanentemente
  • Não é necessária nenhuma chave de licença complementar ou licença recorrente
  • Pronto para produção e testado
  • Integrado ao seu projeto e pilha NestJS existente
  • 30 dias de suporte técnico pós-entrega incluído
  • Suporte técnico estendido opcional de 6 meses a 20% do preço do complemento

A partir de

$175

USD · NestJS

Ver demonstração

Integração Stripe para NestJS · NestJS

Código-fonte completoSem chave de licençaPronto para produçãoIntegração testadaSuporte de 30 dias

Requirements

What Integração Stripe para NestJS needs

  • Projeto NestJS existente
  • Acesso ao Stripe Test Mode
  • É necessário um frontend para a interface de pagamento

Não é necessário acesso ao repositório. Só precisa de acesso ao projeto se quiser que a Bacodo integre diretamente.

O que faz

Stripe em sua API NestJS – o controlador não é um formato de cartão

Bacodo integra Stripe ao projeto NestJS que você já possui. Após a entrega, o módulo, o serviço e o controlador ficam no seu repositório. Você ainda possui a conta Stripe, as chaves de API e as taxas do Stripe. NestJS nunca armazena PAN.

Problema que resolve

Um caminho NestJS Stripe de produção precisa do SDK de distribuição oficial, da criação de PaymentIntent em um provedor e de constructEvent no buffer de solicitação não modificado. O analisador JSON padrão do Nest interrompe a verificação de assinatura se você usar @Body() o webhook. Isso é um bug real, não um slogan.

Como isso chega ao projeto

Adicionamos um módulo NestJS (ConfigService para STRIPE_SECRET_KEY/STRIPE_WEBHOOK_SECRET), um serviço que cria PaymentIntents e um controlador de webhook que lê rawBody. As gravações de pedidos passam pelo repositório ou ORM que você já usa – Prisma, TypeORM ou MikroORM – não por um armazenamento exclusivo do Bacodo.

Por que economiza tempo de desenvolvimento

Sua equipe pula a primeira implementação de produção do NestJS Stripe: rawBody no Express ou Fastify, manipulação de eventos idempotentes, PaymentIntents com reconhecimento de SCA e uma transferência que documenta chaves de teste para operação.

Para quem é

Engenheiros e agências de back-end que já executam NestJS e precisam de uma API de pagamento sustentável. Se você queria o Next.js App Router ou um React SPA, esses são patamares diferentes do Stripe.

Funções principais

O que Integração Stripe para NestJS inclui

SDK oficial de distribuição em um provedor NestJS

Crie PaymentIntents com o pacote stripe Node dentro de um serviço NestJS. A chave secreta vem de ConfigService/env — nunca de um DTO que o cliente publica e nunca de um pacote frontend.

O controlador Webhook usa rawBody, não @Body()

stripe.webhooks.constructEvent precisa dos bytes exatos assinados pelo Stripe. Habilitamos Nest rawBody (ou um analisador bruto Fastify) nessa rota. Analisar JSON primeiro é como as integrações do NestJS Stripe falham na produção.

Estado do pedido NestJS após payment_intent.succeeded

O atendimento é executado no manipulador NestJS após o sucesso de constructEvent, não após uma página de agradecimento. Atualizamos seu pedido existente ou registro de direito para que a API que você já expôs reflita o estado pago.

Modo de teste NestJS e chaves Stripe ativas

Envie o NestJS com chaves de teste Stripe e o segredo do webhook primeiro. A entrada em operação é uma transição documentada do ambiente e do endpoint do Dashboard, não uma licença complementar.

Manipulação de webhook NestJS idempotente

Novas tentativas de listra. O manipulador NestJS desativa event.id (ou ID PaymentIntent) para que um POST duplicado não seja preenchido duas vezes.

Seus clientes NestJS permanecem clientes

Um aplicativo React, Next.js ou móvel recebe apenas uma chave publicável e um client_secret de curta duração desta API NestJS. Este complemento é o caminho do servidor NestJS, não os elementos dentro do Nest.

Casos de uso

Quando Integração Stripe para NestJS encaixa

API existente de comércio ou reserva NestJS

Você já cria pedidos no NestJS e precisa da API para criar PaymentIntents e marcar esses pedidos como pagos em webhooks.

Agência entregando uma API cliente NestJS para produção

Você precisa de um módulo Stripe sustentável no NestJS, fonte no repositório do cliente e uma substituição de chave ativa documentada em vez de um script Express único colocado em main.ts.

SaaS cobrado por meio de uma API NestJS

NestJS cria o primeiro PaymentIntent ou anexa uma forma de pagamento. O Stripe Billing recorrente e o portal do cliente permanecem no servidor. Trabalhos pesados ​​de faturamento podem precisar de um orçamento personalizado.

NestJS por trás de um frontend separado

Next.js, React ou mobile já chamam essa API NestJS. Stripe Integration para NestJS é apenas o lado da API - o frontend Stripe.js é uma plataforma diferente, se você precisar disso também.

Demo

Visualização do caminho do webhook NestJS Stripe

Visualize o caminho do servidor NestJS: crie PaymentIntent, receba POST /webhooks/stripe, constructEvent em rawBody, atualize o estado do pedido. Uma sandbox ativa em sua conta Stripe está disponível após a verificação de compatibilidade. Esta página não processa cobranças reais e não coleta cartões no NestJS.

Como funciona

Como a integração Stripe para NestJS é fornecida

Fluxo de trabalho complementar padrão do Bacodo, com verificações específicas do NestJS para Express vs Fastify, rawBody, ConfigModule e o ORM que seus serviços já usam.

  1. 01

    Selecione a faixa NestJS

    Confirme a integração do Stripe para NestJS e se o primeiro dia é PaymentIntents, Checkout Sessions ou ambos na API NestJS.

  2. 02

    Verificação de compatibilidade NestJS

    Revise as versões NestJS/Node, adaptador HTTP (padrão Express ou Fastify), persistência de pedido existente, proteções de autenticação e se você já possui uma conta Stripe.

  3. 03

    Integrar ao NestJS

    Adicione o pacote stripe, um módulo Payments, endpoint create-intent e um controlador webhook que verifica assinaturas no corpo bruto.

  4. 04

    Configurar o aplicativo NestJS

    Wire ConfigService do env: chave secreta, chave publicável para clientes, segredo do webhook e o URL HTTPS público que Stripe chamará.

  5. 05

    Teste o caminho de pagamento NestJS

    Execute eventos de teste Stripe CLI ou Dashboard no webhook NestJS, além de caminhos de criação de intenção e recusa. Confirme se um corpo JSON analisado falha na assinatura conforme esperado.

  6. 06

    Entregando a fonte NestJS

    Forneça fonte NestJS, notas de ambiente e uma lista de verificação de chave ativa. A implementação do NestJS é sua para manter.

Arquitetura

Como o Stripe se conecta a um projeto NestJS

O processo NestJS contém a chave secreta. Os clientes pedem a um controlador NestJS para criar um PaymentIntent. Stripe notifica NestJS por webhook. NestJS verifica a assinatura em rawBody e depois grava o estado do pedido.

Aplicativo clienteControlador NestJSstripe Node SDKStripe PaymentIntentsWebhook → NestJS rawBodySeu ORM/repositório

Tecnologias suportadas

O que Integração Stripe para NestJS realmente usa

NestJS em Node.js

NestJS atual em um Node LTS que o stripe SDK aceita. O adaptador HTTP padrão é Express. Fastify está incluído apenas se já for assim que o aplicativo NestJS inicializa e concordamos na verificação de compatibilidade.

Biblioteca oficial do Stripe Node

PaymentIntents, sessões de checkout e webhooks.constructEvent. Não fazemos um wrapper nestjs-stripe não oficial para o produto, a menos que você exija explicitamente um.

Sua persistência NestJS

As atualizações de pedidos ou direitos permanecem no Prisma, TypeORM, MikroORM ou no repositório que você já possui. Este complemento não inventa um novo banco de dados.

Conta Stripe para a API NestJS

Sua conta Stripe, chaves de teste e ativas usadas pelo NestJS, endpoint de webhook e eventos do Dashboard. As taxas de processamento do Stripe permanecem com o Stripe.

Hospedagem NestJS necessária

Um host que pode executar o Node e receber HTTPS POSTs do Stripe. Um site somente estático ou uma exportação somente Next.js não pode hospedar esse caminho do webhook NestJS.

O que está incluído

O que inclui a integração Stripe para NestJS

  • Integração no projeto NestJS existente
  • Código fonte completo em seu repositório
  • Ambiente ConfigModule, módulo de pagamentos e controlador de webhook
  • PaymentIntent ou Checkout Session criam o caminho que esta API precisa
  • notas rawBody/adaptador para que constructEvent realmente verifique
  • Testei o webhook NestJS e os fluxos de intenção antes da transferência
  • Notas de transferência para transferência de teste para produção
  • Suporte técnico de 30 dias após entrega

Não está no preço adicional

  • Conta Stripe, chaves de API e taxas de processamento Stripe – você é o proprietário delas
  • Uma nova vitrine ou UI Stripe.js – NestJS é a API
  • Uma reescrita de NestJS para manipuladores de rota Next.js
  • Marketplace Connect, produtos de faturamento personalizados ou substituição de compra no aplicativo, a menos que seja definido como trabalho personalizado

Pricing

Integração Stripe para preços NestJS

Este preço é apenas para a plataforma NestJS. Ele não usa preços complementares Next.js, Django, FastAPI, React ou Flutter.

Integração Stripe para NestJS

Adicione Stripe PaymentIntents prontos para produção e webhooks assinados a uma API NestJS existente e mantenha o código-fonte.

Requisitos

  • Projeto NestJS existente
  • Acesso ao Stripe Test Mode
  • É necessário um frontend para a interface de pagamento

$175

pagamento único

NestJS

Precisa de um frontend?

  • Código-fonte completo
  • Sem taxa de licença
  • 30 dias de suporte
  • Integração completa

Checkout seguro viastripe

Entrega e segurança

Práticas de entrega e segurança do NestJS

Entrega estimada do NestJS

A integração típica do NestJS Stripe tem como escopo após a verificação de compatibilidade do NestJS. A linha do tempo depende do seu adaptador HTTP, dos protetores de autenticação e de como os clientes chamam o NestJS.

Testado em NestJS antes da transferência

PaymentIntents em modo de teste, assinaturas de webhook, novas tentativas e caminhos de recusa são exercidos no aplicativo NestJS antes de entregarmos.

Os segredos do Stripe permanecem no NestJS ConfigService

As chaves secretas e os segredos de assinatura do webhook permanecem no ambiente do servidor. Os clientes recebem apenas uma chave publicável ou um client_secret de curta duração.

Verificação do webhook antes da gravação do NestJS

O controlador de webhook NestJS verifica as assinaturas Stripe no corpo bruto antes de atualizar o pedido ou o estado de direito.

Nenhuma reivindicação de segurança NestJS não verificável

Não reivindicamos certificação PCI, fraude zero ou taxas de aprovação garantidas. NestJS não armazena PAN. Os dados do cartão são coletados pelo Stripe Checkout ou Elements em um cliente, não por um DTO de cartão NestJS personalizado que persistimos.

FAQ

Perguntas frequentes

O que inclui o Stripe Integration para NestJS?

Stripe Integration para NestJS inclui o stripe Node SDK oficial, um módulo NestJS Payments, um serviço create-PaymentIntent, um controlador de webhook que chama constructEvent no corpo bruto, atualizações de estado de pedido em sua loja existente, testes em eventos de teste Stripe e notas de entrega. Você recebe a fonte NestJS em seu projeto. As taxas do Stripe e sua conta Stripe são separadas.

Você integrará o Stripe ao nosso projeto NestJS existente?

Sim. Stripe Integration for NestJS foi desenvolvido para uma API NestJS que você já possui. Colocamos um módulo, um controlador e um ambiente ConfigService em seu aplicativo NestJS atual, em vez de enviar um repositório de demonstração separado como produto final.

O Stripe Integration for NestJS coleta números de cartão no NestJS?

Não. NestJS não deve armazenar PAN. Os clientes usam Stripe Checkout ou Elements. Stripe Integration for NestJS possui PaymentIntents, webhooks e gravações de pedidos do lado do servidor. Um NestJS DTO personalizado que publica dados brutos do cartão está fora do escopo padrão.

Qual pacote Stripe o Stripe Integration for NestJS usa?

Stripe Integration para NestJS usa a biblioteca oficial stripe Node para PaymentIntents, Checkout Sessions e webhooks.constructEvent. Não fazemos um wrapper nestjs-stripe não oficial para o produto, a menos que você exija explicitamente um.

Por que o Stripe Integration for NestJS insiste no rawBody?

stripe.webhooks.constructEvent verifica os bytes exatos assinados pelo Stripe. O analisador JSON padrão do Nest altera esse corpo. Stripe Integration para NestJS permite rawBody (ou um analisador raw Fastify) na rota do webhook. Usando @Body() é como as verificações de assinatura NestJS falham na produção.

O Fastify está incluído no Stripe Integration para NestJS?

A integração padrão do Stripe para NestJS pressupõe o adaptador Express fornecido com o Nest. O Fastify será incluído apenas se seu aplicativo NestJS já inicializar com FastifyAdapter e concordarmos com o caminho do corpo bruto durante a verificação de compatibilidade do NestJS.

O Stripe Integration for NestJS pode cobrar pagamentos de assinatura?

NestJS pode criar uma sessão PaymentIntent ou Checkout e armazenar o ID do cliente Stripe. Os produtos recorrentes do Stripe Billing, o portal do cliente e a lógica da fatura permanecem no servidor. O trabalho do NestJS com muitas assinaturas pode precisar de um orçamento personalizado.

Onde ficam as chaves publicáveis ​​e secretas do Stripe em um aplicativo NestJS?

O processo NestJS usa a chave secreta e o segredo de assinatura do webhook do ConfigService/variáveis de ambiente. Os clientes recebem apenas a chave publicável. Stripe Integration for NestJS não coloca chaves secretas em DTOs ou em um pacote de front-end.

Como o modo de teste Stripe e o modo ao vivo funcionam no NestJS?

Implementamos o Stripe Integration para NestJS nas chaves de teste do Stripe e testamos primeiro os eventos do webhook. A ativação é uma chave documentada e uma transferência de endpoint em seu Stripe Dashboard e ambiente NestJS, não uma ativação de licença complementar.

Como o Stripe Integration para NestJS lida com 3-D Secure/SCA?

NestJS cria PaymentIntents que suportam SCA. O cliente conclui o 3-D Secure com Stripe.js ou Checkout. O NestJS só é executado após payment_intent.succeeded no webhook, e não apenas após um redirecionamento do navegador.

Os webhooks Stripe são necessários para a finalização da compra do NestJS?

Sim para atendimento após uma sessão PaymentIntent ou Checkout criada pelo NestJS. Uma resposta do NestJS 201 ao cliente não é a fonte da verdade. O controlador do webhook verifica as assinaturas e marca o pedido como pago.

Podemos manter Prisma ou TypeORM com integração Stripe para NestJS?

Sim. Stripe Integration for NestJS normalmente adiciona campos ou um registro de pagamento fino próximo ao seu modelo de pedido NestJS existente em vez de substituir Prisma, TypeORM ou MikroORM.

O preço do Stripe Integration for NestJS inclui uma conta Stripe ou taxas?

Não. Você cria e é proprietário da conta Stripe, das chaves de API e das taxas de processamento do Stripe. O preço complementar do NestJS é a implementação em seu projeto NestJS, não uma licença de pagamento Bacodo.

A integração do Stripe para NestJS é igual aos manipuladores de rota Next.js?

Não. NestJS é uma API Node independente. Next.js App Router e Route Handlers são integração Stripe para Next.js. Não reescrevemos uma API NestJS em Next.js dentro deste preço complementar do NestJS.

Podemos personalizar recibos e metadados do Stripe no NestJS?

Sim. Os metadados da sessão PaymentIntent ou Checkout, os registros do cliente e os campos que você persiste após a confirmação do webhook são alinhados ao seu modelo de pedido NestJS existente durante o Stripe Integration for NestJS.

Qual suporte NestJS está incluído após a transferência do Stripe?

A fonte NestJS está em seu repositório, para que sua equipe possa mantê-la. O suporte incluído de 30 dias cobre questões técnicas e defeitos no escopo entregue do Stripe Integration for NestJS, e não no trabalho de recursos NestJS não relacionados.

Como as atualizações de stripe ou NestJS são tratadas após a integração?

Durante o período de 30 dias, ajudamos com falhas na integração NestJS entregue causadas por uma API Stripe documentada ou alteração de pacote de stripe. As atualizações contínuas do NestJS depois disso são sua manutenção ou suporte técnico estendido, se você comprá-lo.

E se os pagamentos do Stripe falharem em um aplicativo NestJS de produção?

Documentamos como ler o status do PaymentIntent, os logs do Stripe Dashboard e a entrega do webhook NestJS. O suporte de 30 dias inclui solução de problemas de falhas de assinatura (geralmente rawBody), novas tentativas e chaves mal configuradas para o fluxo NestJS entregue.

Quais versões do NestJS são compatíveis com Stripe Integration for NestJS?

Confirmamos suas versões NestJS e Node LTS em relação ao lançamento de distribuição que fixamos no momento da integração. Tempos de execução NestJS mais antigos ou fortemente bifurcados podem precisar de escopo extra.

O que é suporte de 30 dias versus suporte técnico estendido de 6 meses para integração Stripe para NestJS?

30 dias após a entrega estão incluídos para o caminho NestJS Stripe entregue. O suporte técnico estendido é opcional por 20% do preço complementar do NestJS e cobre mais seis meses de ajuda técnica na mesma integração do NestJS, não na construção de um novo produto.

Integração Stripe para NestJS

Adicione pagamentos Stripe prontos para produção à sua API NestJS existente, mantenha o código-fonte e deixe o atendimento do próprio servidor.

$175