Portal Integration with 1C, ERP, and HR Systems: Data Exchange, Schedules, and Common Mistakes
Practical guide to integrating your portal with 1C, ERP, and HR systems: setting up data exchange, synchronization schedules, and avoiding typical errors.Why integrate the portal with accounting and HR systems
The modern corporate portal is no longer just an information showcase. Without direct data exchange with 1C, ERP, and HR platforms, it loses up to 60% of its value: employees are forced to manually transfer orders, reconcile vacation schedules, and request statements from accounting. Integration turns the portal into a single access point where pay slips, staffing schedules, warehouse balances, and production tasks are automatically updated.
In this article, we will cover three key aspects: typical exchange scenarios, setting up synchronization schedules, and the most common mistakes even experienced teams make. The material is based on ESK Solutions' long-standing practice in creating and supporting corporate portals with integration layers of any complexity.
Key data exchange scenarios
Exporting employee data from the HR system
The portal must promptly receive information about new employees, transfers, and terminations from the HR system. This is critical for displaying the organizational structure, user profiles, and setting up roles in the personal account. The exchange is typically built via REST API or direct connectors to popular platforms (SAP HR, Oracle HCM, 1C HR modules).
Regular updating of data on positions, departments, and contact information eliminates the need to maintain multiple directories manually. With correct setup, the update takes no more than 1-2 minutes after changes are made in the HR system.
Synchronizing orders and documents with 1C/ERP
One of the most popular use cases is the automatic transfer of internal orders (material requests, memos, travel orders) from the portal directly to the 1C or ERP system. After the request is processed, the return status (approved/canceled) is sent back to the portal, and the initiator sees the result without calling accounting.
Similarly, financial documents such as invoices for payment and expense reports are exchanged. Integration eliminates duplicate entry and reduces the number of errors from manual data transfer. In ESK Solutions projects, flexible web services developed for the client's specific architecture are often used for this purpose.
Exchanging schedules and timetables
Employees need access to up-to-date shift schedules, vacation plans, and duty rosters. A portal integrated with workforce planning systems synchronizes schedules in real time. This is especially relevant for manufacturing companies with shift work, where the schedule can change several times a week.
Integration allows not only viewing but also submitting requests for schedule changes or vacation through the portal, which are then automatically reflected in the HR system. All business rules for approval defined in the main system are observed.
Setting up synchronization schedules: options and pitfalls
The frequency and method of data updates depend on the specifics of business processes. There is no single "correct" schedule, but three main approaches can be distinguished.
Event-driven synchronization (real-time)
A change in the accounting system instantly triggers data delivery to the portal via webhooks or message brokers (RabbitMQ, Kafka). The advantage is maximum timeliness. The downside is increased load on the integration bus, risk of an "avalanche" during bulk updates, and the need for reliable handling of delivery errors. It is used for critical operations: blocking an employee upon termination, withdrawing a request, or urgent schedule changes.
Regular batch synchronization
The most common option: every N minutes (or hours), a scheduler on the portal side or an intermediate service requests a list of changed objects from the source. This approach reduces load and is easy to monitor. The interval is chosen experimentally: for HR data, 15-60 minutes is sufficient; for warehouse balances, 5 minutes may be needed.
A critical point is setting up the transfer log and idempotence: re-sending the same packet should not result in duplicate records on the portal. In our cloud services, we implement checksum and timestamp verification to eliminate duplicates once and for all.
Manual launch and deferred tasks
For operations that require explicit administrator confirmation (e.g., loading an annual budget), a manual trigger is used. In addition, the portal can support scheduled tasks via Cron, which run nightly exchange of heavy data. It is important to monitor the execution of such tasks and provide alerts in case of stalls.
General recommendation: do not mix event-driven and batch channels without clearly defining time windows to avoid version conflicts. The schedule should be designed together with the team responsible for server infrastructure — our SaaS solutions experts always include this stage in the integration plan.
Common Mistakes in Portal Integration
Even a well-thought-out exchange scheme can fail. Below are errors that occur in 80% of initial integration iterations.
- Network connection errors and source unavailability. 1C or ERP may be in the company’s internal network, so the cloud portal needs a secure tunnel (VPN, Direct Connect). Often they forget to back up the channel — if the connection drops, synchronization stops and users see outdated data. The solution is temporary caching on the portal side and resending via trigger.
- Mismatch of API formats and versions. When updating the accounting system, data contracts change, but the portal retains old parsers. Deserialization errors occur. Hard binding to fields without an open schema makes integration fragile. At ESK, we prefer the option with a canonical data model and adapters on each side, which simplifies maintenance.
- Access rights issues. The account used for exchange may not have access to the required registers or may not receive new fields after 1C modifications. This is not immediately apparent but appears when trying to synchronize an extended directory. An audit of rights at the design stage is a mandatory procedure.
- Update conflicts and loss of changes. If two systems simultaneously edit the same object (e.g., an employee profile and HR system), without a conflict resolution strategy, some data is lost. The optimal approach is to define a “leading” system for each attribute and prohibit direct editing in the dependent circuit.
How ESK Solutions Helps with Integration
We don’t believe in one-size-fits-all “out-of-the-box” connectors. Each integration requires an analysis of business processes and architecture. Our experience in creating CRM systems and portal solutions allows us to offer proven templates for integration with 1C, SAP, Microsoft Dynamics, and custom systems.
As part of our web development service, we implement integration layers on reliable frameworks, create queue monitoring, and set up rollback mechanisms. If necessary, we deploy cloud infrastructure (cloud services) for buffering and data transformation between circuits. All this is accompanied by detailed documentation so that your IT department can independently develop the integration further.
Frequently Asked Questions
Question: What to do if the connection drops during exchange?
Answer: Configure retry attempts with exponential backoff. Implement a queue with delivery confirmation on the portal side or integration bus. Session data should be temporarily saved to a log file so that after the channel is restored, unprocessed packets can be resent. Be sure to provide an alert for the administrator after three consecutive failures.
Question: How often should HR data be synchronized?
Answer: For static directories (departments, positions), once a day is sufficient. Current employee data (hiring, termination, suspension) should ideally be updated at least every 15 minutes. Bulk imports (e.g., loading 5000 transfers) are best scheduled for a night window to avoid overloading systems during working hours.
Question: Is it necessary to duplicate data on the portal or can I call 1C directly via API?
Answer: Real-time direct access saves space and simplifies consistency, but creates full dependency on the source's availability. For critical functions (user profile, personal account), we recommend a hybrid approach: a hot cache with a limited time-to-live and asynchronous fetching from 1C. This way the portal remains functional even when ERP is temporarily unavailable.
Question: How to test the integration without disrupting the production system?
Answer: Always use a test ERP environment or a separate 1C database identical in structure to the production system. Run load testing with peak data volumes, check behavior during network outages, and deliberately introduce duplicate records. Integration testing should be included in the regression suite with every update of the accounting system. At ESK Solutions, we allocate a dedicated test environment for such checks, which prevents incidents in production.


