Reference · Tools

PayPal Trigger

Starts workflow when a PayPal event occurs (payments, subscriptions, disputes, etc.)

Webhook trigger Finance v1

The PayPal Trigger fires on the PayPal webhook events you subscribe to — completed payments, subscription lifecycle changes, disputes and more. A typical build is granting access the moment a subscription is created and revoking it when one is cancelled.

Node type
Webhook trigger
Parameters
1
Outputs
Output
Credentials
PayPal

PayPal Trigger

Trigger workflow on PayPal payment events

Overview

Webhook trigger that listens for PayPal webhook events. PayPal sends POST requests to this webhook when configured events occur in your PayPal account. Supports 60+ event types covering payment sales, billing agreements, subscriptions, disputes, payouts, invoices, checkout orders, and more. PayPal uses a server-side verification API rather than HMAC signatures — in sandbox mode, verification is skipped; in live mode, the webhook checks PayPal transmission headers for authenticity. Use this trigger to automate workflows based on payment completions, subscription lifecycle changes, dispute notifications, and other PayPal activity.

Category: Finance
Tool Name: paypal_trigger
Version: 1

Appearance: Icon: si-paypal | Color: #003087

Node Type

Trigger — webhook (receives incoming HTTP callbacks)

Input / Output

DirectionPort(s)
InputNone (trigger node)
OutputOutput

Credentials

This tool requires PayPal credentials. See the Credentials Guide for setup instructions.

Parameters

ParameterTypeRequiredDefaultDescription
EventsmultiOptionsYes[]The PayPal events to listen for. Select * for all events.
Options: * (any event), BILLING.PLAN.CREATED, BILLING.PLAN.UPDATED, BILLING.SUBSCRIPTION.CANCELLED, BILLING.SUBSCRIPTION.CREATED, BILLING.SUBSCRIPTION.EXPIRED, BILLING.SUBSCRIPTION.RE-ACTIVATED, BILLING.SUBSCRIPTION.SUSPENDED, BILLING.SUBSCRIPTION.UPDATED, CHECKOUT.ORDER.APPROVED, CHECKOUT.ORDER.COMPLETED, CHECKOUT.ORDER.PROCESSED, CHECKOUT.ORDER.SAVED, CHECKOUT.ORDER.VOIDED, CUSTOMER.DISPUTE.CREATED, CUSTOMER.DISPUTE.RESOLVED, CUSTOMER.DISPUTE.UPDATED, CUSTOMER.MANAGED-ACCOUNT.ACCOUNT-CREATED, CUSTOMER.MANAGED-ACCOUNT.ACCOUNT-UPDATED, IDENTITY.AUTHORIZATION-CONSENT.REVOKED, INVOICING.INVOICE.CANCELLED, INVOICING.INVOICE.CREATED, INVOICING.INVOICE.PAID, INVOICING.INVOICE.REFUNDED, INVOICING.INVOICE.SCHEDULED, INVOICING.INVOICE.UPDATED, MERCHANT.ONBOARDING.COMPLETED, MERCHANT.PARTNER-CONSENT.REVOKED, PAYMENT.AUTHORIZATION.CREATED, PAYMENT.AUTHORIZATION.VOIDED, PAYMENT.CAPTURE.COMPLETED, PAYMENT.CAPTURE.DENIED, PAYMENT.CAPTURE.PENDING, PAYMENT.CAPTURE.REFUNDED, PAYMENT.CAPTURE.REVERSED, PAYMENT.ORDER.CANCELLED, PAYMENT.ORDER.CREATED, PAYMENT.PAYOUTSBATCH.DENIED, PAYMENT.PAYOUTSBATCH.PROCESSING, PAYMENT.PAYOUTSBATCH.SUCCESS, PAYMENT.PAYOUTS-ITEM.BLOCKED, PAYMENT.PAYOUTS-ITEM.CANCELED, PAYMENT.PAYOUTS-ITEM.DENIED, PAYMENT.PAYOUTS-ITEM.FAILED, PAYMENT.PAYOUTS-ITEM.HELD, PAYMENT.PAYOUTS-ITEM.REFUNDED, PAYMENT.PAYOUTS-ITEM.RETURNED, PAYMENT.PAYOUTS-ITEM.SUCCEEDED, PAYMENT.PAYOUTS-ITEM.UNCLAIMED, PAYMENT.REFUND.COMPLETED, PAYMENT.SALE.COMPLETED, PAYMENT.SALE.DENIED, PAYMENT.SALE.PENDING, PAYMENT.SALE.REFUNDED, PAYMENT.SALE.REVERSED, RISK.DISPUTE.CREATED, VAULT.CREDIT-CARD.CREATED, VAULT.CREDIT-CARD.DELETED, VAULT.CREDIT-CARD.UPDATED

