
हर Odoo इम्प्लीमेंटेशन अंततः एक ही मोड़ पर पहुँचता है: कॉन्फ़िगरेशन तैयार है, यूज़र प्रशिक्षित हैं, और व्यवसाय को अपना वास्तविक डेटा नए सिस्टम में चाहिए। डेटा माइग्रेशन वह चरण है जहाँ कई परियोजनाएँ समय गँवाती हैं, क्योंकि मास्टर डेटा या ओपनिंग बैलेंस की त्रुटियाँ बाद में गलत रिपोर्ट, डुप्लिकेट संपर्कों और बिना मिलान वाले खातों के रूप में सामने आती हैं।
यह गाइड बताती है कि Odoo 19 Enterprise में माइग्रेशन की योजना कैसे बनाएँ और उसे कैसे पूरा करें: ग्राहकों, वेंडरों, उत्पादों और चार्ट ऑफ़ अकाउंट्स जैसे मास्टर डेटा से लेकर, Import सुविधा के माध्यम से, प्राप्य, देय, जनरल लेजर और स्टॉक के ओपनिंग बैलेंस तक। अंत में एक कट-ओवर क्रम और वे जाँचें दी गई हैं जो पुष्टि करती हैं कि आपके आँकड़े सही हैं।
स्रोतों के बारे में एक टिप्पणी: यह लेख संस्करण 19 के लिए Odoo के आधिकारिक दस्तावेज़ों पर आधारित है। मेनू के नाम और विकल्प आपके इंस्टॉल किए गए ऐप्स, लोकलाइज़ेशन और एक्सेस अधिकारों के अनुसार भिन्न हो सकते हैं, इसलिए अपने लाइव सिस्टम पर लागू करने से पहले हर चरण की पुष्टि हमेशा एक टेस्ट डेटाबेस में करें।
चरण 1: माइग्रेशन के दायरे की योजना बनाएँ
शुरुआत यह तय करके करें कि क्या स्थानांतरित होगा और क्या पुराने सिस्टम में संग्रह के रूप में रहेगा। Odoo के अकाउंटिंग ऑनबोर्डिंग मार्गदर्शन में बताया गया है कि नए सिरे से शुरू करने वाली कंपनियाँ फ़िस्कल लोकलाइज़ेशन की पुष्टि करती हैं, मास्टर डेटा इम्पोर्ट करती हैं और अकाउंटिंग सेटिंग्स कॉन्फ़िगर करती हैं, जबकि पुराने सॉफ़्टवेयर से आने वाली कंपनियाँ ओपनिंग एंट्री भी इम्पोर्ट करती हैं।
बदलाव का समय महत्वपूर्ण है। Odoo के दस्तावेज़ वित्तीय वर्ष के अंत में स्थानांतरण की अनुशंसा करते हैं, क्योंकि इससे स्थानांतरित किया जाने वाला डेटा न्यूनतम रहता है, और किसी कर अवधि के बीच में बदलाव को हतोत्साहित करते हैं।
एक माइग्रेशन सूची बनाएँ जिसमें हर डेटा ऑब्जेक्ट, उसका स्रोत सिस्टम, व्यवसाय पक्ष पर उसका ज़िम्मेदार व्यक्ति, रिकॉर्ड की संख्या और लक्ष्य Odoo मॉडल दर्ज हो। सामान्य ऑब्जेक्ट ये हैं:
- सेटअप रिकॉर्ड: मुद्राएँ, जर्नल, फ़िस्कल पोज़िशन, कर और भुगतान शर्तें
- मास्टर डेटा: उत्पाद श्रेणियाँ, उत्पाद, एट्रिब्यूट और वेरिएंट, संपर्क और उनके बैंक खाते
- लोकलाइज़ेशन के मानक चार्ट ऑफ़ अकाउंट्स में समायोजन
- ओपनिंग बैलेंस: ट्रायल बैलेंस, खुले ग्राहक इनवॉइस और क्रेडिट नोट, खुले वेंडर बिल और रिफ़ंड, बैंक और नकद शेष, तथा ओपनिंग इन्वेंटरी गणना
शुरुआत में ही तय कर लें कि क्या माइग्रेट नहीं होगा। पुराने बंद हो चुके लेन-देन आमतौर पर संदर्भ के लिए पुराने सिस्टम में ही रहते हैं, जिससे माइग्रेशन छोटा रहता है और ओपनिंग स्थिति का मिलान आसान होता है।
चरण 2: चार्ट ऑफ़ अकाउंट्स और फ़िस्कल लोकलाइज़ेशन तैयार करें
डेटाबेस या कंपनी बनाते समय चुना गया देश फ़िस्कल लोकलाइज़ेशन पैकेज तय करता है, जो उस देश के लिए कॉन्फ़िगर किया गया एक मानक चार्ट ऑफ़ अकाउंट्स जोड़ता है। आप अकाउंटिंग सेटिंग्स में Fiscal Localization के अंतर्गत पैकेज की पुष्टि कर सकते हैं।
इसे अपनी योजना का पहला पड़ाव मानें। दस्तावेज़ चेतावनी देते हैं कि कोई जर्नल एंट्री पोस्ट होने के बाद फ़िस्कल लोकलाइज़ेशन बदला नहीं जा सकता, इसलिए कोई भी अकाउंटिंग डेटा लोड करने से पहले इसकी पुष्टि कर लें।
अपने पुराने खातों को Odoo के चार्ट से मैप करें, उसे बदलें नहीं। जहाँ कोई Odoo खाता आपके किसी खाते से मेल खाता है, वहाँ उसका नाम या कोड संपादित करें। जहाँ कोई मेल नहीं है, वहाँ खाता मैन्युअल रूप से बनाएँ या इम्पोर्ट करें। किसी चार्ट के भीतर खाता कोड अद्वितीय होने चाहिए।
मानक खातों को न हटाएँ और न ही उनका खाता प्रकार बदलें, क्योंकि डिफ़ॉल्ट खाते और सेटिंग्स उन पर निर्भर हैं। इसके बजाय उनका नाम और कोड बदलें। हर खाते का प्रकार रिपोर्ट और वित्तीय वर्ष की क्लोज़िंग को भी प्रभावित करता है, इसलिए किसी भी नए खाते का प्रकार सावधानी से चुनें।

