Selling with Stitch
Buy Now Pay Later

Everything you need to promote, integrate, and support Stitch Buy Now Pay Later — from placement strategy to ready-to-use marketing assets.

Stitch BNPL on mobile

About this guide

This guide shares recommendations across marketing channels for communications that can be used to introduce and promote Stitch BNPL to your customers.

Build awareness

Ensure customers know that BNPL is now available as a payment method and how it differs from previous options.

Answer questions

Provide clear, ready-to-use answers for when customers encounter BNPL for the first time — in FAQs, support pages, and live chat.

Drive adoption

Promote the benefits of interest-free instalments across your site, emails, SMS, and social channels to encourage usage.

What's inside

01
Promotion

Where to place BNPL on your site — footer badges, product page widgets, and checkout — to drive conversion at every stage.

02
Widget setup

Step-by-step instructions for adding the BNPL widget to your storefront, with guides for Shopify and other platforms.

03
Marketing assets

Approved logos, email and SMS templates, and social media posts — everything you need to go to market from day one.

04
Customer FAQs

Pre-written answers for common customer questions, ready to paste into your FAQ page, support docs, or live chat.

01 — Promotion

Place BNPL where it drives conversion

Introduce Stitch BNPL at every stage of the purchase journey — from browsing to payment. Each placement reinforces availability and removes hesitation.

02 — Widget setup

Add the BNPL widget to your store

Embed the BNPL widget on your product pages in minutes. Choose your platform below for specific instructions.

1
Find your product template
In your Shopify admin, go to Online Store → Themes → ⋯ → Edit code. Open your product template — typically main-product.liquid, product-template.liquid, product-information.liquid, or product.liquid. Search for {{ product.price }} to find the right location.
2
Add the widget code below the price
Liquid
<div id="stitch-bnpl-widget"></div>
<script>
  window.StitchBNPLConfig = {
    mountSelector: '#stitch-bnpl-widget',
    price: {{ product.selected_or_first_available_variant.price | divided_by: 100.0 }},
    minimumAmount: 100,
    logoBg: 'purple',
    width: '100%',
    locale: 'en-ZA',
    currency: 'ZAR'
  };
</script>
<script src="https://express.stitch.money/js/bnpl-widget.v1.js"></script>
<script>
  document.addEventListener('variant:change', function(e) {
    if (e.detail?.variant)
      window.StitchBNPL.setPrice(e.detail.variant.price / 100);
  });
</script>
Shopify stores prices in cents — R1,200 is stored as 120000. Always use divided_by: 100.0 in the Liquid tag, and divide by 100 in the variant:change listener.
3
Save and preview
Click Save and open your store. The widget should appear below the product price with no console errors. Switch variants to confirm the instalment amount updates correctly.
1
Add the widget HTML
Place this snippet below your product price element. Replace 1999.99 with the actual product price in Rands from your platform's template engine.
HTML
<div id="stitch-bnpl-widget"></div>
<script>
  window.StitchBNPLConfig = {
    mountSelector: '#stitch-bnpl-widget',
    price: 1999.99,       // replace with dynamic price in Rands
    minimumAmount: 100,
    logoBg: 'purple',
    width: '100%',
    locale: 'en-ZA',
    currency: 'ZAR'
  };
</script>
<script src="https://express.stitch.money/js/bnpl-widget.v1.js"></script>
2
Handle variant or option changes
When the selected product variant changes, call window.StitchBNPL.setPrice(newPrice) — price must be in Rands, not cents.
JavaScript
// Call this whenever the selected variant changes
window.StitchBNPL.setPrice(newPriceInRands);
3
Alternative: auto-read from a page element
If your price is already rendered in a DOM element, use data attributes to let the widget read it automatically.
HTML
<div id="stitch-bnpl-widget"></div>
<script
  src="https://express.stitch.money/js/bnpl-widget.v1.js"
  data-mount="#stitch-bnpl-widget"
  data-price-selector=".your-price-element"
  data-minimum-amount="100"
  data-logo-bg="purple"
></script>
SettingDefaultDescription
pricenullProduct price in Rands (required)
minimumAmount100Hide the widget when the price is below this value
logoBg'purple'Logo colour variant: 'purple', 'white', or 'black'
backgroundColor'#F2F2F2'Widget container background colour
textColor'#100E13'Primary text colour
highlightColor'#000000'Instalment amount colour
width'100%'Widget width (CSS value)
installments6Number of instalments displayed
locale'en-ZA'Locale for number and currency formatting
currency'ZAR'ISO 4217 currency code
Widget doesn't appear
  • Product price must be above R100 (the minimumAmount).
  • The widget mount element must exist in the DOM before the script loads.
  • Open the browser console and check for JS errors.
