Core Payment Options
Table of Contents
Overview
By default there are 4 core options to accept payments on your website. These options are PayPal Standard, Cheque, Cash on Delivery, and BACS (Bank Transfer).
PayPal Standard
Setup
PayPal Standard takes customers from your site to PayPal's secure site to finish paying for their order.
- Enable PayPal Standard.
- Enter a Title & Description.
- Enter your email address in the PayPal Email field, which is the most important information you need to configure before taking payments.
If you don't have an account with PayPal, be sure to sign up for a business account - It's free.
Sandbox
You can enable PayPal Sandbox to test your checkout process during your store's development. With sandbox enabled, no payments/money is taken. You can read more on the PayPal developer website here.
Once you've tested your checkout process with the Sandbox enabled and are confident with the results, be sure to disable the Sandbox before launching your site so you can accept payments from your customers.
Shipping Options
There are two shipping options:
- Send shipping details to PayPal - You can opt to have shipping addresses sent to PayPal to create shipping labels instead of billing addresses.
- Address override option - While we recommend you keep it disabled, it can be used to prevent address information from being changed.
Note: When selecting the option to send Shipping details, PayPal verifies addresses and can often reject the customer if they don't fully recognise it.
Advanced Options
Under the Advanced Options, there are a few fields you can use as needed.
- Receiver Email can be used if the email address that receives payments is different from the primary email address on your PayPal account.
- Invoice Prefix to add a prefix to PayPal invoices. This is helpful if you're using the same PayPal account for more than one website/store.
- Payment Action lets you choose to capture funds immediately or only authorise.
- Page Style is an optional setting where you can enter the name of a custom page from your PayPal account.
- PayPal Identity Token can be used to verify payments if you have any IPN issues.
API Credentials
Three fields to paste your PayPal API credentials into: API Username, API Password, and API Signature. Learn how to get that information from PayPal here.
Data passed to PayPal
The PayPal gateway passes individual line items to PayPal (product name, price, and quantity) unless:
- Your prices are defined as including tax.
- You have more than nine line items, including shipping - PayPal only supports up to nine items.
This is to prevent rounding errors and to ensure correct totals are charged. When line items are not sent, the items are grouped and named "Order #x".
PayPal IPN URL
It's good practice to set up your PayPal IPN URL. In your PayPal Business account, go to: "Profile > Profile and Settings > My Selling Tools". Click on "Instant Payment Notifications" to set your URL.
Use the following, replacing example.com with your own URL:
http://example.com/?wc-api=WC_Gateway_Paypal
Auto-Return
You can set up auto-return in your PayPal account, which will take customers to a receipt page. For example, use the following URL and replace example.com with your own URL:
example.com/checkout/order-received/
Regardless of this setting, it redirects dynamically to the correct receipt page.
Add ?utm_nooverride=1
to the end of your URL to ensure that transactions (i.e conversions) are credited to the original traffic source, rather than PayPal.
FAQ
I have pending orders, but no payment was received.
If the customer abandons the order in PayPal (and not your website), the order shows as Pending (unpaid). No action is necessary.
When the hold stock time is reached, the order will be automatically cancelled.
Do I need an SSL certificate?
The payment is made offsite on PayPal's website and not your checkout. Adding an SSL certificate is optional but definitely encouraged. More and more an SSL certificate is becoming a ranking factor in search results, and it keeps any information transmitted to and from your website secure.
I'm getting payments, but orders are still pending.
In this case the PayPal IPN is failing. Open up a support ticket.
Why do I get an Internal Server Error?
If you see an "Internal Server Error" message after hitting the purchase button, the email address you entered in the PayPal settings in incorrect.
What is PayPal IPN?
PayPal Instant Payment Notifications (PayPal IPN) tells your store that payment has been successful (or not). To learn more about how to set this up on PayPal, click here. There can only be one IPN URL set per PayPal account, so you need to use an account that is not already using an IPN for any other purpose.
Can I use the same PayPal account for more than one website?
We use an "Invoice" system. There is a setting that "blocks duplicate invoices". With two websites using invoices, it is inevitable that there will be duplicate invoice numbers. By de-selecting that option in PayPal, the invoices have no issue. Please check that the Invoice Prefix in your website's store settings (Under Checkout > PayPal) is different for each website.
Do my customers need a PayPal account?
PayPal has an option that allows customers to checkout without needing an account. The setting is called "PayPal account optional", and can be found inside your PayPal account in the My Profile section. Go to "My Selling Tools > Website Preferences", and turn on PayPal account optional. To learn more, click here.
Is PayPal Seller Protection in effect?
Yes, if you use your Shipping address. No, if you use your Billing address (default). The PayPal API does not recognise more than one address.
Message says "Seller only accepts payments from unencrypted payments", why?
This message is from PayPal. The error displays when your PayPal account profile is set to only accept payments from "encrypted" buttons but your item button code is not encrypted. This interrupts the payment process and displays the error message. To turn off this option, head to your PayPal account profile section, and go to "Selling Preferences > Website Payment Preferences". In the "Encrypted Website Payments" section, select "off".
Message says "This invoice has already been paid", why?
Order numbers may not be unique if you're running multiple stores or use your PayPal account for other things. To avoid this issue, head to "Store Settings > Checkout > PayPal" in your admin dashboard, and set a unique prefix for your store's invoices.
Why don't customers see a link to download virtual/downloadable products after paying and getting redirected back to my website?
This could be a sign that the IPN isn't working correctly with your website. A possible workaround is to enable Payment Data Transfer (PDT). Within your PayPal account settings, head to "Selling Preferences > Website Payment Preferences", turn on "Auto Return", add a return URL, and turn on "Payment Data Transfer". Once you have saved the settings, navigate back to the Website Settings page and you will see the PDT Identity Token. You can paste the PDT Identity Token in your admin panel under "Store Settings > Checkout > PayPal" in the "PayPal Identity Token" field.
Cheque
Overview
The Cheque gateway is a payment gateway that doesn't require payment to be made online. Orders made using Cheque are set to "On Hold".
You, as the store owner, should confirm that cheques have cleared before processing orders. It's important to verify that you are paid before shipping an order and marking it complete. For more info, see "Managing Orders".
Setup
In your admin panel, go to "Settings > Store Settings > Checkout > Cheque", and configure your settings.
- Enable/Disable
- Title - Choose the title shown to customers at checkout.
- Description - Add info which will be shown to customers if they choose the Cheque option at checkout.
- Instructions - Add instructions explaining to the customer how they can pay you by cheque.
Cash on Delivery
Overview
Cash on Delivery (COD) is a payment gateway that doesn’t require payment to be made online. Orders using Cash on Delivery are set to Processing until payment is made upon delivery of the order by you or your shipping method.
You, as the store owner, need to confirm payment was collected before marking orders complete. For more information, see "Managing Orders".
Setup
In your admin panel, go to "Settings > Store Settings > Checkout > Cash on Delivery", and configure your settings.
- Enable/Disable
- Title - Choose the title shown to customers at checkout.
- Description - Add info which will be shown to customers if they choose the Cash on Delivery option at checkout.
- Instructions - Explain how to pay via Cash on Delivery.
- Enable for shipping methods - Choose which shipping methods will offer Cash on Delivery.
- Enable for virtual orders - Tick the box to allow COD for virtual products.
BACS (Bank Transfer)
Overview
Bank Account Clearing System (BACS), commonly known as direct bank transfer or wire transfer, is a gateway that doesn’t require payment to be made online.
Orders made using BACS are set as "On Hold". You, as the store owner, need to confirm payment has cleared before shipping or marking orders "Processing" or "Complete". For more information, see "Managing Orders".
Setup
In your admin panel, go to "Settings > Store Settings > Checkout > BACS", and configure your settings.
- Enable/Disable
- Title - Choose the title shown to customers at checkout.
- Description - Add info which will be shown to customers if they choose the BACS option at checkout.
- Instructions - Add instructions explaining to the customer how to pay via BACS to your bank account(s).
- Account Details - Enter account name and number, bank name, routing number, IBAN and/or SWIFT/BIC numbers shown to customers on the Order Recieved page and in order emails after checking out.