चरण 3: मास्टर डेटा को निर्भरता के क्रम में लोड करें
Odoo इम्पोर्ट के समय संबंधों को हल करता है, इसलिए कोई रिकॉर्ड केवल उन्हीं रिकॉर्ड की ओर संकेत कर सकता है जो पहले से मौजूद हों। अकाउंटिंग ऑनबोर्डिंग दस्तावेज़ यह क्रम बताते हैं: मुद्राएँ, जर्नल, फ़िस्कल पोज़िशन, कर, भुगतान शर्तें, उत्पाद श्रेणियाँ, उत्पाद, संपर्कों के बैंक खाते और संपर्क।
उत्पादों के लिए पहले उत्पाद श्रेणियाँ इम्पोर्ट करें ताकि इम्पोर्ट के दौरान हर उत्पाद की श्रेणी सेट की जा सके। यदि आप वेरिएंट का उपयोग करते हैं, तो उत्पादों से पहले एट्रिब्यूट बनाएँ। Odoo का उत्पाद इम्पोर्ट मार्गदर्शन एट्रिब्यूट के लिए एक अलग शीट का वर्णन करता है जिसमें एट्रिब्यूट, डिस्प्ले टाइप, वेरिएंट निर्माण मोड और मानों के कॉलम होते हैं।
वेरिएंट निर्माण मोड के साथ सावधान रहें। दस्तावेज़ों के अनुसार किसी एट्रिब्यूट का कम से कम एक उत्पाद पर उपयोग हो जाने के बाद इसे बदला नहीं जा सकता। एट्रिब्यूट या मान के नामों में कॉमा नहीं आ सकता, और कई मानों को बिना स्पेस के कॉमा से अलग किया जाता है।
संपर्कों के लिए प्राप्य खाता, देय खाता और भुगतान शर्तों की समीक्षा करें, क्योंकि यही तय करते हैं कि हर ग्राहक और वेंडर की अकाउंटिंग में पोस्टिंग कैसे होगी।
चरण 4: इम्पोर्ट टेम्पलेट और Import सुविधा का उपयोग करें
Odoo अधिकांश बिज़नेस ऑब्जेक्ट में Excel (XLSX) या CSV फ़ाइलों से डेटा इम्पोर्ट कर सकता है। ऑब्जेक्ट का लिस्ट व्यू खोलें, ऐक्शन के लिए गियर आइकन पर क्लिक करें और Import records चुनें। संपर्क, उत्पाद और जर्नल एंट्री जैसे कई ऑब्जेक्ट डाउनलोड करने योग्य इम्पोर्ट टेम्पलेट देते हैं जिनमें कॉलम मैपिंग पहले से तैयार होती है।
टेम्पलेट के साथ काम करना सबसे सुरक्षित तरीका है। आप कॉलम जोड़, हटा और उनका क्रम बदल सकते हैं, लेकिन पहचान वाले कॉलम को बनाए रखें। यदि कोई टेम्पलेट उपलब्ध नहीं है, तो सटीक फ़ील्ड नाम पाने के लिए पहले कुछ मौजूदा रिकॉर्ड एक्सपोर्ट करें।
इम्पोर्ट स्क्रीन एक स्पष्ट क्रम का पालन करती है। डेटा फ़ाइल अपलोड करें, यदि वह CSV है तो फ़ॉर्मेटिंग विकल्प (सेपरेटर, एन्कोडिंग, तारीख का फ़ॉर्मेट और हज़ार का सेपरेटर) समायोजित करें, जाँचें कि फ़ाइल का हर कॉलम सही Odoo फ़ील्ड से मैप हुआ है और न पहचाने गए कॉलम को मैन्युअल रूप से मैप करें, डेटा को सहेजे बिना सत्यापित करने के लिए Test पर क्लिक करें, और परीक्षण सफल होने के बाद ही Import पर क्लिक करें।
Odoo की चेतावनी को गंभीरता से लें: इम्पोर्ट स्थायी होते हैं और इन्हें पूर्ववत नहीं किया जा सकता। रिकॉर्ड को उनके निर्माण या अंतिम संशोधन की तारीख से फ़िल्टर करके आप पता लगा सकते हैं कि किसी इम्पोर्ट ने क्या प्रभावित किया, लेकिन यह केवल सुधार में सहायक है, पूर्ववत करने का बटन नहीं।
फ़ॉर्मेट पर ध्यान दें। Odoo 1981-07-24 जैसी ISO 8601 तारीखों, Excel में वास्तविक तारीख सेल, और CSV फ़ाइलों के लिए सही ढंग से चुने गए तारीख फ़ॉर्मेट की अनुशंसा करता है। टैब से अलग की गई फ़ाइलें अपने-आप नहीं पहचानी जातीं, और संख्या वाले फ़ील्ड में अज्ञात मुद्रा चिह्न इम्पोर्ट रोक सकते हैं। बड़ी फ़ाइलों के लिए दस्तावेज़ टाइमआउट से बचने हेतु डेटा को छोटे बैचों में बाँटने की सलाह देते हैं, और एक ही उत्पाद के सभी वेरिएंट एक ही बैच में होने चाहिए।
चरण 5: एक्सटर्नल ID और रिलेशनल फ़ील्ड पर महारत हासिल करें
किसी भी माइग्रेशन फ़ाइल में External ID सबसे महत्वपूर्ण कॉलम है। यह हर रिकॉर्ड को एक अद्वितीय पहचानकर्ता देता है, और External ID वाली फ़ाइल इम्पोर्ट करने पर डुप्लिकेट बनाने के बजाय मेल खाने वाले रिकॉर्ड अपडेट होते हैं। इससे एक ही फ़ाइल को सुधारकर सुरक्षित रूप से दोबारा इम्पोर्ट करना संभव होता है।
External ID अपनी पुरानी कुंजियों से बनाएँ और उनके आगे ऑब्जेक्ट के अनुसार उपसर्ग लगाएँ, उदाहरण के लिए ग्राहक के लिए एक उपसर्ग और वेंडर के लिए दूसरा, ताकि वे सभी तालिकाओं में अद्वितीय रहें। एक बार लोड होने के बाद उन्हें कभी न बदलें और न हटाएँ, क्योंकि दस्तावेज़ चेतावनी देते हैं कि इससे अगले इम्पोर्ट में डुप्लिकेट बन सकते हैं।
रिलेशनल फ़ील्ड विशिष्ट नियमों का पालन करते हैं:
- Many2one फ़ील्ड, जैसे किसी उत्पाद की श्रेणी या किसी संपर्क का देश, संबंधित रिकॉर्ड के नाम से भरे जा सकते हैं, लेकिन डुप्लिकेट नाम पहले मेल से जुड़ जाते हैं, इसलिए External ID पर समाप्त होने वाला कॉलम अधिक विश्वसनीय है
- Many2many फ़ील्ड, जैसे संपर्क टैग, बिना स्पेस के कॉमा से अलग किए गए कई मान लेते हैं
- One2many फ़ील्ड, जैसे ऑर्डर लाइनें, पहली लाइन को पैरेंट की पंक्ति में रखते हैं और हर अगली लाइन को अपनी अलग पंक्ति में, जिसमें पैरेंट के कॉलम खाली छोड़े जाते हैं
दो और बातें अप्रत्याशित परिणामों से बचाती हैं। फ़ाइल में न होने वाले कॉलम को डिफ़ॉल्ट मान मिलते हैं, लेकिन जो कॉलम मौजूद हैं और जिनके सेल खाली हैं, वे उन डिफ़ॉल्ट मानों को खाली मान से ओवरराइट कर देते हैं। और मौजूदा डेटा अपडेट करते समय, उसे import-compatible विकल्प चुनकर एक्सपोर्ट करें ताकि External ID शामिल हो और केवल इम्पोर्ट करने योग्य फ़ील्ड ही एक्सपोर्ट हों।
चरण 6: डेटा साफ़ करें और टेस्ट लोड चलाएँ
सफ़ाई डेटा के Odoo तक पहुँचने से पहले होनी चाहिए। डुप्लिकेट ग्राहकों और वेंडरों को हटाएँ, नाम, फ़ोन नंबर और पते मानकीकृत करें, अप्रचलित उत्पादों को बंद या आर्काइव करें, और पुष्टि करें कि फ़ाइल में हर संदर्भ, जैसे श्रेणी, कर या भुगतान शर्त, लक्ष्य डेटाबेस में मौजूद है।
Odoo 19 Enterprise में Data Cleaning ऐप डीडुप्लिकेशन नियम जोड़ता है जो विलय के लिए मिलते-जुलते रिकॉर्ड को समूहित करते हैं, और फ़ील्ड सफ़ाई नियम जैसे स्पेस हटाना, टेक्स्ट केस सेट करना और फ़ोन नंबर फ़ॉर्मेट करना। दस्तावेज़ों के अनुसार डीडुप्लिकेशन और फ़ील्ड सफ़ाई Enterprise सुविधाएँ हैं, जबकि डेटा रीसाइक्लिंग Community में भी उपलब्ध है। इसलिए Community यूज़र्स को अधिकांश सफ़ाई इम्पोर्ट से पहले अपनी स्प्रेडशीट में ही पूरी करनी चाहिए।
अंतिम फ़ाइलों और अंतिम लोड क्रम का उपयोग करते हुए किसी टेस्ट या स्टेजिंग डेटाबेस में कम से कम एक पूर्ण पूर्वाभ्यास चलाएँ। हर त्रुटि दर्ज करें, उसे स्रोत पर ठीक करें, और तब तक दोहराएँ जब तक लोड बिना त्रुटि के पूरा न हो जाए। पूर्वाभ्यास के दौरान हर चरण का समय मापें ताकि वास्तविक कट-ओवर यथार्थवादी ढंग से शेड्यूल किया जा सके।
चरण 7: ओपनिंग बैलेंस लोड करें
Odoo के दस्तावेज़ तैयार करने के लिए चार ओपनिंग स्थितियों का वर्णन करते हैं: खाता शेष, खुले ग्राहक इनवॉइस और क्रेडिट नोट, खुले वेंडर बिल और रिफ़ंड, तथा ओपनिंग इन्वेंटरी गणना।
जनरल लेजर के लिए, ओपनिंग ट्रायल बैलेंस को जर्नल एंट्री के रूप में विविध संचालनों (miscellaneous operations) के इम्पोर्ट टेम्पलेट से इम्पोर्ट करें, जो जर्नल एंट्री सूची से उपलब्ध है। इम्पोर्ट से पहले प्राप्य और देय शेष को दो क्लियरिंग खातों, AR Clearing और AP Clearing, से बदल दें, दोनों का प्रकार Current Assets हो। ट्रायल बैलेंस संतुलित होना चाहिए, और यह ड्राफ़्ट के रूप में इम्पोर्ट होता है जिसकी आप समीक्षा करके पोस्ट करते हैं।
इसके बाद खुले ग्राहक इनवॉइस और वेंडर बिल को ग्राहक इनवॉइस और वेंडर बिल की सूचियों से उनके टेम्पलेट के साथ इम्पोर्ट करें, और क्रेडिट नोट तथा रिफ़ंड को उनकी अपनी सूचियों से। दस्तावेज़ स्पष्ट नियम तय करते हैं: पार्टनर किसी मौजूदा संपर्क से बिल्कुल मेल खाना चाहिए, दस्तावेज़ संख्या पहले से मौजूद नहीं होनी चाहिए और उसका वर्ष इनवॉइस या बिल की तारीख से मेल खाना चाहिए, आप या तो देय तारीख इस्तेमाल करें या भुगतान शर्तें, दोनों नहीं, लाइन का खाता प्राप्य या देय क्लियरिंग खाता हो, और यूनिट मूल्य किसी भी आंशिक भुगतान के बाद बची हुई देय राशि हो।
Odoo अनुशंसा करता है कि हर खुले इनवॉइस या बिल को लाइन-दर-लाइन के बजाय एक कुल लाइन के रूप में इम्पोर्ट करें। इम्पोर्ट किए गए दस्तावेज़ ड्राफ़्ट के रूप में आते हैं, जिनकी पुष्टि आप Actions मेनू से एक साथ करते हैं। उनके पोस्ट होने पर क्लियरिंग खाते वास्तविक प्राप्य और देय शेष से समायोजित हो जाते हैं।
स्टॉक के लिए Inventory, Operations, Physical Inventory पर जाएँ और इन्वेंटरी समायोजन टेम्पलेट से गिनी गई मात्राएँ इम्पोर्ट करें। फिर Apply All पर क्लिक करें, इन्वेंटरी का कारण और गणना की तारीख दर्ज करें, और मात्राएँ अपडेट करें। लॉट और सीरियल नंबर अलग-अलग लाइनों पर दिखते हैं और गणना के दौरान चुने या दर्ज किए जा सकते हैं।
स्टॉक और अकाउंटिंग में सावधानी से तालमेल बिठाएँ। दस्तावेज़ों के अनुसार ट्रायल बैलेंस में इन्वेंटरी खाते इन्वेंटरी मूल्य से मेल खाने चाहिए, जिसकी गणना उत्पाद लागत गुणा मात्रा के रूप में होती है। जाँचें कि आपकी उत्पाद श्रेणी की मूल्यांकन सेटिंग्स स्टॉक समायोजन को कैसे पोस्ट करती हैं, और अपने अकाउंटेंट के साथ तय करें कि इन्वेंटरी मूल्य लेजर में कैसे दर्ज होगा ताकि उसकी दोहरी गणना न हो।
बैंक और नकद के लिए, हर जर्नल के पहले स्टेटमेंट का प्रारंभिक शेष Odoo में पहले लेन-देन से पहले के वास्तविक शेष पर सेट करें। यदि आप बैंक सिंक्रोनाइज़ेशन का उपयोग करते हैं, तो ट्रायल बैलेंस की तारीख से पहले के सभी लेन-देन हटा दें।
चरण 8: नियंत्रित कट-ओवर करें और मिलान करें
कट-ओवर के दिन पुराने सिस्टम में लेन-देन रोक दें, अंतिम शेष निकालें, फ़ाइलों को पूर्वाभ्यास वाले क्रम में लोड करें और हर चरण को एक स्वीकृति लॉग में दर्ज करें। एक सामान्य क्रम है: लोकलाइज़ेशन की जाँच, सेटअप रिकॉर्ड, श्रेणियाँ और उत्पाद, संपर्क, ओपनिंग ट्रायल बैलेंस, खुले इनवॉइस और बिल, ओपनिंग स्टॉक और बैंक शेष।
मिलान से ही साबित होता है कि माइग्रेशन सफल रहा। हर ऑब्जेक्ट के लिए स्रोत और Odoo के बीच रिकॉर्ड की संख्या की तुलना करें, फिर इन शेषों की जाँच करें:
- Odoo का ट्रायल बैलेंस खाते-दर-खाते पुराने क्लोज़िंग ट्रायल बैलेंस के बराबर हो
- प्राप्य और देय का कुल योग इम्पोर्ट किए गए खुले इनवॉइस और बिल के योग के बराबर हो
- AR Clearing और AP Clearing खाते पूरी तरह संतुलित हों
- उत्पाद और स्थान के अनुसार स्टॉक मात्राएँ गणना से मेल खाएँ, और स्टॉक मूल्य इन्वेंटरी खातों से मेल खाए
- हर बैंक और नकद जर्नल वास्तविक स्टेटमेंट शेष से शुरू हो
क्लियरिंग खातों के संतुलित होने की पुष्टि होने के बाद, Odoo का मार्गदर्शन है कि उनका खाता प्रकार Off-Balance Sheet में बदल दें ताकि वे मुख्य रिपोर्टों में न दिखें। मिलान वर्कबुक और स्वीकृतियों को अपनी परियोजना के रिकॉर्ड के हिस्से के रूप में सुरक्षित रखें।
1CBMS कैसे मदद कर सकता है
1CBMS मिस्र और इराक की कंपनियों के लिए Odoo 19 डेटा माइग्रेशन की योजना बनाता और उसे संचालित करता है, स्रोत सिस्टम से डेटा निकालने और सफ़ाई से लेकर External ID डिज़ाइन, पूर्वाभ्यास लोड, ओपनिंग बैलेंस और स्वीकृत मिलान तक। ऐसे माइग्रेशन की योजना के लिए www.1cbms.com पर हमसे संपर्क करें जिससे आपकी टीम उन आँकड़ों के साथ लाइव हो सके जिन पर उसे भरोसा हो।