Skip to content

Payment methods

Steps for

How it works

On the Review & Pay step of the My Cart, customers pick from the payment methods their customer group allows. Their choice decides whether they pay now, and how the order arrives in your store.

Payment methodFor the customerFor you and the order
Pay on AccountChecks out without payment details. The order is charged to their account, for example on Net 30 terms.An offline method. You can set a credit limit and net terms for each customer and collect payment later.
Pay by InvoiceChecks out without payment details, and pays later, for example on Net 30 terms.An offline method. You take payment outside the store, for example by bank transfer, often against an invoice. You can set net terms, but there's no credit limit.
Pay Online by CardPays straight away in your store's standard checkout, by card or any other method your store offers. Sometimes called pro forma payment.The order arrives paid (completed), with nothing to collect.

Which method to offer

If you want customers to...Offer
Pay before you ship, for example new customersPay Online by Card
Order within a credit limit and pay on terms such as Net 30 or Net 60Pay on Account, with credit limits and net terms
Order now and pay later against an invoice, for example by bank transfer, with or without net terms but no credit limitPay by Invoice
Agree a price with your team before orderingThe Quoting Engine

A group can have several methods, for example card and on account for long-standing customers, and card only for new ones.

Shopify only

To follow each method from checkout to payment, step by step, try the interactive guide How payments work.

Which payment methods work with the SparkLayer checkout?

Shopify only

Payment methodWorks?How
Card gateways, such as Shopify Payments or PayPalYesThrough Pay Online by Card, which takes the customer to Shopify's checkout.
Manual (custom) methods, such as Zelle or bank transferYesZelle isn't a Shopify automated gateway. Add it as a manual payment method in Settings,Payments (opens in your Shopify admin in a new tab), and it shows in Shopify's checkout with Pay Online by Card. Or offer Pay by Invoice and explain how to pay in a payment method message.
ACH bank transferPartlyIt shows at Shopify's own payment step, the last step of the checkout, with Pay Online by Card. Full ACH support in the SparkLayer checkout is in development, with no date yet.
Pay on Account and Pay by InvoiceYesSparkLayer's own methods. The customer checks out without payment details and you collect payment later.
QuotesYesNot a payment method: the customer chooses how to pay when they complete the quote. See Set up quotes.
Shopify gift cardsWith card checkout onlyOnly in Shopify's checkout, with Pay Online by Card. Not with Pay on Account or Pay by Invoice.

Each order has one payment method, so a customer can't split an order between methods, such as part on account and part by card.

How orders arrive in your store

Which payment method the customer chooses decides how the order arrives in your platform: paid and ready to fulfil, or waiting for you to collect payment.

How B2B payment methods work with SparkLayer and Shopify, from the B2B checkout to a completed order in Shopify.
B2B checkout (SparkLayer)
(this flows forward)
Payment method?
Payment on account or by invoice
(this flows forward)
Order completed (SparkLayer)
(this flows forward)
Auto-complete draft orders?
Yes
(this flows forward)
Completed order (Shopify)
No
(this flows forward)
Draft order (Shopify)
Manually marked as complete(this flows forward)
Completed order (Shopify)
Pay online by card (upfront)
(this flows forward)
Sales agent order?
Yes
(this flows forward)
Email sent to the customer to complete payment
Clicks the link(this flows forward)
Shopify checkout
(this flows forward)
Completed order (Shopify)
No
(this flows forward)
Company user order?
Yes
(this flows forward)
Email sent to the customer to complete payment
Clicks the link(this flows forward)
Shopify checkout
(this flows forward)
Completed order (Shopify)
No
(this flows forward)
Shopify checkout
(this flows forward)
Completed order (Shopify)
Payment methodHow the order arrives
Pay on Account and Pay by InvoiceA draft order (opens in a new tab) by default, so you can make changes before you take payment and fulfil. To create completed orders instead, turn on Auto-complete draft orders.
Pay Online by CardThe customer pays in the Shopify checkout and the order arrives completed. If they don't finish paying, the order still shows in your Shopify draft orders.
Pay Online by Card, chosen by a sales agent or company userThe customer is emailed to complete payment, then the order continues as normal.

Auto-complete draft orders is at Integrations,Platform,Shopify order actions (opens in your SparkLayer Dashboard in a new tab). See Complete draft orders automatically and Shopify payment methods.

Choose which payment methods a customer group can use

  1. Go to Customers,Groups (opens in your SparkLayer Dashboard in a new tab) and click the group's name. To change every group, click Edit on the base customer group.
  2. Under Inherited rules, click + Override next to Payment methods (on the base group, + Customize). The rule moves up to Customized rules.
  3. Tick the methods the group can use: Pay by invoice ("Place an order and be invoiced later"), Payment on account ("Order on account, e.g. net terms and credit") and Card at checkout ("Pay online by card").
  4. Click Save.

Groups inherit the base customer group's methods until you override them. Click Reset on the rule to hand it back. See Customer groups.

Set up net terms and credit limits

Net terms (such as Net 30) are how many days a customer has to pay an order they didn't pay for at checkout, so they apply to both Pay on Account and Pay by Invoice. A credit limit applies to Pay on Account only. Both are on every plan. You set them on each customer in a metafield (an extra field on the customer record in your store admin). Customers see them in the Financials section of My Account. See Credit limits and net terms.

Rename payment methods

