WooCommerce Integration Guide

This guide walks WooCommerce merchants through installing, configuring, and going live with the PayStand Payment Gateway Plugin.

Overview

The PayStand WooCommerce Payment Gateway Plugin allows merchants to accept payments directly on their WordPress/WooCommerce storefront. Customers can pay via credit/debit card, ACH bank transfer, or eCheck (bank session) — all through the PayStand checkout widget embedded in your WooCommerce checkout page.


Prerequisites

  • WordPress 5.0+ with WooCommerce 3.x or higher installed and active

  • A PayStand merchant account

  • Your PayStand Publishable Key (found in the PayStand Dashboard under Settings > API Keys)

  • PHP 7.2+


2. Installing the Plugin

Once you receive the plugin package:

  1. Log into your WordPress Admin dashboard

  2. Go to Plugins > Add New > Upload Plugin

  3. Upload the PayStand WooCommerce plugin .zip file

  4. Click Install Now, then Activate

     

3. Configuring the Plugin

Navigate to WooCommerce > Settings > Payments and click PayStand to configure.

3.1 Enable/Disable

 
 
 

Setting

 

Description

 

Enable PayStand

Check to enable PayStand as a payment method at checkout

 
 
 

3.2 Environment

 
 
 

Setting

 

Values

 

Description

 

Environment

Sandbox / Live

Use Sandbox for testing, Live for production. Sandbox points to checkout.paystand.co and api.paystand.co; Live points to checkout.paystand.com and api.paystand.com

 
 
 
 

 

3.3 Types of Funds to Show (Payment Methods)

This is one of the most important settings. It controls which payment methods your customers see at checkout.

 
 
 

Setting

 

Description

 

View Funds

Comma-separated list of payment methods to display

 
 
 

Available Values

 
 
 

Value

 

Payment Method

 

Description

 

card

Credit/Debit Card

Visa, Mastercard, Amex, Discover

ach

Manual ACH

Customer enters bank routing and account number manually

echeck or bank

eCheck / Bank Session

Customer connects their bank via secure OAuth session (Plaid) — no manual entry required

wire

Wire Transfer

Wire transfer instructions

achPush

ACH Push

ACH push payment

 
 
 

Configuration Examples

 
 
 

Configuration

 

What the Customer Sees

 

card,ach,echeck

All three payment tabs: Card, ACH, and Bank

card

Card payments only

card,ach

Card and manual ACH only (no bank session)

echeck,card

Bank session first, then Card (order matters — first value is the default tab)

(empty / default)

Shows all payment methods enabled on the merchant's plan

 
 

The order you list the values determines the tab display order in the checkout. The first value becomes the default selected tab.

3.4 Checkout Display Mode

 
 
 

Setting

 

Values

 

Description

 

Mode

modal / embed

Modal: Checkout opens as a popup overlay when the customer clicks "Pay". Embed: Checkout is rendered inline on the checkout page

 
 
 

3.5 Fees and Incentives (Optional)

If your PayStand plan includes fee split or payment incentive configurations:

 
 
 

Setting

 

Description

 

Preset URL Key

The Fees and Incentives URL key from your PayStand Dashboard. Found under Settings > Checkout Settings > Checkout Presets

 
 
 

This allows you to pass merchant-specific fee configurations (e.g., surcharging for card, discounting for ACH) to the checkout widget.

3.6 Branding (Optional)

 
 
 
 
 
 

Setting

 

Description

 

Logo URL

URL to your custom logo image displayed in the checkout

Preset Name

Custom preset name if configured in PayStand

External CSS URL

URL to a custom CSS file for checkout styling

 
 
 

4. Payment Flow

  1. Customer adds items to cart
  2. Proceeds to WooCommerce checkout
  3. Selects "PayStand" as payment method
  4. PayStand checkout widget loads (card/ACH/bank tabs based on viewFunds config)
  5. Customer enters payment details and submits
  6. PayStand processes the payment via the configured processor
  7. Payment result returned to WooCommerce
  8. WooCommerce order status updated (Completed / Failed)
  9. PayStand sends webhook notification for payment lifecycle events