Output Data

Each PayPal event produces one output item carrying the event envelope:

  • id — PayPal’s id for the webhook event
  • event_type — the event that fired, e.g. PAYMENT.SALE.COMPLETED
  • event_version — the version of the event schema
  • create_time — when PayPal created the event
  • resource_type — the kind of object the event is about, e.g. sale
  • resource_version — the version of the resource schema
  • summary — PayPal’s human-readable summary of the event
  • resource — the full resource object (amounts, state, ids, and so on)
  • links — PayPal’s HATEOAS links for the event
  • _trigger — always paypal_webhook
  • _timestamp — ISO 8601 timestamp of when the request arrived
  • _webhookEvent — the same value as event_type

Reference the payload downstream by expression, e.g. {{ $json.resource.amount.total }}. Deliveries whose event_type is not in your Events selection are acknowledged without starting the workflow, and in live mode requests that fail PayPal’s signature verification are rejected.

Usage Examples

  • Start workflow when a PayPal payment is completed
  • Trigger on new subscription creation in PayPal
  • React to payment refunds automatically
  • Process billing agreement cancellations
  • Handle PayPal dispute notifications

Example Configuration

Fire when a payment completes:

{
  "type": "paypal_trigger",
  "parameters": {
    "events": ["PAYMENT.SALE.COMPLETED"]
  }
}

Follow the subscription lifecycle:

{
  "type": "paypal_trigger",
  "parameters": {
    "events": [
      "BILLING.SUBSCRIPTION.CREATED",
      "BILLING.SUBSCRIPTION.UPDATED",
      "BILLING.SUBSCRIPTION.SUSPENDED",
      "BILLING.SUBSCRIPTION.CANCELLED",
      "BILLING.SUBSCRIPTION.EXPIRED"
    ]
  }
}

Watch refunds and disputes:

{
  "type": "paypal_trigger",
  "parameters": {
    "events": [
      "PAYMENT.SALE.REFUNDED",
      "PAYMENT.CAPTURE.REFUNDED",
      "CUSTOMER.DISPUTE.CREATED",
      "CUSTOMER.DISPUTE.RESOLVED"
    ]
  }
}

Receive every PayPal event on one workflow:

{
  "type": "paypal_trigger",
  "parameters": {
    "events": ["*"]
  }
}

Trigger Behavior

  • Activation: When the workflow is activated, a webhook endpoint is registered with the service.
  • Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
  • Payload: The incoming webhook payload is parsed and output as workflow items.
  • Verification: Supports signature verification where applicable.

Tips

Listens for PayPal webhook events. Configure which events to listen for (e.g. PAYMENT.SALE.COMPLETED, BILLING.SUBSCRIPTION.CREATED). The webhook URL is automatically generated — register it in your PayPal developer dashboard. PayPal uses server-side verification via transmission headers in live mode; sandbox mode skips verification.

Frequently asked questions

Do I have to register the webhook myself?

Yes. The webhook URL is generated automatically, but you register it in your PayPal developer dashboard against the events you want delivered.

Are the payloads verified?

In live mode PayPal uses server-side verification via transmission headers. Sandbox mode skips verification, so a sandbox setup is not a test of the production security path.

Which events can it handle?

PayPal's event types such as PAYMENT.SALE.COMPLETED and BILLING.SUBSCRIPTION.CREATED, chosen when configuring the trigger.

Which credential does it need?

A PayPal credential, the same one the PayPal action node uses.

Build with the PayPal Trigger node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need PayPal credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.