Stripe .NET (Como funciona para desenvolvedores)
Integração do Stripe .NET com o IronPDF
Stripe.Net é uma poderosa biblioteca .NET que permite aos desenvolvedores integrar os recursos de processamento de pagamentos do Stripe em aplicativos .NET . O Stripe é um gateway de pagamento popular que permite que empresas aceitem pagamentos online. Com o Stripe.Net, os desenvolvedores podem gerenciar transações, clientes, assinaturas e muito mais usando os recursos robustos fornecidos pela API do Stripe. Neste artigo, discutiremos como usar o Stripe com o IronPDF para criar PDFs.
Primeiros passos com o Stripe .NET
Criar um novo projeto do Visual Studio
Para começar a usar o Stripe.Net, precisamos criar um novo projeto no Visual Studio ou abrir um já existente. Para este tutorial, usaremos um projeto de Aplicativo de Console.
-
Abra o Visual Studio e clique em "Criar um novo projeto".

-
Uma nova janela será aberta. Selecione Aplicativo de Console e clique em Avançar.

-
Na janela seguinte, insira o nome do seu projeto e selecione o local, depois clique em Avançar.

-
Na janela seguinte, selecione a estrutura e clique em Criar.

Assim, de repente, seu novo projeto de Aplicativo de Console do Visual Studio é criado.
Instalação
Para começar a usar Stripe.Net em seu projeto, você precisa instalar o pacote Stripe .NET via NuGet. Você pode fazer isso usando o Console do Gerenciador de Pacotes ou o Gerenciador de Pacotes NuGet no Visual Studio.
Utilizando o Console do Gerenciador de Pacotes:
Install-Package Stripe.net
Ou
dotnet add package Stripe.net
Utilizando o gerenciador de pacotes NuGet , procure por "Stripe .NET" e instale o pacote.
Configuração
Após a instalação, você precisa configurar sua chave de API do Stripe, que pode ser encontrada na sua conta do Stripe. Essa chave é essencial para autenticar suas solicitações à API do Stripe. Normalmente, essa chave é armazenada em um arquivo de configuração ou variável de ambiente por motivos de segurança.
Aqui está um exemplo de como configurar sua chave de API:
StripeConfiguration.ApiKey = "your_secret_api_key";
StripeConfiguration.ApiKey = "your_secret_api_key";
StripeConfiguration.ApiKey = "your_secret_api_key"
Operações básicas com Stripe .NET
Criando um Cliente
Criar um cliente é uma das operações fundamentais ao trabalhar com Stripe.Net. Os clientes podem ser associados a métodos de pagamento e assinaturas.
var options = new CustomerCreateOptions
{
Email = "customer@example.com",
Name = "John Doe",
};
var service = new CustomerService();
Customer customer = service.Create(options);
var options = new CustomerCreateOptions
{
Email = "customer@example.com",
Name = "John Doe",
};
var service = new CustomerService();
Customer customer = service.Create(options);
Dim options = New CustomerCreateOptions With {
.Email = "customer@example.com",
.Name = "John Doe"
}
Dim service = New CustomerService()
Dim customer As Customer = service.Create(options)
Painel de controle do Stripe

Criando uma intenção de pagamento
Um PaymentIntent é um objeto que representa um processo de pagamento no Stripe. Ele foi projetado para rastrear o ciclo de vida de um pagamento, desde a sua criação até a sua conclusão.
var options = new PaymentIntentCreateOptions
{
Amount = 2000,
Currency = "usd",
PaymentMethodTypes = new List<string>
{
"card",
},
};
var service = new PaymentIntentService();
PaymentIntent paymentIntent = service.Create(options);
var options = new PaymentIntentCreateOptions
{
Amount = 2000,
Currency = "usd",
PaymentMethodTypes = new List<string>
{
"card",
},
};
var service = new PaymentIntentService();
PaymentIntent paymentIntent = service.Create(options);
Dim options = New PaymentIntentCreateOptions With {
.Amount = 2000,
.Currency = "usd",
.PaymentMethodTypes = New List(Of String) From {"card"}
}
Dim service = New PaymentIntentService()
Dim paymentIntent As PaymentIntent = service.Create(options)

