Modern web and mobile development set high demands on both businesses and developers: rapid delivery of unique solutions, seamless implementation of custom logic, and straightforward management of the final product.In such a context, the standard functionality of even the most flexible Headless CMS may fall short — after all, every application reflects the specifics of the business and often requires non-standard logic.
Our team faced the same challenge: how to preserve the flexibility and scalability of applications without overloading the platform with unnecessary features.We chose a modular approach and developed our own mechanism for creating and integrating custom modules. This allows you to implement tailored business logic in the form of standalone modules, integrate them into the OneEntry platform, and make them available directly inside your application as part of its core functionality. At the same time, centralized management is retained through OneEntry, and the application continues to run reliably — with no need to rebuild its architecture or modify the core data and integration structure.
In this way, custom modules become a natural extension of the OneEntry platform: they enable businesses and developers to flexibly expand functionality, implement custom workflows quickly, and automate critical processes — all without limitations imposed by the core system and without wasting time on architectural rework.
Benefits of OneEntry Custom Modules
Simple deployment: Launch your own service in just a few steps
Automated integration: Modules connect with the platform automatically
Multi-platform support: Compatible with Python, Node.js, and PHP
Scalability & customization: Tackle any unique business logic or workflow
Imagine you need to automatically convert prices from USD to EUR for the French version of your site, hide specific products from users in certain regions, or launch a custom promotion based on specific conditions — like a particular date or a number of items in the cart.
Instead of implementing these scenarios manually, you can handle them using a custom module.
Technical Example: How to Create and Deploy a Custom Module in OneEntry
Let’s walk through a real-world use case that demonstrates how custom modules work in OneEntry — using a service that automatically converts product prices from USD to EUR with the help of the currencyfreaks.com API.
Say you want French users to see prices in euros, while the English version of your site shows prices in dollars. Instead of configuring this manually or building a complex external integration, you can solve the problem with a custom module.
Here’s a step-by-step guide:
Step 1: Setting Access Permissions
First, make sure the developer account has the required access rights.
In the OneEntry admin panel:
Go to the Administrators section
Select the appropriate user account (e.g.,
developer_admin
)In the Module Permissions tab, enable the permission for editing products
Step 2: Preparing the Repository
You’ll need a Git repository with an example of the custom module.
- Create a release tag, for example:
git tag prod-v1.0.15
git push origin prod-v1.0.15
Wait for the container build process to complete
Copy the container image URL from the registry
Step 3: Deploying the Custom Module in OneEntry
Now you can proceed to add the module through the OneEntry interface.
Specify the module name and marker
Paste the previously copied container image URL
Enter the registry host
Create a deployment token:
In Git, create a new token with the Developer role and permissions to read from the registry
Paste the token into the corresponding field in the OneEntry interface
DEVELOPER_API_HOST=https://testst.oneentry.cloud
BASE_CURRENCY=USD
SYNC_CURRENCY=EUR
SYNC_CURRENCY_LANG=fr_FR
ATTRIBUTE_SET_MARKER=video
PRICE_ATTRIBUTE_MARKER=price
DEVELOPER_LOGIN=developer_admin
DEVELOPER_PASSWORD=lR8lUv7XTr
API_KEY=your_api_key
Step 4: Launch and Monitoring
Once all fields are filled out:
Click “Create” to add the module
Then click “Deploy” and wait until the status changes to Running
After the module is running, you can:
Monitor logs
Edit environment variables directly in the interface, if needed
Verifying the Result
Once the module is active, you can check how it works in practice.
For example, in a product card under the Attributes tab:
In the English version, the price is displayed in USD
When switching to the French version, the price automatically appears in EUR
Module Logic Example
Below is a simple Node.js script that performs price conversion using the currency API:
const axios = require('axios');
async function convertPrice(priceInUSD) {
const API_KEY = process.env.API_KEY;
const response = await axios.get(`https://api.currencyfreaks.com/latest?apikey=${API_KEY}`);
const rate = response.data.rates['EUR'];
return priceInUSD * parseFloat(rate);
}
module.exports = { convertPrice };
What this code does:
Sends a request to the currencyfreaks.com API
Retrieves the current USD to EUR exchange rate
Returns the converted price
This example demonstrates how narrowly focused business logic can be integrated into the OneEntry platform and become a part of the overall application architecture — without rewriting core code and with full control through the admin panel.
How OneEntry supports custom modules — compared to other platforms
To better understand how OneEntry’s approach stands out from other solutions on the market, we’ve prepared a comparison of custom module capabilities across popular Headless CMS and Backend-as-a-Service platforms:
Why It Matters
Support for custom modules isn’t just a technical feature — it’s a key component of flexibility.
With OneEntry, a module can be quickly connected to the platform and securely integrated into the application’s business logic — with full control through the admin interface.
By using custom modules in OneEntry, you gain:
The ability to implement unique functionality tailored to specific needs
A tool for automating critical business processes
Flexibility to integrate third-party APIs and services — without rewriting your core code
This not only reduces the development workload but also increases your business’s ability to adapt to new challenges.
Explore the detailed documentation on custom modules:
https://doc.oneentry.cloud/docs/settings/custom_modules
Every developer and product manager working on web applications eventually encounters the limitations of the platform they’re building on. Standard solutions often fall short when it comes to addressing specific business requirements or keeping up with rapidly changing market demands. At OneEntry, we’ve understood these challenges from day one — which is why our platform was designed with full flexibility and extensibility in mind.
Top comments (0)