HomeAdd a widgetSquarespace
Add an online store to Squarespace
Sell something from Squarespace without migrating the site onto an e-commerce platform. One widget is one purchasable thing, checkout runs on Stripe, and the money goes to your own Stripe account.
Free plan, no card. Paid plans start at $19 a month.
Why do it this way on Squarespace
Squarespace gates commerce behind its own plan ladder, so a site that only needs to sell one thing can end up paying for a store it does not use. A Code Block on the Core plan and your own Stripe account is the smaller version of that: one product, one button, money into the Stripe account you already have. Set the block’s Type to HTML so the script actually runs.
See it working
This is a real Sorraia shop widget — our own sample product, embedded here exactly the way you would embed yours. Checkout is switched off on this one: click Buy and you will get “This shop is not ready to accept payments yet.” instead of a Stripe page. Everything up to that point is the live product.
How to add an online store to Squarespace
A widget that sits in the page flow goes in a Code Block on that page. The block menu labels it “Code”; everyone, Squarespace’s own docs included, calls it a Code Block.
The tiers are now Basic, Core, Plus and Advanced — previously Personal, Business, Commerce Basic and Commerce Advanced. Code Blocks exist on every plan, but Squarespace treats JavaScript inside one as a premium feature available on Core and above, and gates Code Injection the same way. There is no way to run a third-party widget on Basic. The 14-day trial does include the premium custom-code features, so you can test the widget before you buy — trial sites simply are not indexed by search engines. Downgrading later does not delete your code, but it does stop working; Squarespace does not document whether the block goes inert or starts printing the snippet as text, so check the live site after any plan change.
In Sorraia, add the website and verify it — a DNS TXT record, or a meta tag in your homepage’s <head>. Verification is what lets you attach a widget to that site, so it comes before there is anything to paste.
Save the product and the Copy Embed Code popup appears; the Install wizard on the product’s row on the Shop page does the same with a verification step.
Check the plan first. JavaScript in a Code Block needs Core, Plus or Advanced (or a legacy Business / Commerce plan). On Basic it will not run.
Edit the page, hover the section, click Add block or the + icon, and choose Code.
Click the pencil icon on the block and set the Type menu to HTML — not JavaScript. This is the step people get wrong: Squarespace prints a JavaScript-typed block on the page as visible text rather than running it.
Paste the Sorraia snippet, script tags included, and leave Display Source unchecked. Save.
Open the live site in a private window to check. While you are logged in, Squarespace disables embedded scripts and shows a “this block contains embedded scripts” notice where the widget should be.
Then the Type menu is on the wrong option. Squarespace force-locks Display Source on for the CSS, JavaScript and Plain Text types, which is exactly the trap — the intuitive choice for a script is “JavaScript”, and it is the one that will not run. Set Type to HTML and the checkbox becomes editable.
What you get
Sell something from Squarespace without migrating the site onto an e-commerce platform. One widget is one purchasable thing, checkout runs on Stripe, and the money goes to your own Stripe account.
Three ways to charge
A widget is a flat-price Buy Now, a pay-what-you-want donation where the customer sets the amount, or a recurring monthly or yearly subscription. You pick per widget, so a one-off product and a membership can live on the same site.
Three ways to fulfil
Digital emails a signed download link once Stripe confirms payment — the link is good for 24 hours. Physical collects a shipping address at checkout and applies one flat shipping rate, and you mark it shipped. Service skips fulfilment entirely and just tells you the sale happened.
Checkout is Stripe, and the account is yours
Payment runs as a direct charge on your own connected Stripe account, so payouts, disputes, receipts and tax settings stay in the Stripe dashboard you already use — we never hold your money in between. Sorraia takes a platform fee on top, deducted as a Stripe application fee: 2% on Free, falling to 1.5% on Starter, 1% on Growth, 0.5% on Business and 0.25% on Enterprise. Eight currencies are supported.
Orders and refunds in the dashboard
Orders land in Sorraia with the customer, the amount and the site they came from, filterable and exportable like every other list. Refunds are issued from the same place.
More detail in the Help Center: Shop basics · Embedding on your website
Things worth knowing about Squarespace
- Squarespace disables embedded scripts while you are logged in and editing, replacing the block with a notice. A working widget therefore looks dead to the site owner. Verify in a private window or via Preview in Safe Mode.
- The Code Injection panel moved out of Settings → Advanced into Website → Pages → Custom Code. Older tutorials will send you scrolling through a Settings menu that no longer has it.
- Use a Code Block only for a widget that should occupy space in the layout. A block containing a script that draws nothing in place still takes up vertical room and leaves a visible gap, most noticeably in Fluid Engine sections.
- Footer is the safer of the two Code Injection fields for a launcher, because the page already exists when the script runs. Header is not inherently slower — an async or defer tag there does not block first paint — but a synchronous snippet in Header will delay it.
Questions
Do I need my own Stripe account?
Yes, and that is deliberate. Checkout is a direct charge on your connected Stripe account, so customers pay you and your payouts, disputes, receipts and tax configuration stay in the Stripe dashboard you already control — Sorraia never holds your revenue in between. Our platform fee rides along as a Stripe application fee, from 2% on Free down to 0.25% on Enterprise, so you can see exactly what it is on every charge.
Can I sell a subscription, or take donations?
Both. Each shop widget is set to one of three types — a flat-price one-off, a donation where the customer chooses the amount, or a recurring subscription billed monthly or yearly. Different products on the same site can use different types.
Which Squarespace plan do I need to add a widget?
Core or higher. Code Blocks appear on every plan, but Squarespace only allows JavaScript inside one on Core, Plus and Advanced (and on the legacy Business and Commerce plans), and Code Injection has the same gate. On Basic the block accepts plain HTML, Markdown and CSS but will not run a script. Squarespace’s 14-day trial does include the premium custom-code features, so you can test the widget before you buy — trial sites just are not indexed by search engines.
I pasted the code and the block says “embedded scripts are disabled”. Is it broken?
No — that is Squarespace protecting you from your own scripts while you edit. Visitors see the widget; you do not, because you are logged in. Open the live URL in a private or incognito window and it will be there.
My code prints on the page as text instead of running. What happened?
The Code Block’s Type menu is set to JavaScript. Squarespace renders the CSS, JavaScript and Plain Text types as visible source by default, and force-locks the Display Source checkbox on for them — which is why you cannot untick it. Set Type to HTML, keep the script tags around the snippet, and untick Display Source.
Add an online store to Squarespace
Build it in Sorraia, paste one line into your Squarespace site, and change it later without touching the embed again.