Docs / Payment Gateways / PayPal Payment Gateway

PayPal Payment Gateway

Overview

PayPal is one of the most recognized payment brands worldwide, offering customers the ability to pay with their PayPal balance, linked bank accounts, or credit cards. Its buyer protection builds trust and can increase conversion rates.

Prerequisites

  • WordPress Download Manager installed
  • Premium Packages add-on activated
  • SSL certificate (required)
  • PayPal Business account

Creating a PayPal Business Account

  • Go to paypal.com/business
  • Click Sign Up
  • Choose Business Account
  • Enter business information
  • Verify email and bank account

Getting API Credentials

Step 1: Access Developer Dashboard

Step 2: Create App

  • Click Create App
  • Enter app name (e.g., “My Store”)
  • Select Merchant as app type
  • Click Create App

Step 3: Get Credentials

┌─────────────────────────────────────────────────────────────┐
│ App Credentials                                              │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│ Sandbox (Test):                                              │
│ Client ID:     AaBbCc123...                                  │
│ Secret:        EeFfGg456... [Show]                           │
│                                                              │
│ Live (Production):                                           │
│ Client ID:     HhIiJj789...                                  │
│ Secret:        KkLlMm012... [Show]                           │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Configuring in WPDM

Step 1: Enable PayPal

  • Go to Downloads > Settings > Payment Gateways
  • Find PayPal
  • Check Enable PayPal

Step 2: Enter Credentials

┌─────────────────────────────────────────────────────────────┐
│ PayPal Configuration                                         │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│ ☑ Enable PayPal                                              │
│                                                              │
│ Title:                                                       │
│ [PayPal                                                  ]   │
│                                                              │
│ Description:                                                 │
│ [Pay with PayPal - safe and secure                       ]   │
│                                                              │
│ Mode:                                                        │
│ ○ Sandbox (Test)   ● Live                                    │
│                                                              │
│ Live Client ID:                                              │
│ [HhIiJj789...                                            ]   │
│                                                              │
│ Live Secret:                                                 │
│ [KkLlMm012...                                            ]   │
│                                                              │
│ Sandbox Client ID:                                           │
│ [AaBbCc123...                                            ]   │
│                                                              │
│ Sandbox Secret:                                              │
│ [EeFfGg456...                                            ]   │
│                                                              │
│ [Save Settings]                                              │
└─────────────────────────────────────────────────────────────┘

Step 3: Configure Options

Payment Type:
● PayPal Checkout (Recommended)
○ PayPal Standard (Legacy)

Checkout Button Style:
[Gold    ▼] color
[Rect    ▼] shape
[PayPal  ▼] label

☑ Enable Pay Later messaging
☑ Enable Credit Card via PayPal

Webhook Configuration

Step 1: Get Webhook URL

In WPDM settings:

Webhook URL: https://yoursite.com/?wpdmpp_gateway=paypal

Step 2: Add in PayPal

  • Go to Developer Dashboard > Apps & Credentials
  • Select your app
  • Scroll to Webhooks
  • Click Add Webhook
  • Enter your webhook URL
  • Select events:

CHECKOUT.ORDER.APPROVED
PAYMENT.CAPTURE.COMPLETED
PAYMENT.CAPTURE.REFUNDED

Step 3: Get Webhook ID

After creating:

  • Note the Webhook ID
  • Enter in WPDM settings (optional, for verification)

Checkout Experience

PayPal Checkout Button

Modern checkout with PayPal button:

┌─────────────────────────────────────────┐
│                                         │
│        [PayPal Checkout Button]         │
│                                         │
│  or pay with card via PayPal            │
│                                         │
└─────────────────────────────────────────┘

Checkout Flow

1. Customer clicks PayPal button
2. PayPal popup/redirect opens
3. Customer logs into PayPal
4. Reviews and approves payment
5. Returns to your site
6. Order confirmed

Button Customization

Button Style:
├─ Color:  Gold | Blue | Silver | White | Black
├─ Shape:  Rect | Pill
├─ Label:  PayPal | Checkout | Buy Now | Pay
└─ Size:   Small | Medium | Large | Responsive

Payment Methods via PayPal

PayPal Account

  • PayPal balance
  • Linked bank account
  • Linked credit/debit card

Pay with Card (No PayPal Account)

Customers can pay with card through PayPal without creating an account:

☑ Enable Guest Checkout (Pay with Card)

Pay Later

Buy now, pay later options:

