Skip to main content

WooCommerce Integration

Accept crypto payments on your WordPress store with the Peer Pay Gateway plugin for WooCommerce. Customers pay with Venmo, Cash App, Zelle, and other platforms — you receive USDC.

Requirements

Installation

1. Download the Plugin

Download peer-pay-gateway.zip

2. Upload to WordPress

  1. Go to Plugins > Add New > Upload Plugin in your WordPress admin
  2. Choose the peer-pay-gateway.zip file
  3. Click Install Now, then Activate

Configuration

Navigate to WooCommerce > Settings > Payments > Peer Pay to configure the plugin.

Required Settings

SettingDescription
API KeyYour API key from Settings in the dashboard
Webhook SecretGenerated when you create a webhook in the Webhooks tab of the dashboard

Optional Settings

SettingDefaultDescription
TitlePeer PayPayment method name shown at checkout
DescriptionPay via Venmo, Cash App, Zelle...Description shown at checkout
Recipient AddressEVM wallet address (0x...) to receive USDC. Overrides the default address on your merchant account
Destination ChainBase (8453)Blockchain to receive funds on. Current plugin UI options: Base, Ethereum, Arbitrum
Destination TokenUSDCToken to receive. Enter an alias (USDC, USDT) or a contract address

Currency Note

The v1 WooCommerce plugin currently supports USD store currency for checkout amount creation.

Setting Up Webhooks

Webhooks let Peer notify your store about order/payment lifecycle updates. In the WooCommerce plugin, order status changes are driven by order-level events (ORDER_FULFILLED, ORDER_CANCELLED).

1. Find Your Webhook URL

Your webhook URL follows this format:

https://yourstore.com/wc-api/WC_Gateway_Peer_Pay/

Replace yourstore.com with your actual domain.

2. Add the Webhook in the Dashboard

  1. Go to merchant.pay.peer.xyz and open the Webhooks tab
  2. Create a new webhook with your store's webhook URL
  3. Copy the Webhook Secret shown after creation
  4. Paste the secret into the plugin's Webhook Secret field in WooCommerce settings

Webhook Events

The plugin handles these events automatically:

EventAction
PAYMENT_SETTLEDAdds an order note that payment settled and fulfillment is pending
ORDER_FULFILLEDMarks order as Processing (payment complete)
ORDER_CREATEDAdds a note that an order was created
PAYMENT_CREATEDAdds a note that a payment attempt was created
ORDER_CANCELLEDMarks order as Cancelled
PAYMENT_BRIDGE_FAILEDAdds a note when bridge payout fails for settlement

Minimum recommended subscriptions for this plugin:

  • ORDER_FULFILLED
  • ORDER_CANCELLED
  • Add ORDER_CREATED, PAYMENT_CREATED, PAYMENT_SETTLED, and PAYMENT_BRIDGE_FAILED if you want informational order notes.

How It Works

  1. Customer checks out and selects Peer Pay
  2. WooCommerce creates an order in On-Hold status
  3. Customer is redirected to the Peer checkout page
  4. Customer pays via their chosen platform (Venmo, Zelle, etc.)
  5. Peer verifies payment and sends lifecycle webhooks
  6. WooCommerce updates the order to Processing when ORDER_FULFILLED is received

The customer also receives an email with a payment link in case they need to complete payment later.

Checkout Compatibility

The plugin works with both:

  • Classic WooCommerce Checkout (shortcode-based)
  • WooCommerce Blocks Checkout (block editor-based)

No additional configuration is needed — both are supported out of the box.

Supported Payment Platforms

Customers can pay using any platform enabled on your Peer merchant account:

  • Venmo
  • Cash App
  • Zelle
  • PayPal
  • Revolut
  • Wise

Troubleshooting

Plugin doesn't appear at checkout

Ensure the payment method is enabled and both required fields are filled: API Key and Webhook Secret. The payment method is hidden until it is enabled and these credentials are configured.

Orders stay on "On-Hold"

Check that your webhook URL is correctly configured in the Peer dashboard and that the webhook secret matches. You can verify webhook delivery in the dashboard's webhook logs.

Viewing plugin logs

Go to WooCommerce > Status > Logs and select the peer-pay log file to see detailed plugin activity.

Next Steps