Stripe payments
Connect your Stripe account, decide when storefront baskets require payment, and see what customers experience at checkout.
Written By Bram Fofana
Last updated About 3 hours ago
Stripe lets you collect card payment on storefront baskets through a Stripe-hosted checkout page. You connect your own Stripe account. Salesbuildr does not process payments on your behalf.
This article covers enabling Stripe, when payment is required, what the customer sees, how a regular quote differs from a storefront basket, and how to fix webhook problems.
Storefront add-on required. The Stripe tile appears on Settings > Integrations only after Storefront is enabled for your account. Storefront is not included in the standard Salesbuildr plan. If you do not see the tile, contact your Salesbuildr account manager.
Enable Stripe
You need a tenant administrator account.
Go to Settings > Integrations > Manage.
Find the Stripe tile. It shows a Disabled badge until you turn it on.
Click Configure.
Turn on Enable.
Enter your Stripe API Key (your Stripe secret API key from the Stripe Dashboard). The field is masked.
Click Save.
The tile badge changes to Enabled. Saving with Stripe enabled creates a webhook in your Stripe account that points at your Salesbuildr site, so completed checkouts can update the order automatically.
If you save the same API key again, or you enter a key while Enable is still off, Salesbuildr may skip creating the webhook. In that case, open the Webhooks tab and create it yourself — see Troubleshoot webhooks.
After Stripe is enabled, Settings > Integrations > Stripe appears in the sidebar with a Webhooks tab.
Confirm the webhook
Go to Settings > Integrations > Stripe > Webhooks.
When the webhook is installed, the table shows:
URL — the Salesbuildr address Stripe calls after a payment
Events —
checkout.session.completed,payment_intent.processing,payment_intent.succeeded,payment_intent.payment_failed, andpayment_intent.canceled
If the page shows No webhook setup, click Create new webhook. Salesbuildr registers the endpoint and stores the signing secret for you.
You do not create this webhook by hand in the Stripe Dashboard. Use the buttons on this tab so the URL and secret stay in sync.
When a customer must pay
There is no “require payment before approval” toggle on Settings > Quotes > Configuration. That page sets defaults such as the default payment term and how quotes look. Payment terms and Payment types (for example Net 30 or Bank transfer) describe how you invoice. They do not start a Stripe checkout.
Stripe checkout is required only on a storefront basket, and only when all of the following are true:
Stripe is enabled and has an API key.
The person placing the order is a customer, not a quote manager on your team.
The one-time items in the basket add up to more than the company’s credit limit.
Set the credit limit
Salesbuildr uses the first numeric limit it finds:
Max credit limit on the company (Manage Company on the company record). See Companies.
If the company has no limit, the tenant default at Settings > Financial > Pricing Rules > Max credit limit. See Financial.
Leave both empty (unlimited) if you do not want Stripe to block checkout. Then customers can place storefront orders without paying in Salesbuildr.
Only one-time line items count toward the limit. Recurring and subscription items are invoiced separately and are not charged in Stripe.
If payment is required but Stripe is not enabled, the customer cannot Place Order and cannot Proceed to Payment. Enable Stripe before you rely on credit-limit payment.
Your team (quote managers) can still place or approve a basket without paying.
What the customer sees
On the storefront checkout (basket overview):
They confirm company, PO number, terms, and any required signature or documents.
If payment is not required, the button is Place Order.
If payment is required, the button is Proceed to Payment. A tooltip explains that payment is for one-time charges and that recurring cost is invoiced separately.
They are sent to Stripe’s checkout page to pay.
The basket status becomes Pending payment until Stripe confirms the payment.
While payment is in progress, a Payment Summary section appears on the basket:
Continue payment — shown while the Stripe checkout session is still open. It reopens the same Stripe page.
Payment Completed — shown after Stripe confirms the payment and Salesbuildr has processed it.
If they close the Stripe tab, they can return to the basket and click Continue payment (or use the original checkout link) as long as the session is still open.
Stripe checkout sessions expire 24 hours after they are created. An expired link opens Stripe’s “This payment link has expired” page, and Continue payment is hidden. Ask the customer to reload the basket page so Salesbuildr can create a new session, then click Continue payment again.
After a successful payment and a working webhook, the order moves forward (typically to Approved, or to the next approver if a workflow is still open). If you configured a thank-you page on the quote, Stripe can send them there after payment.
Card declines stay on Stripe’s page. The basket remains Pending payment until a payment succeeds.
Regular quotes versus storefront baskets
A storefront basket is still a quote in your quotes list. You can track it, audit it, and sync it like any other approved quote.
Partial payments and deposits
Stripe in Salesbuildr collects the full one-time amount in one checkout (including shipping and tax when those apply). You cannot:
Take a partial payment or deposit through Stripe
Split one basket across multiple card charges
Charge only recurring lines through Stripe
Recurring items stay off the Stripe invoice and are billed later. Leasing down payment on a quote is a leasing calculation setting, not a Stripe deposit — see Leasing.
Troubleshoot webhooks
Salesbuildr marks a basket paid only when Stripe can reach your webhook. There is no background check that looks up the payment later. If the card was charged but the basket stays Pending payment, fix the webhook.
Go to Settings > Integrations > Stripe > Webhooks.
You can also click Delete webhook if you need to remove the endpoint, then Create new webhook to start clean.
In the Stripe Dashboard, failed deliveries on the webhook endpoint usually mean the URL is stale or the signing secret no longer matches. Reinstalling from Salesbuildr is the supported fix.
Other checkout issues
Stripe tile is missing — Storefront is not enabled for the tenant. Contact your account manager.
Saving Configure shows a Stripe error — the API key was rejected. Paste a valid secret API key from the Stripe Dashboard and save again.
Currency error when checkout starts — the basket currency must be one your Stripe account accepts. Change the currency on the quote or enable that currency in Stripe.
Session expired — reload the basket, then Continue payment.
See also
Storefront — Self-service catalog, basket, and checkout
Integrations — All integrations
Financial — Tenant Max credit limit
Companies — Per-company Max credit limit
Quotes — Payment terms, payment types, and quote configuration