
Integración de Stripe.Net con IronPDF
Stripe.Net es una poderosa biblioteca .NET que permite a los desarrolladores integrar las capacidades de procesamiento de pagos de Stripe en aplicaciones .NET. Stripe es una popular pasarela de pagos que permite a las empresas aceptar pagos en línea. Con Stripe.Net, los desarrolladores pueden gestionar transacciones, clientes, suscripciones y más utilizando las sólidas funciones proporcionadas por la API de Stripe. En este artículo, discutiremos cómo usar Stripe con IronPDF para crear PDFs.
Cómo empezar con Stripe.Net
Crear un nuevo proyecto de Visual Studio
Para comenzar con Stripe.Net, debemos crear un nuevo proyecto en Visual Studio o abrir uno existente. Para este tutorial, utilizaremos un proyecto de Aplicación de Consola.
-
Abre Visual Studio y haz clic en "Crear un Nuevo Proyecto".

-
Aparecerá una nueva ventana. Seleccione Aplicación de Consola y haga clic en Siguiente.

- En la siguiente ventana, ingrese el nombre de su proyecto y seleccione la ubicación, luego haga clic en Siguiente.

-
En la siguiente ventana, seleccione el marco y haga clic en Crear.

Así de fácil, su nuevo proyecto de Aplicación de Consola de Visual Studio está creado.
Instalación
Para comenzar a utilizar Stripe.Net en su proyecto, necesita instalar el paquete Stripe.Net a través de NuGet. Puede hacerlo usando la Consola del Administrador de Paquetes o el Administrador de Paquetes NuGet en Visual Studio.
Usando la Consola del Administrador de Paquetes:
O
Usando el Administrador de Paquetes NuGet, busque "Stripe.net" e instale el paquete.
Configuración
Una vez instalado, necesita configurar su clave API de Stripe, que puede encontrar en su cuenta de Stripe. Esta clave es esencial para autenticar sus solicitudes a la API de Stripe. Normalmente, esta clave se almacena en un archivo de configuración o variable de entorno por razones de seguridad.
Aquí hay un ejemplo de cómo configurar su clave API:
StripeConfiguration.ApiKey = "your_secret_api_key";StripeConfiguration.ApiKey = "your_secret_api_key"Operaciones básicas con Stripe.Net
Crear un cliente
Crear un cliente es una de las operaciones fundamentales al trabajar con Stripe.Net. Los clientes pueden estar asociados con métodos de pago y suscripciones.
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)Panel de control de Stripe

Creación de una intención de pago
Un PaymentIntent es un objeto que representa un proceso de pago en Stripe. Está diseñado para rastrear el ciclo de vida de un pago desde la creación hasta la finalización.
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)
Características avanzadas
Suscripciones
Stripe admite varios modelos de suscripción, y gestionar suscripciones a través de Stripe.Net es sencillo. Puede crear, actualizar y cancelar suscripciones.
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)
Gestión de conflictos
Las disputas ocurren cuando un cliente cuestiona un cargo con su banco o compañía de tarjeta de crédito. Stripe.Net le permite enumerar, recuperar y responder a disputas.
var service = new DisputeService();
Dispute dispute = service.Get("dp_123456789");Dim service = New DisputeService()
Dim dispute As Dispute = service.Get("dp_123456789")Bestes prácticas
- Seguridad: proteja siempre sus claves API y nunca las codifique en sus archivos fuente.
- Manejo de errores: Implemente un manejo de errores robusto para administrar excepciones y llamadas API fallidas.
- Prueba: utilice el modo de prueba de Stripe y proporcione números de tarjeta de prueba para probar exhaustivamente su integración.
- Documentación: Consulte la documentación oficial de la API de Stripe y la documentación de la biblioteca
Stripe.Netpara obtener información y ejemplos actualizados.
Introducing IronPDF for C#