5. Webhook Configuration

Webhooks allow PayStand to notify your WooCommerce store when payment events occur (e.g., payment posted, payment failed).

Setting Up Webhooks

  1. In the PayStand Dashboard, go to Settings > Webhooks

  2. Add a new webhook URL pointing to your WooCommerce store:
    https://your-store-domain.com/wc-api/paystand_webhook

Webhook Retry Policy

  • PayStand retries failed webhook deliveries up to 7 times with exponential backoff

  • If your endpoint returns a 404, retries are limited to 3 attempts


6. Testing in Sandbox

Before going live, test the integration using Sandbox mode:

  1. Set Environment to Sandbox in the WooCommerce PayStand settings

  2. Use your Sandbox publishable key (different from your Live key)

  3. Place test orders on your WooCommerce store

  4. Verify payments appear in the PayStand Dashboard (Sandbox environment)

Sandbox Test Data

 
 
 

Payment Method

 

Test Details

 

Card

Use Visa 4242 0000 0000 0077, any future expiry, any CVV

ACH

Use routing 110000000, account 000123456789

eCheck/Bank

Use sandbox credentials (user: paystand_test, pass: paystand_good)

 
 
 

7. Going Live

When you are ready for production:

  1. Change Environment from Sandbox to Live

  2. Replace the Sandbox publishable key with your Live publishable key

  3. Update your webhook URL if using a different endpoint for production

  4. Place a small real transaction to confirm everything works end to end

  5. Verify the payment appears in the PayStand Dashboard (Live environment)


8. Full Checkout Attribute Reference

The WooCommerce plugin configures the PayStand checkout widget using these attributes. Most are set automatically by the plugin, but understanding them helps with troubleshooting.

Core Attributes

 
 
 

Attribute

 

Required

 

Description

 

Example

 

ps-publishableKey

Yes

Your PayStand publishable API key

abc123...

ps-env

Yes

Environment: sandbox or live

live

ps-mode

No

Display mode: modal or embed

embed

ps-paymentSource

No

Integration source identifier

woocommerce

 
 
 

Payment Attributes

 

Attribute

 

Description

 

Example

 

ps-paymentAmount

Order total amount

149.99

ps-paymentCurrency

Currency code

USD

ps-fixedAmount

Lock the amount (non-editable)

true

ps-paymentDescription

Payment description

Order #1234

ps-paymentExtId

External ID (WooCommerce order ID)

wc_order_abc123

 
 
 

Fund / Payment Method Attributes

 

Attribute

 

Description

 

Values

 

ps-viewFunds

Which payment methods to show

card,ach,echeck

 
 
 

Payer Pre-fill Attributes

These are populated automatically from the WooCommerce billing details:

 
 

Attribute

 

Description

 

ps-payerName

Billing name

ps-payerEmail

Billing email

ps-payerAddress-street

Billing street

ps-payerAddress-city

Billing city

ps-payerAddress-postal

Billing zip/postal

ps-payerAddress-state

Billing state

ps-payerAddress-country

Billing country

 
 
 

Fee / Incentive Attributes

 
 
 

Attribute

 

Description

 

ps-feesIncentivesUrlKey

Preset key for fees and incentives

 
 
 

9. Troubleshooting

 

Issue

 

Solution

 
 

Issue

 

Solution

 

Checkout widget not loading

Verify publishableKey is correct and matches the selected environment (Sandbox vs Live)

No payment methods showing

Check the viewFunds configuration — leave empty for defaults, or specify valid values (card, ach, echeck)

Payment succeeds but WooCommerce order not updated

Verify webhook URL is correctly configured in the PayStand Dashboard and is reachable from the internet

Webhook not received

Check that your server is not blocking incoming POST requests from PayStand IPs. Review webhook delivery logs in the PayStand Dashboard

CSS/styling conflicts

Use the External CSS URL setting to provide custom styles, or add the PayStand checkout container to your theme CSS scope

Was this article helpful?
0 out of 0 found this helpful