Recursos avançados
Assinaturas
O Stripe oferece suporte a vários modelos de assinatura e o gerenciamento de assinaturas via Stripe.Net é simples. Você pode criar, atualizar e cancelar assinaturas.
var options = new SubscriptionCreateOptions
{
Customer = "cus_123456789",
Items = new List<SubscriptionItemOptions>
{
new SubscriptionItemOptions
{
Plan = "plan_123456789",
},
},
};
var service = new SubscriptionService();
Subscription subscription = service.Create(options);
var options = new SubscriptionCreateOptions
{
Customer = "cus_123456789",
Items = new List<SubscriptionItemOptions>
{
new SubscriptionItemOptions
{
Plan = "plan_123456789",
},
},
};
var service = new SubscriptionService();
Subscription subscription = service.Create(options);
Dim options = New SubscriptionCreateOptions With {
.Customer = "cus_123456789",
.Items = New List(Of SubscriptionItemOptions) From {
New SubscriptionItemOptions With {.Plan = "plan_123456789"}
}
}
Dim service = New SubscriptionService()
Dim subscription As Subscription = service.Create(options)

Gerenciamento de Disputas
Disputas ocorrem quando um cliente questiona uma cobrança junto ao seu banco ou à sua operadora de cartão de crédito. Stripe.Net permite listar, recuperar e responder a disputas.
var service = new DisputeService();
Dispute dispute = service.Get("dp_123456789");
var service = new DisputeService();
Dispute dispute = service.Get("dp_123456789");
Dim service = New DisputeService()
Dim dispute As Dispute = service.Get("dp_123456789")
Melhores práticas
- Segurança: Sempre proteja suas chaves de API e nunca as codifique diretamente nos seus arquivos de código-fonte.
- Tratamento de erros: Implemente um tratamento de erros robusto para gerenciar exceções e chamadas de API com falha.
- Teste: Utilize o modo de teste do Stripe e forneça números de cartão de teste para testar completamente a sua integração.
- Documentação: Consulte a documentação oficial da API do Stripe e a documentação da biblioteca
Stripe.Netpara obter informações e exemplos atualizados.
Apresentando o IronPDF para C

IronPDF é uma biblioteca C# que permite aos desenvolvedores criar, editar e extrair conteúdo de documentos PDF. É uma ferramenta ideal para gerar PDFs em aplicações .NET , seja para relatórios, faturas ou outras necessidades de documentação.
O IronPDF consegue converter com precisão páginas da web, URLs e HTML para o formato PDF , tornando-se uma ferramenta perfeita para criar documentos PDF a partir de conteúdo online, como relatórios e faturas.
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
' 1. Convert HTML String to PDF
Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")
' 2. Convert HTML File to PDF
Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")
' 3. Convert URL to PDF
Dim url = "http://ironpdf.com" ' Specify the URL
Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
pdfFromUrl.SaveAs("URLToPDF.pdf")
End Sub
End Class
Principais características
1. HTML para PDF
O IronPDF permite que desenvolvedores criem documentos PDF facilmente, convertendo strings HTML, URLs e arquivos HTML em PDF.
2. Edição de PDF
Edite documentos PDF existentes com facilidade. O IronPDF permite manipular PDFs existentes, possibilitando aos usuários adicionar páginas em índices específicos, copiar ou excluir páginas, dividir um PDF e extrair páginas para criar novos PDFs, etc.
3. Fusão de PDFs
A funcionalidade de mesclagem do IronPDF permite que os desenvolvedores combinem dois ou mais documentos PDF em um só.
4. Segurança do PDF
O IronPDF permite que os usuários adicionem senhas e permissões a PDFs para aumentar a segurança dos mesmos.
5. Criptografia e descriptografia de PDF
O IronPDF suporta criptografia de 128 bits, descriptografia e proteção por senha de documentos PDF.
6. Assinar digitalmente um documento PDF
Os desenvolvedores podem adicionar assinaturas digitais a PDFs de forma programática usando o IronPDF. Ele suporta várias maneiras de assinar um PDF com um certificado de assinatura digital nos formatos .pfx e .p12.
Exemplo: Gerando uma fatura em PDF com Stripe .NET e IronPDF
Vamos criar um exemplo prático onde geramos uma fatura em PDF usando o IronPDF após processar um pagamento com Stripe.Net.
Instale a biblioteca IronPDF .NET.
Passos para instalar o IronPDF usando o Gerenciador de Pacotes NuGet :
- Abra seu projeto ASP.NET no Visual Studio e navegue até o menu "Ferramentas".
- Selecione "Gerenciador de Pacotes NuGet " e clique em "Gerenciar Pacotes NuGet para a Solução".
-
Na aba "Procurar", pesquise por "IronPDF" e selecione a versão desejada. Clique em "Instalar" para adicionar o pacote ao seu projeto. O IronPDF e suas dependências serão baixados e integrados automaticamente, permitindo que você comece a aproveitar suas funcionalidades em sua aplicação ASP.NET sem problemas.

