PayPal
Source — Vendo imports transaction data from PayPal and transforms it into payment events and customer profiles for revenue analytics.
What Vendo Syncs
Source Streams
Vendo fetches two raw data streams from the PayPal Transaction Search API:
| Stream | Description |
|---|---|
| Transactions | Parent transaction records with amounts, payer info, status, and fees |
| Transaction Items | Line-item details within each transaction |
Produced Events
Raw transactions are transformed into four production tables:
| Event | Description |
|---|---|
| Payment Received | Successfully completed payments with customer and product details |
| Payment Refunded | Refunded payments with amount and refund status |
| Account Created | Customer’s first payment (used as an account lifecycle proxy) |
| Customers | Customer master profiles with aggregated transaction history |
Transaction Fields
| Field | Description |
|---|---|
| Transaction ID | Unique payment identifier |
| Amount & Currency | Payment amount with currency code |
| Fee Amount | PayPal processing fees |
| Status | Succeeded, denied, pending, or reversed |
| Invoice ID | Merchant invoice reference |
| Payment Method | Instrument type and subtype |
| Payer Email | Customer email address |
| Payer Name | Customer first and last name |
| Payer Country | Geographic origin |
| Shipping Info | Shipping address and method |
Revenue Breakdowns
| Field | Description |
|---|---|
| Sales Tax | Tax amount collected |
| Shipping Amount | Shipping charges |
| Discount Amount | Discounts applied |
| Tip Amount | Tips included |
| Credit Fees | Transactional and promotional credit fees |
Installment Detection
Vendo automatically detects recurring payments by analyzing product names for installment patterns (e.g., “monthly”, “payment plan”). Installment transactions are numbered sequentially per customer and product for cohort and retention analysis.
Currency Conversion
PayPal transactions can be in any currency. Vendo automatically:
- Reads the transaction’s source currency
- Applies daily exchange rates to convert to your reporting currency
- Exports both source and reporting currency amounts
Authentication
PayPal uses OAuth 2.0 Client Credentials flow.
- Requires a Client ID and Client Secret from your PayPal Developer account
- Vendo manages token acquisition and refresh automatically
- Supports both Live and Sandbox environments
Setup
- In the Vendo app, navigate to Apps and click Add App
- Select PayPal from the integration catalog
- Enter your Client ID and Client Secret
- Found in your PayPal Developer Dashboard under Apps & Credentials
- Select Live or Sandbox environment
- Configure your reporting currency
- Vendo validates the credentials and begins syncing transaction history
Platform Details
| Setting | Value |
|---|---|
| Sync Method | Server-side via PayPal Transaction Search API |
| Page Size | Up to 500 transactions per request |
| Query Window | 7-day rolling windows (max 31 days per API call) |
| Event Codes | T0000, T0002, T0006, T0007 (standard payment events) |
| Deduplication | transaction_id on transactions, transaction_id + index on items |
| Test Filtering | Transactions matching “test” in product name are excluded |
Verify Setup
- After connecting, check the app status shows Active
- Verify payment events appear in your Vendo BigQuery dataset
- Compare recent transaction totals against your PayPal dashboard
- Check that customer profiles are being created from payer data
- Review Vendo job logs for sync activity and any errors
Last updated on