Hoppa till huvudinnehåll

Documentation Index

Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt

Use this file to discover all available pages before exploring further.

Översikt

Digital Product Delivery är typen för rättigheterna Digital Files. Du laddar upp dina filer en gång till ett Digital Files-rättighet, kopplar rättigheten till en produkt, och Dodo Payments levererar förtecknade nedladdningslänkar till varje betalande kund via e-post och kundportalen. Rättigheten stöder:
  • Värdade filuppladdningar: lagra filer på Dodo Payments och leverera dem via kortlivade förtecknade URL:er.
  • Externa nedladdningslänkar: länka till filer som värdas på Dropbox, Google Drive, S3, eller vilken URL som helst.
  • Nedladdningsinstruktioner: fri text som visas för kunden på deras ordersida och i leverans-e-posten.
Du kan blanda alla tre på en enda rättighet.

Viktiga Funktioner

Upload files (PDF, ZIP, images, videos, etc.) up to 100 MB. Files are streamed and stored efficiently. Attach as many files as you need to a single entitlement. Provide external download links (Dropbox, Google Drive, signed S3 URLs) as an alternative or addition. Hosted files are served via short-lived presigned URLs. Each download URL expires automatically after roughly 15 minutes.

Ställ in Digital Product Delivery

Gå till Rättigheter i din Dodo Payments-kontrollpanel och klicka på + för att skapa en ny rättighet. Välj Digital Product Delivery som integration. Konfigurera valfri kombination av:
  • Filer: ladda upp en eller flera filer. Varje uppladdning returnerar en file_id som läggs till rättigheten.
  • Extern URL: en offentligt tillgänglig HTTPS-länk som levereras tillsammans med värdade filer.
  • Instruktioner: fri text som visas för kunden (t.ex., “Unzip och kör setup.sh”).
Digital Files-rättighet med filuppladdning, extern URL och instruktioner Spara. Rättigheten är nu tillgänglig att koppla till vilken produkt som helst.

Koppla till Produkter

Öppna en produkt, expandera Avancerade Inställningar → Rättigheter & Krediter, och välj din Digital Files-rättighet. Rättigheten levereras vid varje lyckat köp eller aktiv prenumeration kopplad till den produkten. Produktens rättighetspanel som visar Digital Product Delivery valt

Hur Leveransen Fungerar

Digital Files-leverans följer standarden för rättighetslivscykel:
HändelseBeteende
payment.succeeded (engångs)Utfärda en rättighet. Rättigheten bär förtecknade nedladdnings-URL:er som är giltiga i ~15 minuter; kunder kan uppdatera dem genom att öppna e-postlänken eller kundportalssidan igen.
subscription.activeUtfärda en rättighet. Filer förblir åtkomliga medan prenumerationen är aktiv.
subscription.renewedNo-op. Samma rättighet fortsätter; nya förtecknade URL:er skapas vid varje hämtning.
subscription.on_hold / cancelled / expiredÅterkalla rättigheten. Nya förtecknade URL:er utfärdas inte längre.
subscription.plan_changedÅterkalla den gamla rättigheten; utfärda en ny för den nya planens rättighet.
refund.succeeded (engångs)Återkalla rättigheten.
Manuell återkallelseÅterkalla med revocation_reason: manual.
Återkallelse stoppar Dodo Payments från att utfärda nya nedladdnings-URL:er, men det anser inte ogiltigförklara kopior som en kund redan har laddat ner. Behandla värdade filnedladdningar som “levererade en gång lästa.”

Kundupplevelse

Bekräftelse av köp

Efter en lyckad transaktion får kunden ett e-postmeddelande med nedladdningslänkar och eventuella instruktioner du konfigurerade. Orderbekräftelse-e-posta som visar nedladdningslänkar för digitala produkter

Åtkomst till kundportalen

Kunder kan återhämta nedladdningslänkar när som helst från Kundportalen. Portalsidan genererar nya förtecknade URL:er vid behov, så samma köp fortsätter fungera även efter att e-postlänkarna har gått ut. Kundportalgränssnitt som visar tillgängliga digitala produkter för nedladdning Kunder kan ladda ner filer direkt från bekräftelse-e-poster eller nå dem när som helst via sin portal.

Hantera Filer Programmatisk Vä

Ladda upp en fil till en rättighet

TypeScript
import DodoPayments from 'dodopayments';
import fs from 'node:fs';

const client = new DodoPayments({
  bearerToken: process.env['DODO_PAYMENTS_API_KEY'],
  environment: 'test_mode',
});

await client.entitlements.files.upload('ent_files_abc', {
  file: fs.createReadStream('./pro-bundle.zip'),
  filename: 'pro-bundle.zip',
});
cURL
curl -X POST "https://test.dodopayments.com/entitlements/ent_files_abc/files" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@./pro-bundle.zip" \
  -F "filename=pro-bundle.zip"

Lista rättigheter och lös nedladdnings-URL:er

const grants = await client.entitlements.grants.list('ent_files_abc', {
  customer_id: 'cus_abc123',
});

for (const grant of grants.items) {
  for (const file of grant.digital_product_delivery.files) {
    console.log(file.filename, file.download_url, `expires in ${file.expires_in}s`);
  }
}

Ta bort en fil från en rättighet

await client.entitlements.files.delete('ent_files_abc', 'df_a4f6c1de');

Viktiga Överväganden

  • Förtecknade URL:er går snabbt ut. Nedladdnings-URL:er som returneras i rättighetslämningsbelastningar eller webhook-händelser är giltiga i ~15 minuter. Spara dem inte; hämta dem igen när kunden behöver ladda ner igen.
  • Uppdatering av filer påverkar endast framtida köp. Att ersätta eller ta bort en fil förändrar inte retroaktivt nedladdningar som redan har utfärdats. Tidigare kunder kan fortfarande återhämta den version som var aktuell när deras rättighet skapades.
  • Återbetalningar annullerar inte hämtade kopior. En kund som redan laddat ner en fil behåller den kopian. För rättighetsbegränsat innehåll (licensbegränsat media, tidsbegränsad åtkomst), para ihop Digital Files med Licensnycklar och validera vid körning.
  • För känsligt innehåll, föredra externa URL:er med egen autentisering. Dodo Payments förtecknade URL:er är kortlivade men oautentiserade inom sitt fönster; vem som helst med URL:en kan ladda ner inom det fönstret. Externt värdat, kontoavgränsat innehåll ger starkare garantier.

API-hantering

Skapa en Digital Files-rättighet med valfri extern URL och instruktioner. Ladda upp en fil (upp till 100 MB) och lägg till den till rättigheten. Ta bort en fil från rättigheten. Lista rättigheter och läs de lösta nedladdnings-URL:erna. Uppdatera instruktioner, externa URL:er, eller ersätt filer. Återkalla manuellt en kunds åtkomst.

Webhooks

Digital filleverans och återkallelse utlöser de fyra entitlement_grant.* webhook-händelserna. För Digital Files-rättigheter inkluderar belastningen ett digital_product_delivery-objekt med den lösta fillistan (förtecknade URL:er, filnamn, storlekar), den valfria instructions, och den valfria external_url.
"digital_product_delivery": {
  "files": [
    {
      "file_id": "df_a4f6c1de",
      "download_url": "https://files.dodopayments.com/.../pro-bundle.zip?Signature=...",
      "filename": "pro-bundle.zip",
      "content_type": "application/zip",
      "file_size": 18742390,
      "expires_in": 900
    }
  ],
  "instructions": "Unzip and run setup.sh from the project root.",
  "external_url": null
}

Äldre Digital Product Delivery

Last modified on May 14, 2026