Erstellen Sie Agenten-Workflows zur KI-SaaS-Abrechnung
Automatisieren Sie wiederkehrende Abrechnungsworkflows mit der Stripe-API und KI-gesteuerten Agenten.
Sie können Ihre KI-Agenten in die Lage versetzen, Abo-basierte SaaS-Abrechnungsprogramme mit Stripe zu erstellen und zu verwalten. In diesem Leitfaden erfahren Sie, wie Sie Folgendes tun können:
- Bereitstellen eines neuen Kunden und eines neuen Abonnements
- Reagieren auf Ereignisse im Abonnementprozess unter Verwendung von Webhooks
- Aufrufen von Abrechnungsaktionen von einem KI-Agenten mithilfe des Agenten-Toolkits
Bevor Sie loslegen
In diesem Leitfaden wird davon ausgegangen, dass Sie über ein funktionierendes Agenten-Toolkit-Setup und ein Stripe-Konto verfügen. Sie können sich durchgehend mit diesen Ressourcen verknüpfen:
- Agent-Toolkit
- Hinzufügen von Zahlungen zu Ihren Agenten-Workflows
- Erstellen von Abonnements
- Abonnements
- Webhooks
- Ihre Integration testen
Stellen Sie außerdem sicher, dass Sie über Folgendes verfügen:
- Node.js 14 oder höher und ein vorhandenes Agenten-Toolkit-Projekt
- Ein Stripe-Testkonto mit API-Schlüsseln
- Zum Gespräch mit Ihrem Stripe-Konto muss entweder das Stripe Agent Toolkit oder der Server des Model Context Protocol (MCP) konfiguriert sein.
Kunden- und Abonnement-Bereitstellung
Um Kunden und Abonnements bereitzustellen, muss Ihr Agent einen neuen Kunden erstellen und ein Abonnement anfügen. Hier sehen Sie ein Beispiel für die Verwendung des Stripe Node.js SDK:
import Stripe from 'stripe'; const stripe = new Stripe(process.env.STRIPE_SECRET_KEY); // Create a customer and subscription async function createSubscription(customerInfo, priceId) { // 1. Create or fetch the customer const customer = await stripe.customers.create({ email: customerInfo.email, name: customerInfo.name, }); // 2. Create the subscription const subscription = await stripe.subscriptions.create({ customer: customer.id, items: [{ price: priceId }], expand: ['latest_invoice.payment_intent'], }); }
Siehe Abonnements erstellen für Preise und Testoptionen.
Behandeln von Abrechnungsereignissen mit Webhooks
Abonnements in Ihrer Anwendung lösen verschiedene Ereignisse aus, z. B. Verlängerungen, fehlgeschlagene Zahlungen und Stornierungen. Einige Abrechnungsereignisse sind asynchron, und Ihr Agent muss darauf reagieren. Wenn beispielsweise ein Abonnement gekündigt wird, muss Ihr Agent beim Kunden nachfragen bzw. diesem ein Angebot zur Kundenbindung machen.
Verwenden Sie zur Verwaltung dieser Ereignisse Webhooks, um auf diese Auslöser zu achten und darauf zu reagieren.
Im folgenden Codebeispiel wird veranschaulicht, wie Sie einen Express Server einrichten, der auf Stripe-Webhook-Ereignisse lauscht, eingehende Anforderungen überprüft und bestimmte Ereignistypen wie erfolgreiche Zahlungen, fehlgeschlagene Zahlungen und Abonnement-Stornierungen verarbeitet. Rufen Sie nach der Erfassung dieser Ereignisse einen Agenten an, um entsprechend zu reagieren.
import express from 'express'; import Stripe from 'stripe'; const stripe = new Stripe(process.env.STRIPE_SECRET_KEY, { apiVersion: '2022-11-15' }); const endpointSecret = process.env.STRIPE_WEBHOOK_SECRET; const app = express(); app.post('/webhooks', express.raw({ type: 'application/json' }), (req, res) => { let event; try { event = stripe.webhooks.constructEvent(req.body, req.headers['stripe-signature'], endpointSecret); } catch (err) { return res.status(400).send(`Webhook Error: ${err.message}`); } switch (event.type) { case 'invoice.payment_succeeded': // Handle successful payment break; case 'invoice.payment_failed': // Call agent to retry or gather information to communicate with the buyer break; case 'customer.subscription.deleted': // Clean up access break; default: // Unexpected event } res.status(200).json({ received: true }); }); app.listen(4242, () => console.log('Webhook listener running on port 4242'));
Verwalten der Abrechnung mit dem Agenten-Toolkit
Sie können die Funktion Agenten-Toolkit verwenden, um es KI-Agenten zu ermöglichen, automatisch Abrechnungsabläufe einzuleiten.
Sie können dies direkt im Code oder in einer Anwendung wie Claude oder einem MCP-Server implementieren.
Hier ist ein Beispiel mit Vercels AI SDK:
import { StripeAgentToolkit } from '@stripe/agent-toolkit/ai-sdk'; import { openai } from '@ai-sdk/openai'; import { generateText } from 'ai'; const stripeAgentToolkit = new StripeAgentToolkit({ secretKey: process.env.STRIPE_SECRET_KEY!, configuration: { actions: { prices: { read: true, }, customers: { create: true, }, subscriptions: { create: true, }, }, }, }); const result = await generateText({ model: openai('gpt-4o'), tools: { ...stripeAgentToolkit.getTools(), }, maxSteps: 5, prompt: 'Sign up jenny.rosen@example.com to the Premium plan', });
Hier ist ein Beispiel für die Verwendung des MCP-Servers von Stripe mit der Responses API von OpenAI:
curl https://api.openai.com/v1/responses -i \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "gpt-5", "tools": [ { "type": "mcp", "server_label": "Stripe", "server_url": "https://mcp.stripe.com", "require_approval": "never" } ], "input": "Sign up jenny.rosen@example.com to the Premium plan" }'
Die vollständigen Aktionen finden Sie unter Fügen Sie Stripe zu Ihren Agent-Arbeitsabläufen hinzu. Erfahren Sie mehr darüber, wie Sie Ihren LLM-Agent-Workflows Zahlungen hinzufügen.