{"id":238,"date":"2026-07-11T14:16:04","date_gmt":"2026-07-11T14:16:04","guid":{"rendered":"https:\/\/dev.netforge.ro\/platforms-2\/"},"modified":"2026-07-11T14:16:04","modified_gmt":"2026-07-11T14:16:04","slug":"platforms","status":"publish","type":"page","link":"https:\/\/dev.netforge.ro\/en\/platforms\/","title":{"rendered":"Custom Portals &#038; Platforms"},"content":{"rendered":"<div class=\"et_pb_section_0 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_0 et_pb_row et_flex_row\"><div class=\"et_pb_column_0 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_0 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><style>.et_pb_section.et_section_regular{padding:0;background:transparent;width:100%;max-width:none;margin:0}.et_pb_section .et_pb_row{padding:0;margin:0;width:100%;max-width:100%}.et_pb_section .et_pb_column{padding:0;margin:0;width:100%}.et_pb_section .et_pb_code{margin:0}<\/style><section class=\"page-hero\">\n  <div class=\"container\">\n    <div class=\"breadcrumb\"><a href=\"\/en\/\">NetForge<\/a> \/ Platforms \/ Custom portals<\/div>\n    <h1>Portals and platforms <span style=\"color:var(--nf-brand-orange);\">built around your processes.<\/span><\/h1>\n    <p>When spreadsheets stop coping and SaaS products force you to work by rules that don't fit your operation, we build the back-office platform you actually need.<\/p>\n    <p>Records, orders, documents, approvals and internal workflows \u2014 all brought together in one system built around how your company works.<\/p>\n    <p>The platform can be hosted on your infrastructure or managed by us, and the code, the data and control over the system remain your property.<\/p>\n  <\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_1 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_1 et_pb_row et_flex_row\"><div class=\"et_pb_column_1 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_1 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><section>\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <div class=\"eyebrow\" style=\"justify-content:center;\">Case study<\/div>\n      <h2>A complete back-office platform for an international insurance broker.<\/h2>\n    <\/div>\n    <p style=\"max-width:720px;margin:0 auto 40px;text-align:center;\">We built the system the team manages its entire portfolio in \u2014 clients, policies, claims, documents and financial reporting \u2014 from a single interface. The platform includes role-based access, a complete activity log and a direct connection to a document archive of over 1 TB.<\/p>\n    <div style=\"display:grid;grid-template-columns:repeat(3,1fr);gap:20px;\">\n      <div class=\"card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"\/><circle cx=\"9\" cy=\"7\" r=\"4\"\/><path d=\"M23 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75\"\/><\/svg><\/div>\n        <h3 style=\"font-size:1.125rem;\">Clients &amp; policies<\/h3>\n        <p style=\"font-size:.9375rem;\">Centralized administration for individuals and companies, with multiple addresses, authorised persons and the complete history of the relationship with each client.<\/p>\n        <p style=\"font-size:.9375rem;\">The platform covers the full policy lifecycle: issuance, renewal, remarketing, commission and broker fee.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M9 12h6M9 16h6M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z\"\/><path d=\"M13 2v7h7\"\/><\/svg><\/div>\n        <h3 style=\"font-size:1.125rem;\">Claims with detailed financial records<\/h3>\n        <p style=\"font-size:.9375rem;\">Each claim file includes own and third-party losses, recoveries, salvage values, excesses, assessor fees and payments made.<\/p>\n        <p style=\"font-size:.9375rem;\">The team tracks not just the status of the file, but every financial value that matters.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z\"\/><\/svg><\/div>\n        <h3 style=\"font-size:1.125rem;\">A document archive of over 1 TB<\/h3>\n        <p style=\"font-size:.9375rem;\">The document management system is natively integrated with S3 storage and connects the existing archive without a full migration.<\/p>\n        <p style=\"font-size:.9375rem;\">Users can browse, search and download documents, generate expiring share links and create per-client ZIP archives.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"11\" cy=\"11\" r=\"8\"\/><path d=\"m21 21-4.35-4.35\"\/><\/svg><\/div>\n        <h3 style=\"font-size:1.125rem;\">Unified search<\/h3>\n        <p style=\"font-size:.9375rem;\">OpenSearch provides typo-tolerant search across clients, policies, claims, notes and files, with filters by status, city and insurer.<\/p>\n        <p style=\"font-size:.9375rem;\">Messages in .eml and .msg formats can be previewed right in the browser.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M3 3v18h18\"\/><path d=\"m7 15 4-6 4 3 5-8\"\/><\/svg><\/div>\n        <h3 style=\"font-size:1.125rem;\">Commissions &amp; reporting<\/h3>\n        <p style=\"font-size:.9375rem;\">The platform generates monthly and annualised commission reports for sub-agents, along with management dashboards, KPIs and charts.<\/p>\n        <p style=\"font-size:.9375rem;\">Access is enforced at the API level, so each agent sees only the portfolio allocated to them.<\/p>\n      <\/div>\n      <div class=\"card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\"\/><path d=\"M7 11V7a5 5 0 0 1 10 0v4\"\/><\/svg><\/div>\n        <h3 style=\"font-size:1.125rem;\">Audit &amp; incident recovery<\/h3>\n        <p style=\"font-size:.9375rem;\">Every action is recorded together with the user, IP address and device information.<\/p>\n        <p style=\"font-size:.9375rem;\">The database is backed up automatically every night, and documents are kept in cold storage for five years, per the retention policy.<\/p>\n      <\/div>\n    <\/div>\n    <div class=\"stat-strip\" style=\"margin-top:48px;\">\n      <div class=\"stat-item\"><div class=\"stat-num\">Over 1 TB<\/div><div class=\"stat-label\">Archive connected without migrating existing documents<\/div><\/div>\n      <div class=\"stat-item\"><div class=\"stat-num\">5 years<\/div><div class=\"stat-label\">Retention period for file backups<\/div><\/div>\n      <div class=\"stat-item\"><div class=\"stat-num\">100% self-hosted<\/div><div class=\"stat-label\">Code and data stay on the client's infrastructure<\/div><\/div>\n      <div class=\"stat-item\"><div class=\"stat-num\">3 separate environments<\/div><div class=\"stat-label\">Development \u00b7 Staging \u00b7 Production<\/div><\/div>\n    <\/div>\n  <\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_2 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_2 et_pb_row et_flex_row\"><div class=\"et_pb_column_2 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_2 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><section style=\"background:var(--nf-bg-alt);\">\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <div class=\"eyebrow\" style=\"justify-content:center;\">What we build<\/div>\n      <h2>Systems used daily, in real operations \u2014 not showroom prototypes.<\/h2>\n    <\/div>\n    <div class=\"services-grid\" style=\"grid-template-columns:repeat(2,1fr);\">\n      <div class=\"card service-card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z\"\/><path d=\"M3 6h18M16 10a4 4 0 0 1-8 0\"\/><\/svg><\/div>\n        <h3>Order &amp; shipping systems<\/h3>\n        <p>We centralize the whole flow, from order intake to invoicing, the packing list, shipping-label generation and delivery tracking.<\/p>\n        <p>The ANAF, Oblio and Sameday integrations are already built, tested and used in production.<\/p>\n        <a class=\"arrow\" href=\"\/en\/crm\/\">See the order &amp; shipping CRM<\/a>\n      <\/div>\n      <div class=\"card service-card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M16.5 9.4 7.55 4.24M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\"\/><\/svg><\/div>\n        <h3>Order-processing automation<\/h3>\n        <p>For marketplace sellers, we build batch-processing flows: shipping labels, invoices and packing lists generated from a single action, across multiple marketplaces and sales channels.<\/p>\n        <a class=\"arrow\" href=\"\/en\/marketplaces\/\">See the eMAG &amp; Trendyol fulfillment solution<\/a>\n      <\/div>\n      <div class=\"card service-card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"2\" y=\"6\" width=\"20\" height=\"12\" rx=\"2\"\/><path d=\"M6 10h4M6 14h2\"\/><\/svg><\/div>\n        <h3>Systems for physical locations<\/h3>\n        <p>We build labeling stations for production and warehousing, as well as ticketing systems for carwashes and other operations with repetitive flows.<\/p>\n        <p>The solutions run on affordable hardware, have simple operator interfaces and can run locally, with centralized sync between locations.<\/p>\n        <a class=\"arrow\" href=\"\/en\/labeling\/\">See the industrial labeling solutions<\/a>\n      <\/div>\n      <div class=\"card service-card\">\n        <div class=\"card-icon\"><svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\"\/><path d=\"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\"\/><\/svg><\/div>\n        <h3>Integrations &amp; APIs<\/h3>\n        <p>We connect the applications and platforms you already use: ANAF, Oblio, SmartBill, Sameday, eMAG, Trendyol and WooCommerce.<\/p>\n        <p>The integrations include automatic retries, API rate-limit handling and full error logging, for flows that are stable and easy to monitor.<\/p>\n        <a class=\"arrow\" href=\"\/en\/carwash\/\">See the carwash ticketing system<\/a>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_3 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_3 et_pb_row et_flex_row\"><div class=\"et_pb_column_3 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_3 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><section>\n  <div class=\"container container-tight\">\n    <div class=\"section-head\">\n      <div class=\"eyebrow\" style=\"justify-content:center;\">How we work<\/div>\n      <h2>From process analysis to continuous operation.<\/h2>\n    <\/div>\n    <div class=\"process-steps\">\n      <div class=\"process-step\">\n        <div class=\"process-step-num\" style=\"color:var(--nf-brand-orange);\">01<\/div>\n        <div class=\"process-step-body\">\n          <h3>Analysis &amp; definition<\/h3>\n          <p>We start with the real process: who enters the data, where the bottlenecks appear, what's done manually and what information is missing for decisions.<\/p>\n          <p>The result is a clear specification \u2014 technical enough for the development team and easy enough to follow for people in operations, finance or management.<\/p>\n          <div class=\"process-step-meta\"><span>Written specification<\/span><span>Phased estimate<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"process-step\">\n        <div class=\"process-step-num\" style=\"color:var(--nf-brand-orange);\">02<\/div>\n        <div class=\"process-step-body\">\n          <h3>Working prototype<\/h3>\n          <p>We first build one complete, end-to-end flow, on real data and in conditions close to daily use.<\/p>\n          <p>Your team tests it early, and we adjust course before changes become expensive.<\/p>\n          <div class=\"process-step-meta\"><span>Testing on real data<\/span><span>Feedback before full development<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"process-step\">\n        <div class=\"process-step-num\" style=\"color:var(--nf-brand-purple);\">03<\/div>\n        <div class=\"process-step-body\">\n          <h3>Production launch<\/h3>\n          <p>We work with separate development, staging and production environments, prepare the data migration, configure roles and permissions and train the users.<\/p>\n          <p>Go-live is planned so that day-to-day activity continues without interruption.<\/p>\n          <div class=\"process-step-meta\"><span>Roles &amp; permissions<\/span><span>Audit trail on<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"process-step\">\n        <div class=\"process-step-num\" style=\"color:var(--nf-brand-purple);\">04<\/div>\n        <div class=\"process-step-body\">\n          <h3>Continuous operation<\/h3>\n          <p>After launch, we can take over monitoring, backups, updates and further development, at the pace your operation evolves.<\/p>\n          <p>The solution stays self-hosted, and the source code and the data belong to you.<\/p>\n          <div class=\"process-step-meta\"><span>You keep the code<\/span><span>No vendor lock-in<\/span><\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_4 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_4 et_pb_row et_flex_row\"><div class=\"et_pb_column_4 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_4 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><section style=\"background:var(--nf-bg-alt);\">\n  <div class=\"container container-tight\">\n    <div class=\"section-head\">\n      <div class=\"eyebrow\" style=\"justify-content:center;\">Not every problem needs a big platform<\/div>\n      <h2>Sometimes the best solution is a small tool, built for a single job.<\/h2>\n    <\/div>\n    <p style=\"max-width:680px;margin:0 auto;text-align:center;\">We built, for example, a tool for planning a 3 \u00d7 3 Instagram grid: you upload the images, crop them square, preview the full composition and export a ready-to-publish package, manifest included. If your team keeps losing time on one repetitive operation, a simple tool built in a few days may solve the problem better than a complex platform.<\/p>\n  <\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_5 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_5 et_pb_row et_flex_row\"><div class=\"et_pb_column_5 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_5 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><section>\n  <div class=\"container container-tight\">\n    <div class=\"section-head\"><div class=\"eyebrow\" style=\"justify-content:center;\">FAQ<\/div><h2>Frequently asked questions.<\/h2><\/div>\n    <div class=\"faq\">\n      <details open><summary>Who owns the code and the data at the end?<\/summary><p>You do. The code is delivered into your repository, or into a project-dedicated one you have full access to.<\/p><p>The database and the files can run on your infrastructure or in an environment we manage for your company. The choice is yours. If we end the collaboration, you keep the code, the data, the configurations and the project documentation.<\/p><\/details>\n      <details><summary>Why a custom solution instead of an existing SaaS?<\/summary><p>When a SaaS product covers the process well, we recommend it. It's usually faster and more cost-effective.<\/p><p>Custom development makes sense when your process is a competitive advantage: specific approval flows, local integrations such as ANAF, Oblio or Sameday, reports that don't exist in standard products, or volumes where per-seat pricing becomes unjustifiably expensive.<\/p><\/details>\n      <details><summary>How long does a typical project take?<\/summary><p>A working prototype of the first flow can be delivered in a few weeks.<\/p><p>A complete back-office system, including data migration, integrations and team training, can take a few months. We deliver in phases, though, so the first modules can be used while we build the next features.<\/p><\/details>\n      <details><summary>What happens after launch?<\/summary><p>We can keep operating and developing the system: monitoring, backups, security updates, support and incremental development.<\/p><p>Alternatively, we can hand it over to your technical team, together with the necessary documentation and a clear transition period.<\/p><\/details>\n    <\/div>\n  <\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_6 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_6 et_pb_row et_flex_row\"><div class=\"et_pb_column_6 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_6 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><section>\n  <div class=\"container\"><div class=\"cta-band\"><div><h2>Got a process that no longer fits in Excel?<\/h2><p>Describe how your team works today and we'll show you how the process can become a clear, centralized system far less dependent on manual work.<\/p><\/div><div class=\"buttons\"><a href=\"\/en\/contact\/\" class=\"btn btn-primary btn-lg\">Let's talk<\/a><a href=\"\/en\/crm\/\" class=\"btn btn-ghost btn-lg\">See a live system<\/a><\/div><\/div><\/div>\n<\/section><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_7 et_pb_section et_section_regular et_flex_section\"><div class=\"et_pb_row_7 et_pb_row et_flex_row\"><div class=\"et_pb_column_7 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_7 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><div data-nf-chat><\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"Custom Portals & Platforms \u2014 NetForge","_seopress_titles_desc":"Back-office systems your business actually runs on: insurance portals, CRMs, fulfillment automation. Self-hosted \u2014 you own the code and the data.","_seopress_robots_index":"","ep_exclude_from_search":false,"footnotes":""},"class_list":["post-238","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/dev.netforge.ro\/en\/wp-json\/wp\/v2\/pages\/238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev.netforge.ro\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dev.netforge.ro\/en\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.netforge.ro\/en\/wp-json\/wp\/v2\/comments?post=238"}],"version-history":[{"count":0,"href":"https:\/\/dev.netforge.ro\/en\/wp-json\/wp\/v2\/pages\/238\/revisions"}],"wp:attachment":[{"href":"https:\/\/dev.netforge.ro\/en\/wp-json\/wp\/v2\/media?parent=238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}