गाइड

चेकआउट फ़ॉर्म में पता ऑटोकम्प्लीट जोड़ें

चेकआउट फ़ॉर्म किसी भी दूसरे फ़ील्ड की तुलना में पते वाले फ़ील्ड पर ज़्यादा बार विफल होते हैं, आमतौर पर इसलिए कि ग्राहक गली का नाम गलत टाइप कर देता है या यूनिट नंबर छोड़ देता है। टाइप करते समय असली पते सुझाने से इनमें से ज़्यादातर गलतियाँ असफल डिलीवरी बनने से पहले ही ठीक हो जाती हैं।

ऑटोकम्प्लीट अनुरोध

/v1/autocomplete एंडपॉइंट अधूरा टेक्स्ट और यह सीमा लेता है कि कितने सुझाव लौटाने हैं। ग्राहक के कुछ अक्षर टाइप कर लेने के बाद, टाइप करते समय इसे कॉल करें।

GET /v1/autocomplete?q=221B Baker&limit=5
{
  "status": "ok",
  "query": "221B Baker",
  "suggestions": [
    {"text": "221B Baker Street, London, UK", "place_id": "abc123"},
    {"text": "221B Baker Avenue, Springfield", "place_id": "abc124"}
  ]
}

सुझाव से पूरे पते तक

सुझाव एक छोटा लेबल और एक place_id होता है, पूरा पता रिकॉर्ड नहीं। ग्राहक के कोई सुझाव चुनने के बाद, सुझाव का टेक्स्ट /v1/forward को भेजकर उसे घटकों और निर्देशांकों सहित पूरे पते में रिज़ॉल्व करें। यही दूसरी कॉल आपके फ़ॉर्म पर गली, शहर, क्षेत्र और पिन कोड फ़ील्ड भरती है।

GET /v1/forward?q=221B Baker Street, London, UK&limit=1

components ऑब्जेक्ट वास्तव में इसी दूसरे अनुरोध में आता है, क्योंकि /v1/autocomplete हमेशा केवल एक टेक्स्ट लेबल और एक place_id लौटाता है, गली, शहर और पिन कोड का विभाजन कभी नहीं। यह चरण छोड़कर सुझाव के टेक्स्ट को खुद पार्स करने की कोशिश जितनी दिखती है उससे ज़्यादा नाज़ुक है, क्योंकि फ़ॉर्मेटिंग देश के अनुसार बदलती है।

अनुरोधों की संख्या नियंत्रण में रखना

हर कीस्ट्रोक पर अनुरोध भेजना व्यस्त चेकआउट पेज पर तेज़ी से बढ़ जाता है। फ़ील्ड को डिबाउंस करें ताकि अनुरोध तभी जाए जब ग्राहक टाइप करते हुए एक पल रुके, और तीन या चार अक्षरों से कम वाले इनपुट के लिए अनुरोध न भेजें, जहाँ सुझाव वैसे भी उपयोगी नहीं होते। हर ऑटोकम्प्लीट कॉल और उसके बाद की हर फ़ॉरवर्ड जियोकोडिंग कॉल आपके दैनिक कोटा में एक अनुरोध के रूप में गिनी जाती है, इसलिए व्यस्त स्टोर पर डिबाउंस किया गया फ़ील्ड भी हर कुंजी के साथ शामिल 2,500 प्रतिदिन मुफ़्त अनुरोधों के भीतर आराम से चल सकता है।

कोई मिलान न मिलने पर

खाली suggestions array एक सामान्य रिस्पॉन्स है, त्रुटि नहीं। ग्राहक को टाइप करते रहने दें और अगर कुछ अक्षरों के बाद भी कुछ उपयोगी न मिले तो साधारण टेक्स्ट पता फ़ील्ड पर लौट जाएँ, बजाय इसके कि सुझाव चुने जाने तक फ़ॉर्म सबमिट होने से रोका जाए।

एक गलती जिससे बचना चाहिए

क्लिक किए गए सुझाव को पूरा, सत्यापित पता मान लेना एक आम शॉर्टकट है जो बाद में परेशानी पैदा करता है। ग्राहक कोई सुझाव चुनकर उसके बाद भी फ़ील्ड को एडिट करता रह सकता है, जैसे मकान नंबर बदलना या अपार्टमेंट नंबर जोड़ना जो मूल सुझाव में था ही नहीं। फ़ील्ड के अंतिम टेक्स्ट को हमेशा सबमिट करते समय /v1/forward से रिज़ॉल्व करें, केवल सुझाव क्लिक होने के समय नहीं, ताकि आप जो पता सेव करें वह वही हो जो वास्तव में फ़ील्ड में बचा।

अगर आपका चेकआउट फ़ॉर्म पिन कोड अलग से भी लेता है, तो गली का पता रिज़ॉल्व होने के बाद /v1/postcode पर एक छोटी सी कॉल ऐसा पिन कोड पकड़ने का सस्ता तरीका है जो बाकी पते से मेल नहीं खाता, इससे पहले कि दोनों साथ सबमिट हों और आगे चलकर शिपिंग में गड़बड़ी करें।

ऑटोकम्प्लीट सत्यापन की जगह नहीं लेता, यह बस इस संभावना को कम करता है कि कोई गलत पता आपके ऑर्डर सिस्टम तक पहुँचे। इसे अपने चेकआउट फ़्लो में जोड़ने से पहले पैरामीटर की पूरी सूची के लिए पता ऑटोकम्प्लीट दस्तावेज़ देखें।