Quickbooks के विकल्प जब आपको ऐप नहीं, बल्कि एक API की आवश्यकता हो
प्लेटफ़ॉर्म टीमें Quickbooks से आगे क्यों निकल जाती हैं, "ऐप नहीं, बल्कि API" का असल में क्या अर्थ है, और कौन सा विकल्प किस काम के लिए उपयुक्त है।
QuickBooks Online छोटे व्यवसायों के लिए एक सक्षम अकाउंटिंग ऐप्लिकेशन है, जिसमें एक बड़ा यूजर बेस, OAuth 2.0 REST API, वेबहुक (webhooks) और एक मजबूत डेवलपर इकोसिस्टम मौजूद है। जो अधिकांश टीमें इसके विकल्प की तलाश में हैं, वे एक ऐप्लिकेशन के रूप में इससे असंतुष्ट नहीं हैं। उन्होंने एक अलग समस्या का सामना किया है: उन्हें बही-खाता संभालने के लिए किसी इंसान की नहीं, बल्कि सॉफ़्टवेयर की आवश्यकता है, और QuickBooks की पूरी बनावट इसी धारणा पर आधारित है कि इसे कोई इंसान इस्तेमाल करेगा।
यह लेख इसी बेमेल स्थिति और उसके स्थान पर उपयोग किए जाने वाले विकल्पों के बारे में है। यदि आप बुककीपिंग सॉफ़्टवेयर चुनने वाला एक छोटा व्यवसाय हैं, तो QuickBooks आपके लिए बिल्कुल सही हो सकता है और इनमें से कोई भी बात आप पर लागू नहीं होती।
यह बेमेल स्थिति कहाँ सामने आती है
एक API कनेक्शन मतलब एक कंपनी फ़ाइल। QuickBooks का API एक कंपनी तक सीमित होता है, जिसकी पहचान realm द्वारा की जाती है। जिस प्लेटफ़ॉर्म को 300 विक्रेता संस्थाओं (seller entities) के बही-खाते की आवश्यकता है, उसे 300 अलग-अलग कनेक्शन और 300 सब्सक्रिप्शन प्रबंधित करने होंगे, न कि एक ऐसा खाता जिसके अंदर 300 कंपनियां हों। यही एकमात्र तथ्य आमतौर पर मूल्यांकन को समाप्त कर देता है।
API ऐप्लिकेशन का सहयात्री (companion) है, उत्पाद नहीं। फ़ीचर्स पहले इंटरफ़ेस में आते हैं और अपनी गति से API तक पहुँचते हैं। जब आपका पूरा इंटीग्रेशन इस बात पर निर्भर करता है कि किसी क्षमता को कॉल किया जा सके, तो "ऐप में उपलब्ध है" का मतलब यह नहीं है कि वह API पर भी उपलब्ध है।
थ्रॉटलिंग (throttling) को सिंक के लिए डिज़ाइन किया गया है, ट्रांजैक्शन फ्लो के लिए नहीं। QuickBooks की सीमाएं आम तौर पर प्रलेखित हैं प्रति कंपनी 500 अनुरोध प्रति मिनट, जिसमें बैच और रिपोर्ट एंडपॉइंट्स पर सख्त सीमाएं होती हैं; वर्तमान आंकड़ों की पुष्टि Intuit के अपने डेवलपर दस्तावेज़ से करें। यह एक व्यवसाय के रिकॉर्ड को सिंक करने के लिए पर्याप्त है, लेकिन यह स्थिति तब अलग हो जाती है जब आपका प्लेटफ़ॉर्म हजारों व्यवसायों के लिए वास्तविक समय (real-time) में प्रविष्टियां (entries) पोस्ट करता है।
EU सीमा-पार कर (cross-border tax) में कमियां हैं। Intuit की अपनी सहायता सामग्री बताती है कि QuickBooks में IOSS VAT दर्ज करने की कोई मानक प्रक्रिया नहीं है और उपयोगकर्ताओं को किसी बुककीपर या अकाउंटेंट के पास जाने का सुझाव देती है। EU सीमाओं के पार बेचने वाले प्लेटफ़ॉर्म के लिए, डिस्टेंस-सेलिंग और वन स्टॉप शॉप (One Stop Shop) का प्रबंधन कोई मामूली बात नहीं है, इसलिए निर्माण करने से पहले अपने विशिष्ट देशों के लिए इसकी पुष्टि करना उचित है।
इनमें से कोई भी खराबी नहीं है। ये उन व्यवसायों के लिए एक बेहतरीन ऐप्लिकेशन बनाने के परिणाम हैं जो एक बुककीपर को नियुक्त करते हैं।
"ऐप नहीं, बल्कि API" के लिए असल में क्या आवश्यक है
विकल्पों की तुलना करने से पहले, यह बताना मददगार होगा कि प्लेटफ़ॉर्म टीमें वास्तव में क्या मांग रही हैं, क्योंकि "API है" इस बात को लगभग हर कोई पूरा करता है।
- पूर्ण कवरेज (Full coverage): ऐप्लिकेशन जो कुछ भी कर सकता है, उसे कॉल किया जा सकता है। यहाँ Nordlet की स्थिति यह है कि ऐप का कोई भी प्राइवेट एंडपॉइंट नहीं है - इंटरफ़ेस उन्हीं एंडपॉइंट्स पर चलता है जो बाहरी कॉलर को मिलते हैं।
- एक खाते के तहत कई कंपनियां (Multi-company under one account): कई सब्सक्रिप्शन के बिना कई संस्थाओं के लिए बही-खाते।
- आइडम्पोटेंट राइट्स (Idempotent writes): दोबारा प्रयास किया गया अनुरोध (retried request) दूसरा इनवॉइस या डुप्लीकेट जर्नल एंट्री नहीं बना सकता।
- इवेंट डिलीवरी: ऐसे वेबहुक जो स्थिति में बदलाव (state changes) होने पर ट्रिगर होते हैं, ताकि आपका सिस्टम पोलिंग (polling) करने के बजाय तुरंत प्रतिक्रिया दे।
- लागू किए गए अकाउंटिंग इनवेरिएंट्स (Accounting invariants): असंतुलित पोस्टिंग अस्वीकार की जाती हैं, बंद अवधियां (closed periods) लॉक कर दी जाती हैं, और पोस्ट किए गए दस्तावेज़ संपादित करने योग्य नहीं होते।
- डेटा के रूप में कर, स्क्रीन के रूप में नहीं: दरें, स्थान-आपूर्ति (place-of-supply) के निर्णय, सत्यापन परिणाम और रजिस्टर प्रोग्राम के माध्यम से पहुंच योग्य (reachable programmatically) होने चाहिए।
- एक सैंडबॉक्स जो प्रोडक्शन से मेल खाता हो, और असीमित टेस्ट कंपनियां ताकि इंटीग्रेशन टेस्ट सस्ते पड़ें।
किसी भी विकल्प की तुलना फ़ीचर मैट्रिक्स से करने के बजाय इस सूची से करें।
विकल्प, आपके उद्देश्य के अनुसार
| आपकी स्थिति | किसे चुनें | क्यों |
|---|---|---|
| आपके प्लेटफ़ॉर्म को कई टेनेंट्स के बही-खातों का मालिक होना चाहिए | एंबेडेड अकाउंटिंग API जैसे कि Nordlet | एक खाते के तहत कई कंपनियां, मीटरड प्राइसिंग, सर्वर-साइड पर लागू होने वाले अकाउंटिंग नियम |
| आपके ग्राहक QuickBooks में बही-खाते रखते हैं और आप उनके साथ एकीकृत होते हैं | QuickBooks API पर बने रहें, या किसी एग्रीगेटर का उपयोग करें | बही-खाते ग्राहक के हैं; उनसे वहीं मिलना सही है |
| आपको एक साथ कई अकाउंटिंग ऐप्स में बही-खातों की आवश्यकता है | Codat, Rutter या Merge जैसे एग्रीगेटर | कई अंतर्निहित प्रणालियों में एक समान इंटरफ़ेस |
| आपको वैधानिक बही-खातों के बजाय वास्तविक समय के वॉलेट बैलेंस की आवश्यकता है | लेज़र बुनियादी ढांचा जैसे Modern Treasury Ledgers | थ्रूपुट और इम्यूटेबिलिटी (immutability) के लिए बनाया गया है, कर दाखिल करने के लिए नहीं |
| आप ऑपरेशंस और फाइनेंस दोनों के लिए एक ही सिस्टम चाहते हैं | ERP जैसे कि Odoo | व्यापकता, लेकिन इसे स्वयं चलाने की कीमत पर |
| आप बुककीपर वाले छोटे व्यवसाय हैं | Xero, QuickBooks, या स्थानीय समतुल्य | ऐप्लिकेशन ही मुख्य उद्देश्य है |
एंबेडेड अकाउंटिंग API (Embedded accounting API)
यह "ऐप नहीं, बल्कि API" का सीधा उत्तर है। अकाउंटिंग सिस्टम एक बैकएंड सर्विस बन जाता है जिसे आपका उत्पाद कॉल करता है, और आपके उपयोगकर्ता कभी भी जनरल लेज़र नहीं देखते।
Nordlet को इसी रूप के लिए बनाया गया है: एक इम्यूटेबल डबल-इन्ट्री लेज़र जहाँ कमिट के समय डेटाबेस ट्रिगर द्वारा बैलेंस लागू किया जाता है, गैपलेस दस्तावेज़ नंबरिंग, अवधि की लॉकिंग जो बंद महीने के भीतर की तारीख वाली पोस्टिंग को 409 के साथ अस्वीकार करती है, हर म्यूटेशन का ऑडिट रिकॉर्ड, Idempotency-Key का समर्थन जो पुनः प्रयास (retry) पर संग्रहीत प्रतिक्रिया को दोबारा चलाता है, और बदलाव के समान डेटाबेस ट्रांजैक्शन में एक ट्रांजैक्शनल आउटबॉक्स में लिखे गए हस्ताक्षरित वेबहुक। मूल्य निर्धारण (Pricing) प्रति कंपनी के बजाय उपयोग के आधार पर (metered) है: €10 प्रति माह से शुरू जिसमें 3,000 अनुरोध शामिल हैं, प्रत्येक योजना पर असीमित कंपनियों, उपयोगकर्ताओं और सैंडबॉक्स कंपनियों के साथ।
ईमानदार सीमाएं: Nordlet शुरुआती ऐक्सेस और ऑनबोर्डिंग डिज़ाइन पार्टनर चरण में है; EU VAT में प्रति-देश दरें, VIES सत्यापन, और OSS/IOSS रिटर्न गणना शामिल है, लेकिन घरेलू रिटर्न पैक आज तीन देशों के लिए उपलब्ध हैं - लिथुआनिया (FR0600), जर्मनी (UStVA) और पोलैंड (JPK_V7M) - और पेरोल केवल लिथुआनिया के लिए है।
एग्रीगेटर (Aggregators)
Codat, Rutter और Merge आपको किसी भी उस अकाउंटिंग सिस्टम में एक इंटरफ़ेस देते हैं जिसका उपयोग प्रत्येक ग्राहक पहले से कर रहा है। यदि आपके उत्पाद का काम आपके ग्राहकों के बही-खातों को पढ़ना या लिखना है - जैसे लेंडिंग, खर्च प्रबंधन (spend management), एनालिटिक्स - तो यह सही श्रेणी है और एंबेडेड लेज़र गलत होगा। यदि आपके प्लेटफ़ॉर्म को रिकॉर्ड का सिस्टम बनना है, तो एग्रीगेटर वह नहीं हो सकता।
लेज़र बुनियादी ढांचा (Ledger infrastructure)
इस श्रेणी के उत्पाद वैधानिक अकाउंटिंग किए बिना उच्च थ्रूपुट पर अपरिवर्तनीय रूप से (immutably) बैलेंस को ट्रैक करते हैं। वे वॉलेट या भुगतान उत्पाद के तहत अच्छी तरह फिट बैठते हैं, और VAT, इनवॉइसिंग और वार्षिक रिपोर्टिंग को किसी अन्य चीज़ पर छोड़ देते हैं।
ERP
Odoo और इसी तरह के सूट अकाउंटिंग की तुलना में व्यवसाय के बहुत बड़े हिस्से को कवर करते हैं। प्लेटफ़ॉर्म बनाने वालों के लिए इसका ट्रेड-ऑफ इंटीग्रेशन सरफेस है: Odoo का बाहरी API RPC पर डेटा-मॉडल स्तर पर काम करता है, इसका दस्तावेज़ीकरण बताता है कि API पहुंच कस्टम प्राइसिंग टियर तक सीमित है, और वर्तमान RPC एंडपॉइंट्स को नए JSON API द्वारा प्रतिस्थापित किया जाना निर्धारित है। इसे प्लेटफ़ॉर्म निर्माताओं के लिए Nordlet बनाम Odoo में कवर किया गया है।
यदि आप QuickBooks से माइग्रेट कर रहे हैं
कुछ चीजें जो भरोसे के साथ उम्मीद से ज्यादा समय लेती हैं:
- चार्ट ऑफ़ अकाउंट्स मैपिंग: इसे सोच-समझकर करें, और नए खाते पर पुराने खाता कोड को एक संदर्भ फ़ील्ड (reference field) के रूप में रखें। जब कोई पूछे कि तुलनात्मक आंकड़े (comparative figure) क्यों बदले, तो आपको इसकी आवश्यकता होगी।
- ओपनिंग बैलेंस: एक कट-ऑफ तारीख पर बैलेंस के रूप में माइग्रेट करें, न कि दोबारा पोस्ट किए गए इतिहास (history) के रूप में। प्रविष्टियों के वर्षों को दोबारा चलाने की कोशिश करने के बजाय प्रतिधारण अवधि (retention period) के लिए पुरानी प्रणाली को पठनीय (readable) रखें।
- दस्तावेज़ नंबरिंग: तय करें कि नई सीरीज पुरानी नंबरिंग को जारी रखती है या नए सिरे से शुरू होती है, और चुनने से पहले अपने अधिकार क्षेत्र में आवश्यकता की जांच करें।
- ओपन आइटम्स: अवैतनिक इनवॉइस, अप्रयुक्त क्रेडिट (unapplied credits), और आंशिक रूप से मिलान किए गए भुगतानों को नेट बैलेंस के रूप में नहीं, बल्कि ओपन आइटम्स के रूप में आना चाहिए, अन्यथा रीकंसिलिएशन (reconciliation) बाद में काम नहीं करेगा।
- कर अवधियां: अवधि के बीच में माइग्रेट न करें जब तक कि आप दो प्रणालियों से एक रिटर्न दाखिल करने के लिए तैयार न हों।
- एक चक्र के लिए दोनों चलाएं: पुराने सिस्टम को बंद करने से पहले दोनों में एक ही महीने को पोस्ट करें और ट्रायल बैलेंस की तुलना करें।
FAQ
क्या QuickBooks का कोई मुफ़्त विकल्प है?
मुफ़्त और ओपन-सॉर्स अकाउंटिंग सिस्टम मौजूद हैं, और Odoo एक ऐप तक सीमित मुफ़्त टियर प्रकाशित करता है। प्लेटफ़ॉर्म के लिए मुफ़्त शायद ही कभी मुफ़्त रहता है, क्योंकि लागत होस्टिंग, अपग्रेड, अनुपालन अपडेट (compliance updates), और इंटीग्रेशन को चालू रखने के समय पर चली जाती है। लाइसेंस की नहीं, कुल कीमत की गणना करें।
मार्केटप्लेस के लिए QuickBooks से बेहतर क्या है?
विशेष रूप से मार्केटप्लेस अकाउंटिंग के लिए, एक एंबेडेड अकाउंटिंग API एक बेहतर संरचनात्मक फिट है, क्योंकि यह एक खाते के तहत कई संस्थाओं के लिए बही-खाते रख सकता है, सर्वर-साइड पर अकाउंटिंग नियमों को लागू कर सकता है, और पूरी तरह से आपके सॉफ़्टवेयर द्वारा संचालित हो सकता है। बुककीपर वाले एक व्यवसाय के लिए QuickBooks एक बेहतर उत्पाद बना हुआ है।
क्या डेवलपर्स के लिए QuickBooks का कोई API है?
हाँ। QuickBooks Online वेबहुक और डेवलपर पोर्टल के साथ एक OAuth 2.0 REST API प्रदान करता है। प्लेटफ़ॉर्म के उपयोग के लिए बाधा API की गुणवत्ता नहीं बल्कि इसका दायरा है: इसे किसी कंपनी के बही-खातों के साथ एकीकृत करने के लिए डिज़ाइन किया गया है, न कि किसी अन्य उत्पाद के अंदर का लेज़र बनने के लिए।
क्या मैं QuickBooks रख सकता हूँ और एक अकाउंटिंग API जोड़ सकता हूँ?
आप ऐसा कर सकते हैं, और कुछ टीमें ऐसा करती हैं: प्लेटफ़ॉर्म के अपने बही-खाते एक एंबेडेड लेज़र में रहते हैं, जबकि इंटीग्रेशन प्रत्येक व्यावसायिक ग्राहक द्वारा उपयोग किए जाने वाले किसी भी अकाउंटिंग सिस्टम में सारांश जर्नल (summary journals) भेजते हैं। याद रखने योग्य नियम यह है कि किसी भी दिए गए बही-खाते के सेट के लिए केवल एक ही सिस्टम रिकॉर्ड होता है। दो प्रणालियों का यह दावा करना कि दोनों प्रामाणिक हैं, रीकंसिलिएशन की समस्याओं की शुरुआत है।
इसके बजाय Xero का क्या?
Xero एक ऐप्लिकेशन के रूप में एक मजबूत विकल्प है और इसका अच्छी तरह से प्रलेखित API है, लेकिन इसकी संरचनात्मक बनावट समान है: सब्सक्रिप्शन और API सीमाएं प्रति संगठन हैं, और असत्यापित ऐप्स (uncertified apps) 25 कनेक्टेड संगठनों तक सीमित हैं। इसकी तुलना एम्बेडेड अकाउंटिंग के लिए Nordlet बनाम Xero में की गई है।