DEV.co
Open-Source Ecommerce · netlify

gocommerce

GoCommerce is a headless e-commerce API built in Go that handles orders and payments for static JAMstack sites. It integrates with Stripe and PayPal, supports VAT calculations, and requires product metadata embedded in static HTML pages.

Source: GitHub — github.com/netlify/gocommerce
1.6k
GitHub stars
214
Forks
Go
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorynetlify/gocommerce
Ownernetlify
Primary languageGo
LicenseMIT — OSI-approved
Stars1.6k
Forks214
Open issues21
Latest releasev1.9.1 (2019-11-12)
Last updated2025-07-11
Sourcehttps://github.com/netlify/gocommerce

What gocommerce is

A Go-based microservice exposing REST APIs for order/payment processing with pluggable database backends (SQLite, MySQL, PostgreSQL), JWT authentication, webhook support, and client-side price verification against server-side VAT rules. Deployable to any Go 1.11+ runtime.

Quickstart

Get the gocommerce source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/netlify/gocommerce.gitcd gocommerce# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Static site e-commerce (JAMstack)

Ideal for selling digital products or goods from static-generated sites where you need a lightweight, decoupled payment backend without a monolithic CMS.

Multi-region sales with VAT compliance

Built-in support for per-country and per-product-type tax rules, making it suitable for EU or international digital goods sales requiring VAT verification.

Netlify-integrated deployments

Designed for Netlify environments with native download provider support and operator token authentication, reducing friction for Netlify-hosted static sites.

Implementation considerations

  • Product metadata must be embedded in static HTML pages as JSON script tags; client-side checkout library (commerce-js v5.0.0+) is required for smooth UX.
  • Database selection (SQLite for dev, MySQL/PostgreSQL for production) and migrations must be configured upfront; auto-migration can be enabled but requires careful schema management.
  • JWT secret and payment provider credentials (Stripe/PayPal API keys) must be securely injected as environment variables; no built-in secret rotation.
  • Email delivery requires external SMTP configuration; order confirmation and admin notifications are optional but recommended.
  • Coupon and VAT rules are loaded from external JSON endpoints on your static site, requiring dual client-side and server-side validation logic.

When to avoid it — and what to weigh

  • Active feature development needed — Last release was v1.9.1 (November 2019); no new features documented since then. If you need ongoing enhancements, this may not be the right fit.
  • Complex inventory or fulfillment workflows — GoCommerce is transaction-focused (orders + payments). It lacks built-in inventory management, warehouse integration, or fulfillment tracking.
  • Managed SaaS expectation — This is a self-hosted backend. You are responsible for deployment, scaling, database management, and operational overhead—not a turnkey service.
  • High-security PCI compliance mandates — While it integrates payment processors (Stripe/PayPal), you must vet deployment security and TLS/authentication setup yourself; no security audit data provided.

License & commercial use

Released under MIT License. Permits commercial use, modification, and distribution with inclusion of the license and disclaimer. No warranty or liability provided by licensor.

MIT is a permissive OSI-approved license compatible with commercial deployment. You may sell products and services built on GoCommerce without royalty. However, audit the full MIT terms and ensure your use of dependencies (Go modules) complies with their licenses. No trademark or support guarantees are implied.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceModerate
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

GoCommerce handles payment tokens via Stripe/PayPal, not directly. Server-side VAT and order verification mitigates tampering. Requires: secure environment variable management for secrets, HTTPS enforcement, JWT secret rotation policy, database access controls, and webhook signature validation. No public security audit or CVE history data provided; self-hosted deployment requires your security hardening.

Alternatives to consider

Shopify

Fully managed SaaS with inventory, fulfillment, marketing tools, and PCI compliance handled. Higher cost; less control over checkout UX and customization.

Saleor (GraphQL)

Headless e-commerce API written in Python/GraphQL. More actively maintained, richer features (inventory, webhooks, multi-tenant), larger ecosystem. Steeper operational complexity.

Commerce.js / Chec

Headless commerce platform-as-a-service with built-in inventory, payments, and managed infrastructure. SaaS pricing; less self-hosting control.

Software development agency

Build on gocommerce with DEV.co software developers

GoCommerce offers a headless, self-hosted approach to payments and orders. Review deployment requirements, database setup, and security hardening before proceeding.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

gocommerce FAQ

Do I need to host a database?
Yes. GoCommerce requires a database backend (SQLite for local dev, MySQL or PostgreSQL for production). You are responsible for provisioning, backups, and scaling.
Does GoCommerce handle inventory or stock management?
No. GoCommerce is order and payment focused. Inventory tracking must be managed separately or integrated via webhooks into your backend.
Can I use this with Shopify or Stripe standalone?
No. GoCommerce is a custom backend for your own static site. Stripe and PayPal are payment processors it delegates to; you are not replacing them.
Is there ongoing support or maintenance?
Unknown. The project is not archived, but no active feature roadmap or official support channel is documented. Community issues are tracked but response time is not guaranteed.

Custom software development services

From first prototype to production, DEV.co delivers software development services around tools like gocommerce. Our software development agency staffs experienced software developers and web developers for custom software development, web development, integrations, and ongoing support across open-source ecommerce and beyond.

Ready to Add E-commerce to Your JAMstack Site?

GoCommerce offers a headless, self-hosted approach to payments and orders. Review deployment requirements, database setup, and security hardening before proceeding.