Stripe
Payment processing, subscriptions, and refunds
The Stripe connector provides 64 actions for managing payments, subscriptions, customers, and invoices.
Setup
Requirements
- Stripe account
- API key (restricted or secret key)
Connect
- Go to Settings → Integrations → Stripe
- Click Connect
- Enter your Stripe API key
- Configure permissions
API Key Setup
For production:
- In Stripe Dashboard, go to Developers → API keys
- Create a restricted key with required permissions
- Copy and paste in Keva
Use restricted keys in production. Only grant permissions Keva needs.
Required Permissions
For a restricted key:
Charges: Read, Write
Customers: Read, Write
Subscriptions: Read, Write
Invoices: Read
Refunds: Write
Payment Methods: ReadAvailable Actions (64)
Payments
| Action | Description |
|---|---|
| Get charge | Retrieve payment details |
| List charges | Get payments with filters |
| Refund charge | Process full/partial refund |
| Get payment intent | Check payment status |
| Cancel payment | Cancel pending payment |
Customers
| Action | Description |
|---|---|
| Get customer | Retrieve customer by ID/email |
| Search customers | Find customers |
| Update customer | Modify customer info |
| List payment methods | Get saved cards |
| Get customer balance | Check account balance |
Subscriptions
| Action | Description |
|---|---|
| Get subscription | Retrieve subscription details |
| List subscriptions | Get customer's subscriptions |
| Update subscription | Modify plan/billing |
| Cancel subscription | End subscription |
| Pause subscription | Temporarily pause |
| Resume subscription | Resume paused subscription |
| Preview proration | Show upgrade/downgrade cost |
Invoices
| Action | Description |
|---|---|
| Get invoice | Retrieve invoice |
| List invoices | Get invoice history |
| Send invoice | Email invoice to customer |
| Void invoice | Cancel unpaid invoice |
| Get upcoming invoice | Preview next bill |
Products & Prices
| Action | Description |
|---|---|
| Get product | Retrieve product info |
| List products | Browse products |
| Get price | Get pricing details |
| List prices | Available pricing options |
Use Cases
Refund Request
Customer: "I was charged twice for my order"
AI:
1. Calls search_customers(email)
2. Calls list_charges(customer_id)
3. Identifies duplicate charge
4. Calls refund_charge(duplicate_id)Response: "You're right, I can see a duplicate charge of $99.00. I've processed a refund - it should appear on your card within 5-7 business days."
Subscription Cancellation
Customer: "I want to cancel my subscription"
AI:
1. Calls get_customer(email)
2. Calls list_subscriptions(customer_id)
3. Confirms with customer
4. Calls cancel_subscription(sub_id)Response: "Your Pro subscription has been canceled. You'll continue to have access until April 15 (end of your billing period). Would you like me to help with anything else?"
Billing Inquiry
Customer: "Why was I charged $49 yesterday?"
AI:
1. Calls search_customers(email)
2. Calls list_charges(customer_id, created: yesterday)
3. Matches to subscription or invoiceResponse: "The $49 charge was your monthly subscription renewal for the Growth plan. Your next billing date is April 25."
Configuration
Refund Settings
| Setting | Options |
|---|---|
| Maximum refund | Amount limit |
| Refund reason required | Yes/No |
| Auto-refund threshold | Refund automatically below this |
Subscription Settings
| Setting | Options |
|---|---|
| Can cancel | Yes/No |
| Can pause | Yes/No |
| Can change plan | Yes/No |
| Proration behavior | Create prorations / None |
Customer Settings
| Setting | Options |
|---|---|
| Can update email | Yes/No |
| Can update payment method | Yes/No |
| Can view invoices | Yes/No |
Security Best Practices
- Use restricted keys - Only grant required permissions
- Enable webhook signing - Verify webhook authenticity
- Rotate keys regularly - Update keys periodically
- Monitor for anomalies - Review high refund volumes
- Set spend limits - Configure maximum daily refunds