Change the names customers see at Storefront,Options,Translation overrides (opens in your SparkLayer Dashboard in a new tab), without code: add an override for the key and enter the new name. See Change checkout text.

Default nameTranslation key
Pay by Invoicecart.checkout.payment-method.full.paymentByInvoice
Pay on Accountcart.checkout.payment-method.full.paymentOnAccount
Pay Online by Cardcart.checkout.payment-method.full.upfrontPayment
Core Script code for your developer

A developer can set the same names in your Core Script:

Core Script
translations: {
  en: {
    "cart.checkout.payment-method.full.paymentByInvoice": "Pay by Invoice",
    "cart.checkout.payment-method.full.paymentOnAccount": "Pay on Account",
    "cart.checkout.payment-method.full.upfrontPayment": "Pay Online by Card",
  }
},

To explain a method, such as how Pay by Invoice works, add a message under it. See Add a message for each payment method.

Change the order and default payment method

Customers see payment methods in a set order, and the first is selected by default. To change the order without code:

  1. Go to Storefront,Options (opens in your SparkLayer Dashboard in a new tab) and open Checkout.
  2. Under Payment methods, in order, drag the methods into the order you want.
  3. Click Save and publish.

The order only affects methods the customer's group can use.

Core Script code for your developer

A developer can set paymentMethodsOrder in your Core Script instead, using the Core Script names in Payment method names. Here, Payment on account is first, so it's the default:

Core Script
paymentMethodsOrder: [
  "paymentOnAccount",
  "paymentByInvoice",
  "upfrontPayment",
],

To make card payment (upfrontPayment) the default, move it to the top:

Core Script
paymentMethodsOrder: [
  "upfrontPayment",
  "paymentOnAccount",
  "paymentByInvoice",
],

Choose which card payment options customers see (Shopify)

Shopify only

Pay Online by Card takes customers to the Shopify checkout, with every Shopify payment method (opens in a new tab) you've set up, such as credit card, PayPal or cash on delivery.

To hide some of them from B2B customers on Shopify:

  1. Install a Shopify app that hides payment methods, such as ETP Hide and Sort Payment Methods (opens in a new tab) or Payfy Conditional Payments (opens in a new tab).
  2. In the app, add a rule for customers with the b2b tag, and choose the methods to hide, such as PayPal and Cash on Delivery.

Only Shopify Plus stores can hide the Credit card method. This is a limit of Shopify's Payment Customization API.

On other platforms, Pay Online by Card shows your standard checkout's payment methods.

Show payment status to customers

Shopify only

Payments visibility lets customers see whether each order is paid, their payment history and what they owe, in My Account. It's for Shopify only.

  1. Go to Settings,Configurations,Ordering (opens in your SparkLayer Dashboard in a new tab).
  2. Turn on Payments visibility ("Show the payment status of orders in the My Account area").
  3. Click Save.

It's the same setting as Show payment status at Storefront,Options,My Account (opens in your SparkLayer Dashboard in a new tab): turning on either turns on both. Once it's on:

  • The My Account order list has a Payment column, showing Paid or Unpaid. It updates when you change the payment status in Shopify.
  • The order's timeline logs each payment, with the amount and date, such as "US$666.90 paid against order".
  • With Xero, payments against Xero invoices appear as transactions on the order.

Show a real-time account balance

Shopify only

With Payments visibility on, SparkLayer keeps a real-time account balance for each customer. The Financials section of My Account shows their Payment terms, Unpaid Balance and Credit Limit.

SparkLayer starts from an opening balance (what the customer owed on a given date), then tracks every new order and payment. This works with Shopify, Xero and QuickBooks Online, so customers can see which orders are paid or outstanding, and your team gets fewer balance queries.

Set an opening balance

Shopify only

The opening balance goes in the same customer metafield as the credit limit: Credit Limit and Account Balance (namespace sparklayer, key payment_on_account). To set up the metafield, see Credit limits and net terms.

  1. In the form below, enter the Balance the customer owes and the Balance date it applies from, plus their Credit limit and Net terms if they have them: the value replaces everything in the field. It writes the date in the format SparkLayer needs.
  2. In the Shopify admin, go to Customers (opens in your Shopify admin in a new tab) and open the customer.
  3. Paste the value into the Credit Limit and Account Balance metafield, replacing what's there, and save the customer.
Build the value Fill in what you need and leave the rest blank.
Paste into sparklayer.payment_on_account
Fill in a value above
PropertyWhat it isExample
balanceThe amount owed on a specific date.150.00
balance_dateThe date and time of the balance, in RFC 3339 format.2025-01-01T18:00:00+08:00

Whenever you update the metafield, SparkLayer recalculates the balance from the new values.

Payment method names

Each method has a different label in each part of SparkLayer: the checkout, a customer group's Payment methods rule at Customers,Groups (opens in your SparkLayer Dashboard in a new tab), and Payment methods, in order at Storefront,Options,Checkout (opens in your SparkLayer Dashboard in a new tab).

Buyers see at checkoutCustomer group ruleStorefront optionsCore Script name
Pay on AccountPayment on accountPayment on accountpaymentOnAccount
Pay by InvoicePay by invoicePayment by invoicepaymentByInvoice
Pay Online by CardCard at checkoutUpfront paymentupfrontPayment
Request for Quote (retired)–Quotequote

FAQs

Was this page helpful?

Last updated