Stripe Destination
Overview
The Stripe connector provides powerful data delivery capabilities for creating and updating payment processing resources, customer records, and financial data. You can choose from pre-configured endpoint templates for common use cases or manually configure custom endpoints for specific data requirements.
Prerequisites
Before creating a Stripe destination, ensure you have:
- A configured Stripe credential (see Stripe Authorization)
- Understanding of Stripe's data structure and API endpoints
- Appropriate permissions for the Stripe resources you want to create or update
For complete information about Stripe's API capabilities, see the official Stripe API documentation.
Endpoint Templates
The following pre-configured endpoint templates are available for common Stripe data delivery scenarios:
- Add Records of Type: Create new records of a specific type (charges, customers, products, etc.) in Stripe
Add Records of Type
Manual Configuration
If the pre-configured templates don't meet your needs, you can manually configure custom Stripe API endpoints.
API Method
Select the HTTP method for your API request:
- POST: For creating new resources (most common for Stripe destinations)
- PUT: For updating existing resources
- PATCH: For partial updates to existing resources
Data Format
Configure how your data will be formatted for Stripe API consumption:
- JSON: Most common format for Stripe API (recommended)
- Form Data: For specific Stripe endpoints that require form encoding
- XML: Rarely used with Stripe API
JSON Configuration:
- Content-Type:
application/json - Data Structure: Ensure your data matches Stripe's expected schema
API Endpoint URL
Configure the complete Stripe API endpoint URL:
- Base URL:
https://api.stripe.com/v1/ - Resource Path: Specify the Stripe resource you want to create or update (e.g.,
charges,customers,products) - Resource ID: For updates, include the specific resource ID in the URL path
Example URLs:
https://api.stripe.com/v1/charges- Create new chargeshttps://api.stripe.com/v1/customers- Create new customershttps://api.stripe.com/v1/customers/{customer_id}- Update specific customer
Request Headers
Configure additional HTTP headers for API customization:
- Authorization: Automatically handled by Nexla using your Stripe credential
- Stripe-Version: Specify API version (e.g.,
2020-08-27) - Content-Type: Usually
application/jsonfor Stripe API - Idempotency-Key: Unique key to prevent duplicate requests (recommended for payments)
Example headers:
Stripe-Version: 2020-08-27
Content-Type: application/json
Idempotency-Key: ${message.id}
Exclude Attributes
Filter out unnecessary data fields before sending to Stripe:
- Field Names: Specify exact field names to exclude
- Pattern Matching: Use wildcards for multiple fields (e.g.,
temp_*,debug_*) - Nested Fields: Use dot notation for nested field exclusion (e.g.,
metadata.debug)
Record Batching
Configure how multiple records are grouped for efficient API calls:
- Batch Size: Number of records per API call (Stripe typically handles single records)
- Batch Method: How to handle multiple records (usually individual API calls)
- Error Handling: How to handle failures in batched operations
Response Webhook
Configure automatic response handling and status tracking:
- Webhook URL: Endpoint to receive Stripe webhook notifications
- Event Types: Specify which Stripe events to listen for
- Signature Verification: Validate webhook signatures for security
Common Stripe Webhook Events:
charge.succeeded- Payment completed successfullycustomer.created- New customer createdinvoice.payment_succeeded- Invoice payment completed
Testing Your Configuration
After configuring your Stripe destination:
- Test Connection: Verify that Nexla can successfully connect to Stripe
- Validate Data Format: Ensure your data matches Stripe's expected schema
- Test Record Creation: Send a test record to verify the endpoint works
- Monitor Webhooks: Check that webhook notifications are received correctly
Stripe has strict data validation requirements. Ensure your data matches the expected schema for the resource type you're creating or updating.
Always test your Stripe destination with test data first. Stripe charges real money for live transactions, so use test mode during development and testing.