Wrong amount (Shopify)
  • Shopify stores prices in cents — R1,200 = 120000.
  • Always use divided_by: 100.0 in your Liquid tag.
  • Add the variant:change listener and divide by 100 there too.
Widget shows R0.00
  • The data-price-selector isn't finding the price element.
  • Inspect the page source and verify the selector matches exactly.
  • Try the manual StitchBNPLConfig.price approach instead.
Doesn't update on variant change
  • On Shopify: add the variant:change listener after the script loads.
  • On other platforms: call setPrice() in your variant-change handler.
  • Confirm the price is in Rands, not cents.

03 — Marketing assets & copy

Everything you need to go to market

Approved logos, ready-to-send email and SMS templates, and social posts — all on-brand and available from day one.

Brand usage rules

  • Use only the provided logo files — do not recreate, stretch, or recolour.
  • Minimum clear space on all sides = the height of the logo's "S" icon.
  • Use the violet logo on light backgrounds and white logo on dark backgrounds. Use the black logo if all other 3rd party logos also appear in black.
Launch SMS / push
Introducing Stitch BNPL! Now pay your way, over time — in 2–6 easy monthly instalments. Always interest-free. You deserve it! Try it now → [link]
Reminder SMS / push
Have you tried Stitch BNPL? Pay in easy, flexible monthly instalments — always interest-free. Shop today and pay over time. Try it now → [link]

Best practice tips

  • Send the launch message on your BNPL go-live day for maximum impact.
  • Link directly to a product page — not the homepage.
  • Follow up with the reminder 3–5 days after launch.
Social post — Find the right fit
Find the right fit. Pay in 2–6 interest-free instalments with Stitch BNPL.
Social post — Who said good things don't come easy?
Who said good things don't come easy? Flexible payments. No interest. No fees.
Social post — Easy as 1 to 6
Easy as 1 to 6. Split your order into interest-free monthly instalments with Stitch BNPL.
Social post — No interest, in your best interest
No interest, in your best interest. Flexible payments with Stitch BNPL.

04 — Customer FAQs

Answers for your customers

Each answer includes suggested copy you can use directly in your own FAQs, support pages, or live chat responses.

Stitch performs a soft eligibility check when you create your profile — this doesn't affect your credit score. You'll complete a quick selfie verification and your spending limit will be set based on your credit profile. No separate application or hard inquiry is required.

Suggested copy

"A spending limit is set based on your credit profile — this check won't affect your credit score."

Yes — completely. You pay exactly the order total, split into equal instalments. No interest, no finance fees, and no penalty for paying on time.

Suggested copy

"Stitch BNPL is always interest-free. You pay exactly what you see in your cart — split into equal monthly instalments."

There are no sign-up or admin fees. If a scheduled payment is missed, a late fee may apply — this is always displayed clearly before you confirm your order. Stitch will notify you before retrying any failed payment.

Suggested copy

"There are no sign-up or admin fees. If a payment is missed, a late fee may apply — you'll always see this clearly at checkout."

You choose to pay in 2–6 equal monthly instalments. The first instalment is paid at checkout; remaining instalments are charged automatically each month. You can view and manage all your plans in the Stitch BNPL dashboard.

Suggested copy

"Choose to pay in 2–6 equal monthly instalments — the first is paid today, and the rest are charged automatically."

The widget is hidden for orders below R100 by default (this threshold is configurable). There's no fixed maximum — your approved spending limit is set when you first sign up for Stitch BNPL at checkout.

Suggested copy

"Stitch BNPL is available on eligible orders above R100. Your approved spending limit is set when you first sign up at checkout."

Stitch will notify you via email and SMS if a payment fails, and will retry after a grace period. You can update your card details in the dashboard at any time. A late fee applies if the payment remains unresolved. Importantly, merchants are paid in full at the time of purchase — Stitch absorbs the risk of missed payments.

Suggested copy

"If your payment fails, we'll let you know right away and give you time to sort it out before retrying."

Start by raising the issue with the merchant through their standard returns or complaints process. If it's unresolved, contact Stitch BNPL support — they can pause future instalments while the dispute is under review.

Suggested copy

"For any issues with your order, contact us first. If needed, Stitch BNPL support can pause your upcoming payments while the issue is being reviewed."

Stitch BNPL can be used across hundreds of stores in South Africa, with more added daily. Customers can view all their active repayment plans and browse participating stores directly from their Stitch BNPL dashboard.

Suggested copy

"Stitch BNPL can be used across hundreds of stores in South Africa, with more added daily. Log in to your dashboard to manage all your plans."