Skip to main content

Introduktion

Med metadata kan du lagra egna nyckel-värde-data på Dodo Payments-objekt, till exempel ett order-ID från ditt system eller en CRM-referens. Du kan koppla metadata till de flesta objekt, inklusive betalningar, prenumerationer, kunder och produkter. Se Objekt som stöds för en fullständig lista.

Översikt

Metadata följer dessa regler:
  • Metadatanycklar kan vara upp till 40 tecken långa (upp till 100 tecken för användningshändelser som har importerats via POST /events/ingest).
  • Metadatavärden kan vara en string, integer, number eller boolean. String-värden kan vara upp till 500 tecken långa.
  • Objects, arrays och null accepteras inte som metadatavärden.
  • Du kan lägga till upp till 50 metadata-nyckelvärdespar per objekt. En begäran med fler returnerar MAXIMUM_KEYS_REACHED felkod.
  • API:et kan inte söka efter eller filtrera på metadata, men returnerar metadata i API-svar och webhooks.

Användningsområden

Använd metadata för att:
  • Lagra externa ID:n eller referenser.
  • Lägga till interna anteckningar.
  • Länka Dodo Payments-objekt till poster i ditt system.
  • Kategorisera transaktioner.
  • Lägga till anpassade attribut för rapportering.

Lägga till metadata

Lägg till metadata när du skapar eller uppdaterar ett objekt via API:et. För produkter kan du även lägga till metadata i instrumentpanelen.

Via API

Skicka ett metadata-objekt i begärandekroppen. Exemplen nedan använder TypeScript SDK och förutsätter en initierad client:

Via instrumentpanelens gränssnitt (endast produkter)

Om du vill lägga till metadata i en produkt utan att skriva kod öppnar du produkten i Products och lägger till nyckel-värdepar i metadataavsnittet. Du kan göra detta när du skapar eller redigerar produkten.
Product metadata section in the Dodo Payments dashboard
Teammedlemmar som inte arbetar med API:et kan använda instrumentpanelen för att hantera produktmetadata, till exempel produktkategorier.

Hämta metadata

API-svar innehåller metadata när du hämtar ett objekt:
När du hämtar en checkout-session (GET /checkouts/{id}) returneras inte metadata. Svarsmeddelandet för sessionsstatus innehåller endast id, created_at, payment_id, payment_status, customer_email och customer_name. Om du vill läsa metadata som du kopplade till sessionen när du skapade den hämtar du den resulterande betalningen med det returnerade payment_id.

Söka och filtrera

API:et kan inte söka efter metadata. Så här hittar du ett objekt med hjälp av ett metadata-värde:
  1. Lagra dina viktiga identifierare i metadata.
  2. Lista eller hämta objekt via API:et.
  3. Filtrera resultaten i din applikationskod.

Bästa praxis

Följ dessa riktlinjer för att hålla metadata användbar.

Gör så här:

  • Använd konsekventa namnkonventioner för metadata-nycklar.
  • Dokumentera ditt metadataschema internt.
  • Håll värden korta och meningsfulla.
  • Använd endast metadata för statiska data.
  • Överväg prefix som anger källsystemet, till exempel crm_id eller inventory_sku.

Undvik:

  • Lagra känsliga data i metadata.
  • Använda metadata för värden som ändras ofta.
  • Förlita dig på metadata för kritisk affärslogik.
  • Duplicera information som objektet redan innehåller.
  • Använda specialtecken i metadata-nycklar.

Objekt som stöds

Följande objekt stöder metadata:

Webhooks och metadata

Webhook-payloader innehåller objektets metadata, så att din webhook-hanterare kan matcha en händelse mot dina egna poster:
Senast ändrad 26 september 2026