Processar pagamento e gerar fatura
Aqui está um exemplo completo que demonstra a criação de um novo pagamento com a API Stripe.Net e a geração de uma fatura em PDF com a API IronPDF.
using Stripe;
using IronPdf;
using System;
using System.Collections.Generic;
public class PaymentService
{
public void ProcessPaymentAndGenerateInvoice()
{
// Configure Stripe API key
StripeConfiguration.ApiKey = "your_secret_key";
// Create a PaymentIntent
var paymentIntentOptions = new PaymentIntentCreateOptions
{
Amount = 2000, // Amount in cents
Currency = "usd",
PaymentMethodTypes = new List<string> { "card" },
};
var paymentIntentService = new PaymentIntentService();
PaymentIntent paymentIntent = paymentIntentService.Create(paymentIntentOptions);
// Assuming payment succeeded, create a PDF invoice
GeneratePdfInvoice(paymentIntent);
}
private void GeneratePdfInvoice(PaymentIntent paymentIntent)
{
// Create HTML content for the invoice
var htmlContent = $@"
<html>
<head>
<title>Invoice</title>
</head>
<body>
<h1>Invoice</h1>
<p>Payment ID: {paymentIntent.Id}</p>
<p>Amount: {paymentIntent.Amount / 100.0:C}</p>
<p>Status: {paymentIntent.Status}</p>
</body>
</html>";
// Convert the HTML content to a PDF document
var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save the PDF document to a file
var filePath = "invoice.pdf";
pdfDocument.SaveAs(filePath);
Console.WriteLine($"Invoice saved to {filePath}");
}
}
class Program
{
static void Main(string[] args)
{
var service = new PaymentService();
service.ProcessPaymentAndGenerateInvoice();
}
}
using Stripe;
using IronPdf;
using System;
using System.Collections.Generic;
public class PaymentService
{
public void ProcessPaymentAndGenerateInvoice()
{
// Configure Stripe API key
StripeConfiguration.ApiKey = "your_secret_key";
// Create a PaymentIntent
var paymentIntentOptions = new PaymentIntentCreateOptions
{
Amount = 2000, // Amount in cents
Currency = "usd",
PaymentMethodTypes = new List<string> { "card" },
};
var paymentIntentService = new PaymentIntentService();
PaymentIntent paymentIntent = paymentIntentService.Create(paymentIntentOptions);
// Assuming payment succeeded, create a PDF invoice
GeneratePdfInvoice(paymentIntent);
}
private void GeneratePdfInvoice(PaymentIntent paymentIntent)
{
// Create HTML content for the invoice
var htmlContent = $@"
<html>
<head>
<title>Invoice</title>
</head>
<body>
<h1>Invoice</h1>
<p>Payment ID: {paymentIntent.Id}</p>
<p>Amount: {paymentIntent.Amount / 100.0:C}</p>
<p>Status: {paymentIntent.Status}</p>
</body>
</html>";
// Convert the HTML content to a PDF document
var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save the PDF document to a file
var filePath = "invoice.pdf";
pdfDocument.SaveAs(filePath);
Console.WriteLine($"Invoice saved to {filePath}");
}
}
class Program
{
static void Main(string[] args)
{
var service = new PaymentService();
service.ProcessPaymentAndGenerateInvoice();
}
}
Imports Stripe
Imports IronPdf
Imports System
Imports System.Collections.Generic
Public Class PaymentService
Public Sub ProcessPaymentAndGenerateInvoice()
' Configure Stripe API key
StripeConfiguration.ApiKey = "your_secret_key"
' Create a PaymentIntent
Dim paymentIntentOptions = New PaymentIntentCreateOptions With {
.Amount = 2000,
.Currency = "usd",
.PaymentMethodTypes = New List(Of String) From {"card"}
}
Dim paymentIntentService As New PaymentIntentService()
Dim paymentIntent As PaymentIntent = paymentIntentService.Create(paymentIntentOptions)
' Assuming payment succeeded, create a PDF invoice
GeneratePdfInvoice(paymentIntent)
End Sub
Private Sub GeneratePdfInvoice(ByVal paymentIntent As PaymentIntent)
' Create HTML content for the invoice
'INSTANT VB WARNING: Instant VB cannot determine whether both operands of this division are integer types - if they are then you should use the VB integer division operator:
Dim htmlContent = $"
<html>
<head>
<title>Invoice</title>
</head>
<body>
<h1>Invoice</h1>
<p>Payment ID: {paymentIntent.Id}</p>
<p>Amount: {paymentIntent.Amount / 100.0:C}</p>
<p>Status: {paymentIntent.Status}</p>
</body>
</html>"
' Convert the HTML content to a PDF document
Dim renderer = New ChromePdfRenderer()
Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
' Save the PDF document to a file
Dim filePath = "invoice.pdf"
pdfDocument.SaveAs(filePath)
Console.WriteLine($"Invoice saved to {filePath}")
End Sub
End Class
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim service = New PaymentService()
service.ProcessPaymentAndGenerateInvoice()
End Sub
End Class
Saída

