Ortica
Let’s talk ↗

Node.js development

The part you don’t see.
The part that holds it all up.

We build Node.js backends in TypeScript: APIs, integrations with ERPs and business software, automations and processes that run on their own. The hidden side of web apps, SaaS and ecommerce, written so that another developer can read it.

  • Node.js
  • TypeScript
  • PostgreSQL
  • Docker
What we do with Node.js

Data that leaves.
And gets where it should.

  1. 01

    Custom APIs.

    Documented REST APIs for web apps, mobile apps and partners, with authentication, permissions and rate limits.

    • REST
    • OpenAPI
    • Authentication
  2. 02

    Integrations.

    ERPs, CRMs, ecommerce, payments and external services connected to each other. When a system has no API we find another way: scheduled files, webhooks, queues.

    • ERP
    • CRM
    • Webhooks
  3. 03

    Automations and scheduled jobs.

    Price list imports, periodic syncs, PDFs and emails generated on their own. With job queues that retry when something fails and a log of what happened.

    • Queues
    • Cron
    • PDF
  4. 04

    Backends for web apps and SaaS.

    Accounts, roles, subscriptions, notifications and all the product logic, on PostgreSQL and with Payload CMS when you need an admin panel.

    • PostgreSQL
    • Payload CMS
    • Payments
  5. 05

    Projects to take over.

    Node backends stuck on old versions, with no tests or documentation: we read them, upgrade them step by step and put them on a tidy deploy.

    • Upgrades
    • Documentation

What we work with

Custom APIsIntegrationsAutomations and scheduled jobsBackends for web apps and SaaSProjects to take over
Node.jsTypeScriptPostgreSQLDocker
Sound familiar?

Data copied by hand.
Systems that talk.

Today

  • Orders retyped from the shop into the ERP
  • Price lists updated by hand every month
  • A spreadsheet bouncing from email to email
  • Scripts only one person knows how to run

After

  • Orders that flow on their own, with a log
  • Price lists imported automatically
  • One source of data, with the right permissions
  • Documented processes, with alerts when something stalls
What we look after

You judge a backend
when something goes wrong.

  1. 01

    Handled errors.

    Every integration knows what to do when the other system doesn’t answer: retry, alert, never lose data.

  2. 02

    Security.

    Input validated on the way in, permissions checked on every request, keys and secrets kept out of the code.

  3. 03

    Servers and deploys.

    Containers, automated deploys, a test environment and backups: we look after the server side.

FAQ

What we often get asked
about Node.js.

How much does a Node.js backend cost?

It depends on what it has to do: an integration between two systems and the backend of a SaaS are very different jobs. Integrations and automations on existing systems are estimated once we’ve seen the APIs involved. Either way, we send you a written quote.

Why Node.js and not another language?

Because with TypeScript we use the same language in the browser and on the server: fewer hand-offs, fewer errors and a project that’s easier to pass on. On WordPress, PrestaShop and Magento we still work in PHP, because that’s the right choice there.

Can you connect our ERP to our online shop?

Yes, if the ERP exposes an API or allows data exchange, even through files. Before estimating we check what it offers, so we know how much work the integration takes.

Where does the backend run?

On our servers, on a cloud you already use or on your infrastructure. Either way we set up a test environment, automated deploys and monitoring with alerts: more on the servers and DevOps page.

Can you take over a Node backend written by others?

Yes. We read the code, dependencies and infrastructure, then tell you what to keep, what to upgrade and what to rewrite.

Next serviceUI and UX design Interfaces, prototypes and design systems in Figma, designed by the people who then build them: no surprises between design and code.
The next project

Systems that don’t talk?
Let’s connect them.

Tell us which tools you use and where the data gets stuck.

Let’s talk