Stripe para JavaScript (Node.js): guia completo com exemplos

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Stripe para JavaScript (Node.js): guia completo com exemplos

1. O que é e para que serve

Stripe é a plataforma de pagamentos líder que permite que lojas virtuais, serviços SaaS e qualquer aplicação web recebam pagamentos de clientes ao redor do mundo. A biblioteca oficial stripe para Node.js oferece aos desenvolvedores um conjunto completo de ferramentas para integrar a API de pagamentos Stripe no backend da sua aplicação. Ela abstrai a complexidade das requisições HTTP diretas à API Stripe, fornecendo uma interface amigável, tipada e previsível em JavaScript.

Por que usar esta biblioteca? No desenvolvimento web moderno, o processamento seguro de pagamentos é uma das tarefas mais críticas. Stripe cuida da conformidade com os padrões PCI DSS, do tratamento de dados sensíveis (números de cartão, CVV) e do gerenciamento de cenários complexos (assinaturas, reembolsos, disputas). A biblioteca para Node.js permite criar formulários de pagamento, gerenciar clientes, criar assinaturas, processar webhooks e gerar relatórios — tudo isso usando código assíncrono baseado em promessas.

Com esta biblioteca, você pode focar na lógica de negócio da sua aplicação, sem se preocupar com detalhes de baixo nível dos protocolos de pagamento. Ela é ideal para aplicações Node.js rodando em Express, Koa, Fastify ou qualquer outro framework. A biblioteca é ativamente mantida pela Stripe, recebe atualizações regulares e conta com uma enorme comunidade de usuários.

2. Instalação

Para instalar a biblioteca Stripe no seu projeto Node.js, use o gerenciador de pacotes npm ou yarn. Execute um dos seguintes comandos na raiz do seu projeto:

# Usando npm
npm install stripe

# Usando yarn
yarn add stripe

Após a instalação, você pode importar a biblioteca no seu código:

// Sintaxe moderna (ES Modules)
import Stripe from 'stripe';

// Ou CommonJS (padrão do Node.js)
const Stripe = require('stripe');

Importante: Para usar a biblioteca, você precisará de uma chave secreta (sk_test_... para modo de teste ou sk_live_... para produção). Você pode obter sua chave no painel de controle do Stripe.

3. Início rápido — exemplo mínimo funcional

Vamos criar um script simples que gera uma intenção de pagamento (PaymentIntent) — a forma padrão de receber um pagamento único.

// Importa a biblioteca
const Stripe = require('stripe');
// Inicializa com a chave secreta (substitua pela sua chave de teste)
const stripe = Stripe('sk_test_XXXXXXXXXXXXXXXXXXXXXXXX');

async function criarPagamento() {
    try {
        // Cria um PaymentIntent no valor de 2000 centavos (20 USD)
        const paymentIntent = await stripe.paymentIntents.create({
            amount: 2000,
            currency: 'usd',
            // Descrição do pagamento (opcional)
            description: 'Pagamento de teste via Node.js',
            // Capturar automaticamente (true) ou apenas autorizar (false)
            capture_method: 'automatic',
        });

        console.log('PaymentIntent criado com sucesso:');
        console.log(`ID: ${paymentIntent.id}`);
        console.log(`Status: ${paymentIntent.status}`);
        console.log(`Valor: ${paymentIntent.amount} ${paymentIntent.currency.toUpperCase()}`);
    } catch (error) {
        console.error('Erro ao criar PaymentIntent:', error.message);
    }
}

criarPagamento();

Este código

Recommendations