Erstellen Sie Stripe-Zahlungen und PDF-Rechnungen mit IronPDF!
using Stripe;
using IronPdf;
using System;
public class PaymentService
{
public void ProcessPaymentAndGenerateInvoice()
{
// Configure Stripe API key
StripeConfiguration.ApiKey = "your_secret_key";
// Create a PaymentIntent
var paymentIntentOptions = new PaymentIntentCreateOptions
{
Amount = 2000,
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 HTML to PDF
var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save PDF to 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();
}
}
Stripe.Net ist eine leistungsstarke .NET-Bibliothek, die es Entwicklern ermöglicht, die Zahlungsabwicklungsfunktionen von Stripe in .NET-Anwendungen zu integrieren. Stripe ist ein beliebtes Zahlungsportal, mit dem Unternehmen online Zahlungen akzeptieren können. Mit Stripe.Net können Entwickler Transaktionen, Kunden, Abonnements und mehr mithilfe der robusten Funktionen der Stripe-API verwalten. In diesem Artikel wird erläutert, wie Stripe mit IronPDF zur Erstellung von PDFs verwendet werden kann.
Erste Schritte mit Stripe.Net
Erstellen Sie ein neues Visual Studio-Projekt
Um mit Stripe.Net zu beginnen, müssen wir ein neues Visual Studio-Projekt erstellen oder ein bestehendes öffnen. Für dieses Tutorial wird ein Konsolenanwendungsprojekt verwendet.
Öffnen Sie Visual Studio und klicken Sie auf "Ein neues Projekt erstellen".
Es erscheint ein neues Fenster. Wählen Sie Konsolenanwendung und klicken Sie auf Weiter.
Geben Sie im nächsten Fenster Ihren Projektnamen ein, wählen Sie den Speicherort und klicken Sie dann auf Weiter.
![Stripe .NET (Funktionsweise für Entwickler): Abbildung 3 - Konfigurieren Sie Ihr Projekt, indem Sie den Projektnamen, den Speicherort und den Lösungsnamen angeben. Klicken Sie dann auf Weiter.
Wählen Sie im nächsten Fenster das Framework aus und klicken Sie auf Erstellen.
Auf diese Weise wird Ihr neues Visual Studio Console Application-Projekt erstellt.
Einrichtung
Um Stripe.Net in Ihrem Projekt zu verwenden, müssen Sie das Stripe.Net-Paket über NuGet installieren. Sie können dies mit der Paketmanager-Konsole oder dem NuGet-Paketmanager in Visual Studio tun.
Verwendung der Paketmanager-Konsole:
Install-Package Stripe.net
Install-Package Stripe.net
SHELL
Oder
dotnet add package Stripe.net
dotnet add package Stripe.net
SHELL
Suchen Sie mit dem NuGet Package Manager nach "Stripe.net" und installieren Sie das Paket.
Konfiguration
Nach der Installation müssen Sie Ihren Stripe-API-Schlüssel konfigurieren, den Sie in Ihrem Stripe-Konto finden können. Dieser Schlüssel ist wichtig für die Authentifizierung Ihrer Anfragen an die Stripe-API. Normalerweise wird dieser Schlüssel aus Sicherheitsgründen in einer Konfigurationsdatei oder einer Umgebungsvariablen gespeichert.
Hier sehen Sie ein Beispiel für die Einrichtung Ihres API-Schlüssels:
Das Erstellen eines Kunden ist eine der grundlegenden Operationen bei der Arbeit mit Stripe.Net. Kunden können mit Zahlungsarten und Abonnements verknüpft werden.
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)
$vbLabelText $csharpLabel
Output Stripe Dashboard
Eine Zahlungsanweisung erstellen
Ein PaymentIntent ist ein Objekt, das einen Zahlungsprozess in Stripe repräsentiert. Es ist dazu gedacht, den Lebenszyklus einer Zahlung von der Erstellung bis zum Abschluss zu verfolgen.
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)
$vbLabelText $csharpLabel
Erweiterte Funktionen
Abonnements
Stripe unterstützt verschiedene Abonnementmodelle, und die Verwaltung von Abonnements über Stripe.Net ist unkompliziert. Sie können Abonnements erstellen, aktualisieren und kündigen.
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)
$vbLabelText $csharpLabel
Umgang mit Streitigkeiten
Streitigkeiten treten auf, wenn ein Kunde eine Abbuchung bei seiner Bank oder seinem Kreditkartenunternehmen in Frage stellt. Stripe.Net ermöglicht es Ihnen, Streitigkeiten aufzulisten, abzurufen und zu bearbeiten.
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")
$vbLabelText $csharpLabel
Bewährte Praktiken
Sicherheit: Sichern Sie immer Ihre API-Schlüssel und kodieren Sie sie niemals fest in Ihre Quelldateien.
Fehlerbehandlung: Implementieren Sie eine robuste Fehlerbehandlung, um Ausnahmen und fehlgeschlagene API-Aufrufe zu verwalten.
Testen: Verwenden Sie den Testmodus von Stripe und geben Sie Testkartennummern ein, um Ihre Integration gründlich zu testen.
Dokumentation: Konsultieren Sie die offizielle Stripe-API-Dokumentation und die Stripe.Net-Bibliotheksdokumentation für aktuelle Informationen und Beispiele.
Einführung in IronPDF für C#
IronPDF ist eine C#-Bibliothek, die es Entwicklern ermöglicht, Inhalte aus PDF-Dokumenten zu erstellen, zu bearbeiten und zu extrahieren. Es ist ein ideales Werkzeug für die Erstellung von PDFs in .NET-Anwendungen, sei es für Berichte, Rechnungen oder andere Dokumentationsanforderungen.
IronPDF kann Webseiten, URLs und HTML in das PDF-Format präzise konvertieren, wodurch es ein perfektes Werkzeug zur Erstellung von PDF-Dokumenten aus Online-Inhalten wie Berichten und Rechnungen ist.
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
$vbLabelText $csharpLabel
Wesentliche Merkmale
1. HTML zu PDF
IronPDF ermöglicht Entwicklern die einfache Erstellung von PDF-Dokumenten durch Konvertierung von HTML-Strings, URLs und HTML-Dateien in PDF.
2. PDF-Bearbeitung
Vorhandene PDF-Dokumente lassen sich mühelos bearbeiten. IronPDF ermöglicht die Bearbeitung bestehender PDFs, indem es den Benutzern ermöglicht, Seiten an bestimmten Indizes hinzuzufügen, Seiten zu kopieren oder zu löschen, ein PDF zu teilen und Seiten zu extrahieren, um neue PDFs zu erstellen, usw.
3. PDF-Zusammenführung
Mit der Merge-Funktion von IronPDF können Entwickler zwei oder mehr PDF-Dokumente zu einem einzigen zusammenführen.
4. PDF-Sicherheit
IronPDF ermöglicht es Benutzern, Passwörter und Berechtigungen zu PDFs hinzuzufügen, um die PDF-Sicherheit zu erhöhen.
5. PDF-Verschlüsselung und -Entschlüsselung
IronPDF unterstützt 128-Bit-Verschlüsselung, Entschlüsselung und Passwortschutz von PDF-Dokumenten.
6. Digitales Signieren eines PDF-Dokuments
Entwickler können mit IronPDF digitale Signaturen programmatisch zu PDFs hinzufügen. Es unterstützt mehrere Möglichkeiten, ein PDF mit einem digitalen Signaturzertifikat im .pfx- und .p12-Format zu signieren.
Beispiel: Generierung einer PDF-Rechnung mit Stripe.Net und IronPDF
Lassen Sie uns ein praktisches Beispiel erstellen, bei dem wir eine PDF-Rechnung mit IronPDF generieren, nachdem wir eine Zahlung mit Stripe.Net verarbeitet haben.
IronPDF for .NET-Bibliothek installieren
Schritte zur Installation von IronPDF mit dem NuGet Package Manager:
Öffnen Sie Ihr ASP.NET-Projekt in Visual Studio und navigieren Sie zum Menü "Tools".
Wählen Sie "NuGet-Paketmanager" und klicken Sie dann auf "NuGet-Pakete für Lösung verwalten"
Suchen Sie auf der Registerkarte "Durchsuchen" nach "IronPDF" und wählen Sie die gewünschte Version aus. Klicken Sie auf "Installieren", um das Paket zu Ihrem Projekt hinzuzufügen. IronPDF und seine Abhängigkeiten werden automatisch heruntergeladen und integriert, so dass Sie die Funktionalität in Ihrer ASP.NET-Anwendung nahtlos nutzen können.
Zahlung verarbeiten und Rechnung generieren
Hier ist ein vollständiges Beispiel, das die Erstellung einer neuen Zahlung mit der Stripe.Net-API und die Generierung einer PDF-Rechnung mit IronPDF zeigt.
using Stripe;
using IronPdf;
using System;
public class PaymentService
{
public void ProcessPaymentAndGenerateInvoice()
{
// Configure Stripe API key
StripeConfiguration.ApiKey = "your_secret_key";
// Create a PaymentIntent
var paymentIntentOptions = new PaymentIntentCreateOptions
{
Amount = 2000,
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 HTML to PDF
var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save PDF to 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;
public class PaymentService
{
public void ProcessPaymentAndGenerateInvoice()
{
// Configure Stripe API key
StripeConfiguration.ApiKey = "your_secret_key";
// Create a PaymentIntent
var paymentIntentOptions = new PaymentIntentCreateOptions
{
Amount = 2000,
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 HTML to PDF
var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save PDF to 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
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 HTML to PDF
Dim renderer = New ChromePdfRenderer()
Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
' Save PDF to 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
$vbLabelText $csharpLabel
Ausgabe
Schlussfolgerung
Stripe.Net ist eine umfassende und leistungsstarke Bibliothek, die die Integration von Stripes Zahlungsabwicklung in .NET-Anwendungen vereinfacht. Mit Funktionen, die von der grundlegenden Transaktionsabwicklung bis hin zur Verwaltung von Abonnements und Streitfällen reichen, deckt es eine breite Palette von zahlungsbezogenen Anforderungen ab.
IronPDF ergänzt Stripe.Net, indem es Entwicklern ermöglicht, PDF-Dokumente zu erstellen, zu bearbeiten und zu verwalten. Zusammen bieten diese Bibliotheken eine robuste Lösung für die Abwicklung von Zahlungen und die Erstellung der entsprechenden Dokumentation in .NET-Anwendungen.
Durch die Nutzung der Fähigkeiten von sowohl Stripe.Net als auch IronPDF können Entwickler nahtlose und effiziente Workflows erstellen, die alles von der Zahlungsabwicklung bis zur Dokumentenerstellung abdecken und so die Gesamtfunktionalität und Benutzererfahrung ihrer Anwendungen verbessern.
IronPDF bietet Entwicklern die Möglichkeit, seine umfangreichen Funktionen zu testen, indem es eine kostenlose Testversion von IronPDF zur Verfügung stellt.
IronPDF bietet Kunden-Support und Updates sowie Code-Beispiele und eine ausführliche Dokumentation, um den Benutzern zu helfen, das Beste aus dem Programm zu machen. Um das Thema weiter zu erkunden, verweisen Sie auf unser umfangreiches Tutorial zur Konvertierung von HTML zu PDF mit IronPDF.
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.
< PREVIOUS Papercut SMTP C# (Wie es für Entwickler funktioniert)
NÄCHSTES > TensorFlow .NET (Wie es für Entwickler funktioniert)