Pipedream PayPal steps in n8n
Updated 2026-10-21 · 2 min read · n8n: PayPal (Native n8n node)
PayPal coverage on Pipedream is thin: one source, New Payment Event (Instant), and one action, Get User Info. Most PayPal workflows there are a payment event plus code steps that call the PayPal REST API. n8n has more: a PayPal Trigger with every webhook event type and a PayPal node for payouts.
The n8n side
PayPal node (n8n-nodes-base.payPal):
| Resource | Operations |
|---|---|
| Payout | Create (batch payout), Get (batch details) |
| Payout Item | Cancel (unclaimed item), Get |
PayPal Trigger (n8n-nodes-base.payPalTrigger): webhook. The event list is loaded from PayPal's webhook event types, so it always matches what PayPal offers; * subscribes to all.
What maps where
Pipedream (app paypal) |
In n8n | Status |
|---|---|---|
| New Payment Event (Instant) | PayPal Trigger with the payment events you need (for example PAYMENT.CAPTURE.COMPLETED) |
manual, 1 node |
| Get User Info | HTTP Request → /v1/identity/oauth2/userinfo |
manual |
| Code step calling the Orders, Payments or Invoicing API | HTTP Request with a Generic OAuth2 credential, or Code node | review |
| Payouts in code | PayPal → Payout → Create | manual |
PayPal is not in the converter's mapped list. Code steps that call PayPal with this.paypal.$auth become Code nodes with the token as a variable; check them in the code step checker.
PayPal credentials in n8n
PayPal API credential: Client ID, Secret and Environment (Sandbox or Live). Create a REST app in the PayPal Developer Dashboard; sandbox and live apps have different credentials. This credential is for the PayPal nodes only; it cannot be picked as a predefined credential in HTTP Request. For API calls create a Generic OAuth2 credential (grant type Client Credentials, token URL https://api-m.paypal.com/v1/oauth2/token or the sandbox equivalent) with the same Client ID and Secret.
Typical migration: payment to sheet and Slack
Pipedream: PayPal New Payment Event (Instant) → code step formats amount → Google Sheets Add Single Row → Slack message.
n8n: PayPal Trigger (PAYMENT.CAPTURE.COMPLETED) → Edit Fields (resource.amount.value, resource.amount.currency_code, payer email) → Google Sheets append → Slack → Message → Send.
Refunds and orders via HTTP Request
- Capture an order:
POST /v2/checkout/orders/{id}/capture. - Refund a capture:
POST /v2/payments/captures/{id}/refundwith amount and currency. - Base URL:
https://api-m.sandbox.paypal.comorhttps://api-m.paypal.com, matching the environment of your OAuth2 credential's token URL.
PayPal migration pitfalls
- Pick narrow events.
*sends every event type, including disputes and subscriptions; each one is an execution. - Webhook verification. PayPal signs webhooks; the trigger registers the webhook for you, but a hand-made Webhook node would need the verify-webhook-signature call.
- Sandbox vs live. A webhook registered with sandbox credentials only receives sandbox events.
- Old webhooks. Pipedream's source created a webhook in your PayPal app; delete it in the developer dashboard after the switch.
- Amounts are strings. PayPal sends
amount.valueas a string ("19.90"); convert it before sums or comparisons in If nodes.
How to move your PayPal workflows
- Export from Pipedream.
- Upload on /convert; the free report lists the PayPal trigger, code steps and their PayPal calls.
- Get the n8n JSON: 1 workflow is free; full export: $3 per workflow, $19 minimum — coming soon.
See the code step checker. Related: Stripe, WooCommerce, QuickBooks.
FAQ
- Which PayPal events can n8n listen to?
- The PayPal Trigger loads the event types from PayPal's API, so you can pick any webhook event (for example PAYMENT.CAPTURE.COMPLETED or CHECKOUT.ORDER.APPROVED) or * for all.
- What does the n8n PayPal node do?
- Payouts: create a batch payout and show its details, and cancel or show a payout item. Orders, captures, refunds and invoices need HTTP Request with a Generic OAuth2 credential (client credentials).
- Can I test with the sandbox?
- Yes. The PayPal credential has an Environment field: Sandbox or Live. Use sandbox app credentials while testing, then switch.
- Do PayPal steps convert automatically?
- No. The trigger becomes a Manual Trigger with a note naming the source, and actions arrive as placeholders with their props.