☑ Enable Pay Later
├─ Pay in 4 (US, UK, AU)
├─ Pay Monthly (credit)
└─ Show Pay Later messaging on product pages

Venmo (US Only)

☑ Enable Venmo
(Only available to US customers)

Currency Settings

Supported Currencies

PayPal supports 25+ currencies including:

  • USD, EUR, GBP, CAD, AUD
  • JPY, CHF, SEK, NOK, DKK
  • And more…

Currency Configuration

Payment Currency:
● Site currency (USD)
○ Specific currency: [USD ▼]

☐ Convert to PayPal currency if different

Testing PayPal

Sandbox Accounts

  • Go to Developer Dashboard
  • Click Sandbox > Accounts
  • Create test accounts:

– Business (seller)
– Personal (buyer)

Test Buyer Account

Use sandbox buyer credentials:

  • Email: sb-buyer@personal.example.com
  • Password: (from sandbox account)

Test Process

  • Enable Sandbox mode in WPDM
  • Enter sandbox credentials
  • Create test order
  • Log in with sandbox buyer
  • Complete payment
  • Verify order in WPDM
  • Check sandbox dashboard

Sandbox vs Live

Feature Sandbox Live
Real money No Yes
Test cards Yes No
Dashboard sandbox.paypal.com paypal.com
API endpoint api-m.sandbox.paypal.com api-m.paypal.com

IPN (Instant Payment Notification)

Legacy IPN

For older integrations:

IPN URL: https://yoursite.com/?wpdmpp_paypal_ipn=1

Enabling IPN in PayPal

  • Go to PayPal account settings
  • Website payments > Instant payment notifications
  • Enter IPN URL
  • Enable IPN

Webhook vs IPN

Feature Webhook IPN
Method REST API Classic
Reliability Higher Good
Event types More Limited
Recommendation Use webhooks Legacy support

Refunds

Processing Refunds

From WPDM:

  • Open order
  • Click Issue Refund
  • Select amount (full or partial)
  • Click Process

From PayPal:

  • Go to PayPal > Activity
  • Find transaction
  • Click Issue Refund
  • WPDM updates via webhook

Refund Timeline

  • PayPal balance: Immediate
  • Bank account: 3-5 business days
  • Credit card: 5-30 days (depends on bank)

Disputes & Claims

Handling Disputes

When buyer opens dispute:

  • PayPal notifies you
  • Respond in PayPal Resolution Center
  • Provide evidence (screenshots, delivery proof)
  • PayPal makes decision

Dispute Prevention

  • Clear product descriptions
  • Prompt delivery
  • Good communication
  • Fair refund policy
  • Recognizable business name

Advanced Settings

Transaction Type

Transaction Type:
● Sale (Capture immediately)
○ Authorization (Capture later)

Sale: Payment captured immediately
Authorization: Payment authorized, captured later (up to 29 days)

PayPal Email

PayPal Email:
[payments@yourcompany.com                              ]
(Must match your PayPal account)

Invoice Prefix

Invoice Prefix: [STORE-    ]
(e.g., STORE-1234)

Logo URL

Logo URL:
[https://yoursite.com/logo.png                         ]
(Shown on PayPal checkout page)

Troubleshooting

“PayPal button not loading”

Causes:

  • JavaScript error
  • Wrong Client ID
  • SSL issue

Solutions:

  • Check browser console for errors
  • Verify Client ID is correct
  • Ensure HTTPS

“Payment not received”

Causes:

  • Webhook not configured
  • IPN not working
  • Payment still pending

Solutions:

  • Check webhook settings
  • Verify webhook URL accessible
  • Check PayPal activity

“Currency not supported”

Cause: Store currency not supported by PayPal

Solution:

  • Use supported currency
  • Or enable currency conversion

“Redirect loop”

Causes:

  • Wrong return URL
  • Session issues

Solutions:

  • Check return URLs in settings
  • Clear cookies
  • Verify session handling

PayPal Fees

Standard Rates (US)

Transaction Fee
Domestic 2.9% + $0.30
International 4.4% + fixed fee
Micropayments 5% + $0.05

Reducing Fees

  • Apply for merchant rate (high volume)
  • Use PayPal Payments Pro
  • Batch transactions

Related Documentation


Last updated: January 2026
Applies to: WordPress Download Manager 7.x + Premium Packages

Last updated on January 26, 2026

Need Help?

Get support from our team or community forum.

Visit Support

Customization

Need custom features? We can help.

Request Quote