IronPDF es una biblioteca C# que permite a los desarrolladores crear, editar y extraer contenido de documentos PDF. Es una herramienta ideal para generar PDFs en aplicaciones .NET, ya sea para informes, facturas u otras necesidades de documentación.
IronPDF puede convertir con precisión páginas web, URL y HTML a PDF formato, convirtiéndolo en una herramienta perfecta para crear documentos PDF a partir de contenido en línea, como informes y facturas.
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 ClassCaracterísticas clave
1. De HTML a PDF
IronPDF permite a los desarrolladores crear documentos PDF fácilmente convirtiendo cadenas de HTML, URLs y archivos HTML a PDF.
2. Edición de PDF
Edite documentos PDF existentes con facilidad. IronPDF le permite manipular PDFs existentes al permitir a los usuarios agregar páginas en índices específicos, copiar o eliminar páginas, dividir un PDF y extraer páginas para crear nuevos PDFs, etc.
3. Fusión de PDF
La funcionalidad de fusión de IronPDF permite a los desarrolladores combinar dos o más documentos PDF en uno solo.
4. Seguridad PDF
IronPDF permite a los usuarios agregar contraseñas y permisos a PDFs para mejorar la seguridad del PDF.
5. Cifrado y descifrado de PDF
IronPDF admite cifrado de 128 bits, descifrado y protección con contraseña de documentos PDF.
6. Firmar digitalmente un documento PDF
Los desarrolladores pueden agregar firmas digitales a PDFs de manera programática utilizando IronPDF. Soporta múltiples formas de firmar un PDF con un certificado de firma digital de .pfx y formatos .p12.
Ejemplo: Generación de una factura en PDF con Stripe.Net y IronPDF
Creemos un ejemplo práctico donde generamos una factura PDF utilizando IronPDF después de procesar un pago con Stripe.Net.
Instalar IronPDF .NET Library
Pasos para instalar IronPDF usando el Administrador de Paquetes NuGet:
-
Abre tu proyecto ASP.NET en Visual Studio y navega al menú "Herramientas".
-
Selecciona "Administrador de Paquetes NuGet" y luego haz clic en "Administrar Paquetes NuGet para la Solución".
-
En la pestaña "Explorar", busca "IronPDF" y selecciona la versión deseada. Haz clic en "Instalar" para agregar el paquete a tu proyecto. IronPDF y sus dependencias se descargarán e integrarán automáticamente, permitiéndote comenzar a aprovechar su funcionalidad en tu aplicación ASP.NET sin problemas.

Procesar el pago y generar la factura
Aquí hay un ejemplo completo que demuestra cómo crear un nuevo pago con Stripe.Net API y generar una factura PDF con 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();
}
}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 ClassResultado

Conclusión
Stripe.Net es una biblioteca completa y poderosa que simplifica la integración del procesamiento de pagos de Stripe en aplicaciones .NET. Con características que van desde el manejo básico de transacciones hasta la gestión de suscripciones y disputas, cubre una amplia gama de necesidades relacionadas con pagos.
IronPDF complementa a Stripe.Net al permitir a los desarrolladores generar, editar y gestionar documentos PDF. Juntas, estas bibliotecas proporcionan una solución robusta para manejar pagos y generar documentación correspondiente en aplicaciones .NET.
Al aprovechar las capacidades de ambos Stripe.Net y IronPDF, los desarrolladores pueden crear flujos de trabajo integrados y eficientes que manejan todo, desde el procesamiento de pagos hasta la generación de documentos, mejorando la funcionalidad general y la experiencia del usuario de sus aplicaciones.
IronPDF ofrece a los desarrolladores la oportunidad de probar sus amplias características proporcionando una prueba gratuita de IronPDF.
IronPDF proporciona soporte al cliente y actualizaciones, junto con ejemplos de código y documentación completa para ayudar a los usuarios a aprovechar al máximo. Para explorar más el tema, consulte nuestro extenso tutorial sobre Conversión de HTML a PDF con IronPDF.

Jacob Mellor es Director de Tecnología de Iron Software y un ingeniero visionario pionero en la tecnología C# PDF. Como desarrollador original de la base de código principal de Iron Software, ha dado forma a la arquitectura de productos de la empresa desde su creación, transformándola, junto con el director ejecutivo Cameron Rimington, en una empresa de más de 50 personas que presta servicios a la NASA, Tesla y organismos gubernamentales de todo el mundo.
Artículos Relacionados