Conclusão
Stripe.Net é uma biblioteca abrangente e poderosa que simplifica a integração do processamento de pagamentos do Stripe em aplicativos .NET . Com funcionalidades que vão desde o processamento básico de transações até a gestão de assinaturas e disputas, abrange uma ampla gama de necessidades relacionadas a pagamentos.
IronPDF complementa Stripe.Net permitindo que os desenvolvedores gerem, editem e gerenciem documentos PDF. Em conjunto, essas bibliotecas fornecem uma solução robusta para lidar com pagamentos e gerar a documentação correspondente em aplicações .NET .
Ao aproveitar os recursos de Stripe.Net e IronPDF, os desenvolvedores podem criar fluxos de trabalho integrados e eficientes que lidam com tudo, desde o processamento de pagamentos até a geração de documentos, aprimorando a funcionalidade geral e a experiência do usuário de seus aplicativos.
O IronPDF oferece aos desenvolvedores a oportunidade de testar seus diversos recursos, fornecendo um período de IronPDF gratuito .
O IronPDF oferece suporte ao cliente e atualizações, juntamente com exemplos de código e documentação completa para ajudar os usuários a tirar o máximo proveito da ferramenta. Para explorar o assunto mais a fundo, consulte nosso tutorial completo sobre conversão de HTML para PDF com o IronPDF .
Perguntas frequentes
Como posso integrar o processamento de pagamentos em uma aplicação .NET?
Você pode integrar o processamento de pagamentos em um aplicativo .NET usando a biblioteca `Stripe.Net`, que permite gerenciar pagamentos, criar clientes e lidar com a cobrança em seu aplicativo.
Quais são os passos envolvidos na configuração do Stripe.Net em um novo projeto do Visual Studio?
Para configurar o Stripe.Net em um novo projeto do Visual Studio, comece criando um novo projeto, instale o pacote `Stripe.Net` via NuGet e configure sua chave de API do Stripe para autenticar as solicitações de API.
Como gerenciar assinaturas em uma aplicação .NET?
O Stripe.Net oferece métodos integrados para gerenciar assinaturas, permitindo que você crie, atualize e cancele assinaturas diretamente por meio da API.
Quais são as melhores práticas para proteger chaves de API no Stripe.Net?
As melhores práticas para proteger as chaves de API no Stripe.Net incluem armazená-las com segurança usando variáveis de ambiente ou arquivos de configuração e garantir que elas não estejam codificadas diretamente no código-fonte.
Como posso gerar documentação ou faturas após processar pagamentos em uma aplicação .NET?
Após processar pagamentos com o Stripe.Net, você pode gerar documentação ou faturas usando o IronPDF para converter conteúdo HTML em arquivos PDF, fornecendo uma saída profissional para suas necessidades de faturamento.
Quais são os benefícios de usar uma biblioteca PDF em C# com o Stripe.Net?
Utilizar uma biblioteca PDF em C#, como o IronPDF, com o Stripe.Net permite criar, gerenciar e personalizar facilmente documentos PDF, como faturas, aprimorando a funcionalidade do seu aplicativo .NET.
Como faço para criar um PaymentIntent no Stripe.Net?
Para criar um PaymentIntent no Stripe.Net, utilize a classe `PaymentIntentService` com `PaymentIntentCreateOptions` para especificar os detalhes do pagamento e acompanhar o ciclo de vida do pagamento.
Como posso solucionar problemas comuns ao integrar o Stripe.Net?
Problemas comuns na integração do Stripe.Net podem ser resolvidos verificando as configurações das chaves de API, garantindo o uso correto dos métodos da biblioteca Stripe e revisando as mensagens de erro para obter orientações específicas.
Quais são alguns dos recursos avançados oferecidos pelo Stripe.Net?
Os recursos avançados oferecidos pelo Stripe.Net incluem o tratamento de contestações de pagamento, o gerenciamento de cobranças recorrentes e a implementação de processamento de pagamentos seguro com tratamento robusto de erros.
Como posso converter conteúdo HTML para PDF em uma aplicação .NET?
É possível converter conteúdo HTML para PDF em um aplicativo .NET usando os métodos do IronPDF, como RenderHtmlAsPdf para strings HTML ou RenderHtmlFileAsPdf para arquivos HTML.




