Data exchange via JSON from 1C to WordPress
Technical task for data exchange via JSON on WordPress
Goal:
Ensure correct synchronization of product stock between 1C and WordPress through a JSON file. Currently, there is a problem with a large volume of data — the file hangs and does not update information on the site when there are many products.
Task:
Implement a mechanism on the WordPress side that will allow processing large JSON files, breaking the processing into smaller parts (batches) and ensuring stable data synchronization without overloads.
Main requirements:
Trimming data in the JSON file:
- Implement splitting a large JSON file into parts (batches) for step-by-step processing.
- Create a mechanism that allows processing files in parts, for example, 100–200 products at a time, to avoid timeouts or server overloads.
Background execution of data exchange:
- Set up background processing for product batches
- Each batch must be processed separately, and after processing, a signal must be sent to process the next batch until all products are processed.
- Ensure that data is correctly updated even with large volumes of products.
Logging and error handling:
- Implement logging of the data exchange process: record the date and time of the start/end of each batch, the number of products that were successfully updated, and any possible errors.
- In case of errors, add the ability to reprocess only those batches that were not processed correctly.
Updating products on the site:
- For each product, the SKU must be checked. If the product already exists on the site, the stock quantity and, if necessary, the price must be updated.
- If the product is not found in the WooCommerce database, it must be created as a new entry (if necessary).
Data consistency between JSON and WooCommerce:
- Ensure that the format of the JSON file received from 1C corresponds to the fields used in WooCommerce (SKU, quantity, price).
- If necessary, perform data validation before processing each batch to avoid issues with incorrect data.
Server technical limitations:
- Set PHP limits on the server to ensure sufficient time for processing each product batch:
max_execution_time = 300(or more). - here at the developer's initiativememory_limit = 256M(or more). - here at the developer's initiative
- If necessary, develop a mechanism for distributing large volumes of data across multiple sessions to avoid overloads and timeouts.
- Set PHP limits on the server to ensure sufficient time for processing each product batch:
Periodic synchronization:
- Set up automatic launch of the synchronization process (for example, every 2 hours).
- Provide the ability for site administrators to manually start the data exchange process with 1C.
Interface for displaying synchronization status:
- Create an interface on the WordPress admin page (or in a special plugin) to view the exchange status:
- Time of the last successful import.
- Number of processed batches.
- Logs of successful updates and errors.
- Create an interface on the WordPress admin page (or in a special plugin) to view the exchange status:
Input data:
- JSON file transmitted from 1C (structure: SKU, stock quantity, price).
- API or FTP access for transferring the JSON file to the WordPress server (provided by 1C).
Deadline:
[Specify a specific deadline for task completion]
Result:
- Stable data synchronization with 1C, even with a large number of products.
- No hangs or interruptions in the exchange process.
- Complete log of the process for tracking the status of data import.
- Ability to manually start the exchange and view the synchronization status.
-
841 26 4 1 The handler receives the name and boundaries, and it selects from the file from... to... and sends the found piece as a file, accompanying it with the same boundaries. Everything is quite simple.
-
15003 218 0 Good day!
I have extensive experience working with WordPress and data synchronization between services.
Feel free to reach out, we will discuss all the details.
-
11671 110 0 Hello, Kostyantyn!
We will complete your task.
Evaluation after familiarization with the project.
Sincerely, Tetiana.
-
придбайте плагін та і все ))
-
Current freelance projects in the category PHP
Integration needed: KeyCRM → Cash Register KashalotIt is necessary to set up integration between KeyCRM and the Cash Register Kahalot. When placing an order in KeyCRM, the data must be automatically transmitted to Kahalot: • order information • products, nomenclature • prices • quantity More details in private. Content Management Systems, PHP ∙ 1 day 15 hours back ∙ 27 proposals |
Development of 2 SEO-oriented websites for selling spare parts (ATVs and special equipment)Development of Two Specialized Websites for Selling Spare PartsGeneral Information It is necessary to develop two specialized websites: Spare parts for ATVs, UTVs, SSVs, and other similar equipment. Spare parts for special equipment. Existing company website:… PHP, Web Programming ∙ 3 days 22 hours back ∙ 77 proposals |
Development of a WordPress website
23 USD
We are looking for a contractor to develop a custom website on WordPress for a jewelry store. The first stage will be a consultation. Content Management Systems, PHP ∙ 6 days 13 hours back ∙ 73 proposals |
Parser expireddomains.net
112 USD
A parser is needed for expireddomains.net. You need to log in to the site first; the problem is that it blocks the IP when trying to parse data. You need to parse thematic domains based on a list of keywords. If you are not confident in your abilities, please do not write. PHP, Web Programming ∙ 8 days 21 hours back ∙ 52 proposals |
Integration of payment service with Sales Force
70 USD
There is a payment system widget on the site that needs to be integrated with Salesforce so that all required parameters are visible on the Salesforce side. It needs to be done in such a way that all payments and subscriptions are controlled through Salesforce. PHP, Web Programming ∙ 9 days 1 hour back ∙ 44 proposals |