अवलोकन
Digital Product Delivery, Digital Files entitlement type है। आप अपनी फ़ाइलें एक बार Digital Files entitlement पर upload करते हैं, entitlement को किसी product से attach करते हैं, और Dodo Payments हर भुगतान करने वाले customer को email और Customer Portal के माध्यम से presigned download links डिलीवर करता है। Entitlement में ये सुविधाएँ हैं:- Hosted file uploads: फ़ाइलों को Dodo Payments पर store करें और short-lived presigned URLs के ज़रिए serve करें।
- External download links: Dropbox, Google Drive, S3 या किसी भी URL पर hosted फ़ाइलों से link करें।
- Download instructions: customer को उनके order page और delivery email में दिखने वाला free-form text।
मुख्य सुविधाएँ
File Upload
500 MiB तक की फ़ाइलें (PDF, ZIP, images, videos आदि) upload करें। फ़ाइलें stream और efficiently store की जाती हैं।
Multiple Files
एक ही entitlement में अपनी ज़रूरत के अनुसार जितनी चाहें फ़ाइलें attach करें।
External Links
वैकल्पिक या अतिरिक्त विकल्प के रूप में external download links (Dropbox, Google Drive, signed S3 URLs) दें।
Presigned URLs
Hosted फ़ाइलें short-lived presigned URLs के ज़रिए serve की जाती हैं। हर download URL लगभग 15 मिनट बाद अपने-आप expire हो जाता है।
Digital Product Delivery सेट अप करें
1
Open Entitlements
अपने Dodo Payments dashboard में Entitlements पर जाएँ और नया entitlement बनाने के लिए + पर click करें।
2
Choose Digital Files
Integration के रूप में Digital Product Delivery चुनें।
3
Add files, links, and instructions
इनमें से किसी भी combination को configure करें:
- Files: एक या अधिक फ़ाइलें upload करें। हर upload एक
file_idलौटाता है, जिसे entitlement में append किया जाता है। - External URL: hosted फ़ाइलों के साथ डिलीवर किया जाने वाला publicly reachable HTTPS link।
- Instructions: customer को दिखाया जाने वाला free-form text (जैसे, “Unzip and run setup.sh”)।

4
Save the entitlement
Save करें। अब entitlement किसी भी product से attach करने के लिए उपलब्ध है।
Products से attach करें
किसी product को खोलें, Advanced Settings → Entitlements & Credits को expand करें और अपना Digital Files entitlement चुनें। उस product से जुड़ी हर successful purchase या active subscription पर entitlement डिलीवर किया जाता है।
Attaching the Digital Files entitlement to a product alongside other entitlements.
Delivery कैसे काम करती है
Digital Files delivery standard grant lifecycle का पालन करती है:Customer Experience
Purchase Confirmation
Successful transaction के बाद customer को download links और आपके configure किए गए instructions वाला email मिलता है।
Customer Portal Access
Customers, Customer Portal से किसी भी समय download links फिर से fetch कर सकते हैं। Portal page मांग पर नए presigned URLs generate करता है, इसलिए email के links expire होने के बाद भी वही purchase काम करती रहती है।
Customers confirmation emails से सीधे फ़ाइलें download कर सकते हैं या अपने portal के ज़रिए किसी भी समय access कर सकते हैं।
Programmatically Files manage करें
Entitlement पर file upload करें
Grants list करें और download URLs resolve करें
Entitlement से file हटाएँ
महत्वपूर्ण बातें
- Presigned URLs जल्दी expire होते हैं। Grant payloads या webhook events में लौटाए गए download URLs लगभग 15 मिनट तक valid होते हैं। इन्हें store न करें; customer को दोबारा download करने की ज़रूरत होने पर फिर से fetch करें।
- Files update करने से केवल future purchases प्रभावित होती हैं। किसी file को replace या remove करने से पहले से जारी downloads में retroactively बदलाव नहीं होता। पुराने customers अभी भी उस version को फिर से fetch कर सकते हैं जो उनका grant बनाए जाने के समय current था।
- Refunds, downloaded copies को invalidate नहीं करते। जिस customer ने file पहले ही download कर ली है, उसके पास वह copy बनी रहती है। Revocable content (license-restricted media, time-limited access) के लिए Digital Files को License Keys के साथ इस्तेमाल करें और runtime पर validate करें।
- Sensitive content के लिए अपनी auth वाले external URLs को प्राथमिकता दें। Dodo Payments के presigned URLs short-lived होते हैं, लेकिन अपनी validity window में unauthenticated रहते हैं; जिसके पास URL है, वह उस window में download कर सकता है। Externally hosted, account-gated content अधिक मजबूत guarantees देता है।
API Management
Create Entitlement
Optional external URL और instructions के साथ Digital Files entitlement बनाएँ।
Upload File
एक file (500 MiB तक) upload करें और उसे entitlement में append करें।
Delete File
Entitlement से file हटाएँ।
List Grants
Grants list करें और resolved download URLs पढ़ें।
Update Entitlement
Instructions, external URL update करें या files replace करें।
Revoke Grant
Customer का access manually revoke करें।
Webhooks
Digital file delivery और revocation, चारentitlement_grant.* webhook events trigger करते हैं। Digital Files grants के लिए payload में resolved file list (presigned URLs, filenames, sizes) वाला digital_product_delivery object, optional instructions और optional external_url शामिल होते हैं।
Legacy Digital Product Delivery
Product पर पुराने
digital_product_delivery block के साथ configure किए गए products को automatically migrated करके Digital Files entitlement में बदल दिया गया है। Legacy product file API के अंतर्गत upload की गई मौजूदा files सुरक्षित हैं; वे download की जा सकती हैं और grant payloads में source: "legacy" के tag के साथ दिखाई देती हैं। Future updates (files जोड़ना, instructions बदलना, external URL replace करना) Entitlements के अंतर्गत migrated Digital Files entitlement को edit करके किए जाने चाहिए।Legacy product-level fields (digital_product_delivery.external_url, digital_product_delivery.instructions) backwards compatibility के लिए product responses में populate होते रहेंगे, लेकिन आगे से entitlement ही source of truth है।Best Practices
- Downloads को one-shot मानें। Customers links share या lose कर सकते हैं, इसलिए अपने product को इस assumption के आधार पर design करें कि वे जो भी download करेंगे, उसे अपने पास रखेंगे।
- Expectations सेट करने के लिए instructions का उपयोग करें। Multi-file bundles के लिए एक
instructionsline जोड़ें, जिसमें बताया गया हो कि पहले क्या install करना है या files को कैसे combine करना है। - 500 MiB cap का ध्यान रखें। बड़ी artifacts (multi-GB datasets, video courses) को externally host करें और upload करने के बजाय
external_urlके ज़रिए link करें। - Revocable access के लिए License Keys के साथ combine करें। यदि refund के बाद in-product features का access revoke करना हो, तो Digital Files entitlement को License Key entitlement के साथ pair करें और runtime पर key validate करें।
- Customer Portal refresh flow को test करें। सुनिश्चित करें कि customer एक सप्ताह बाद portal पर लौटकर भी working download link प्राप्त कर सके। Email links expire होने पर यही primary recovery path है।