Skip to main content

Översikt

Dodo Payments API använder standard HTTP-statuskoder och anpassade felkoder för att indikera framgång eller misslyckande av API-förfrågningar. När ett fel inträffar returnerar API:et en lämplig HTTP-statuskod och ett JSON-svar som innehåller detaljerad information om felet. Varje felrespons inkluderar:
  • En HTTP-statuskod som indikerar den allmänna kategorin av felet
  • En specifik felkod som identifierar den exakta naturen av felet
  • Ett mänskligt läsbart felmeddelande som förklarar vad som gick fel
  • Ytterligare detaljer om felet när det är tillämpligt
Att förstå dessa felkoder och deras betydelser är avgörande för:
  • Felsökning av integrationsproblem
  • Implementering av korrekt felhantering i din applikation
  • Att ge meningsfull feedback till slutanvändare
  • Att upprätthålla ett robust betalningsbehandlingssystem
Dessa är API och affärslogiska fel. För kortavsändningsorsaker som returneras vid ett misslyckat betalning (som INSUFFICIENT_FUNDS eller CARD_DECLINED), se istället referensen Transaktionsfel.

Standard API Felkoder

Felresponsformat

När ett fel inträffar returnerar API:et ett JSON-svar med följande struktur:

Felkodsreferens

Felkoderna nedan är grupperade efter området av API de relaterar till. Varje post listar villkoret som utlöser det och meddelandet API returnerar.

Autentisering & Konto

  • UNAUTHORIZED
    • Utlösare: Ingen API-nyckel eller ogiltig token / räckvidd
    • Meddelande: Du är inte auktoriserad att utföra denna åtgärd
  • MERCHANT_NOT_LIVE
    • Utlösare: Verksamheten är fortfarande i test/sandlådeläge
    • Meddelande: Handlaren är inte live

Betalningar & Kassa

  • CHECKOUT_SESSION_CONSUMED
    • Utlösare: Kassasession har redan genererat en betalning
    • Meddelande: Kassasession har redan använts
  • NO_ELIGIBLE_PAYMENT_METHODS
    • Utlösare: Efter filtrering finns inget kvar
    • Meddelande: Inga berättigade betalningsmetoder hittades
  • PAYMENT_NOT_SUCCEEDED
    • Utlösare: Försök återbetala/behandla misslyckad betalning
    • Meddelande: Den angivna betalningen har inte lyckats
  • PREVIOUS_PAYMENT_PENDING
    • Utlösare: Försök skapa avgift medan föregående är i icke-terminalt tillstånd
    • Meddelande: Kan inte skapa ny avgift eftersom föregående betalning inte är framgångsrik än
  • UNSUCCESSFUL_PAYMENT_ID
    • Utlösare: Betalnings-ID refererar till misslyckad betalning
    • Meddelande: Betalnings-ID har en misslyckad status.

Koppel & BYOP

Dessa fel är relaterade till handlareägda betalningskopplingar (Ta med din egen processor).
  • BYOP_CONNECTOR_DISABLED
    • Utlösare: Uppdaterar en betalningsmetod på en prenumeration som dirigeras genom en inaktiverad BYOP-koppling
    • Meddelande: Prenumerationen dirigeras genom handlarens egen (BYOP) koppling som för närvarande är inaktiverad
  • BYOP_CUSTOM_INVOICE_ADDRESS_MISSING
    • Utlösare: En handlardirigerad (BYOP) betalning saknar den nödvändiga anpassade faktureringsadressen
    • Meddelande: BYOP anpassad faktureringsadress krävs när en betalning styrs genom handlarens koppling
  • CONNECTOR_LABEL_ALREADY_EXISTS
    • Utlösare: Skapar en koppling med en etikett som redan finns
    • Meddelande: En koppling med denna etikett finns redan. Vänligen välj en annan etikett.

Återbetalningar

  • EXISTING_REFUND_REQUEST_PROCESSING
    • Trigger: Tidigare återbetalningsbegäran behandlas fortfarande
    • Message: En återbetalningsbegäran med status “Pending” behandlas fortfarande
  • LINE_ITEM_FULLY_REFUNDED
    • Utlösare: Försök att återbetala redan helt återbetalt radobjekt
    • Meddelande: Radobjekt har redan återbetalats helt och kan inte återbetalas ytterligare.
  • LINE_ITEM_NOT_FOUND
    • Utlösare: Artikel-ID är inte en del av den refererade betalningen
    • Meddelande: Radobjekt hittas inte i betalning
  • LINE_ITEM_PRORATED
    • Utlösare: Återbetalning eller uppdatering försökt på en proratad rad
    • Meddelande: Radobjekt kan inte återbetalas eftersom det är proratad
  • LINE_ITEM_REFUND_AMOUNT_TOO_HIGH
    • Utlösare: Återbetalningsbelopp > betalt belopp (inkl. moms)
    • Meddelande: Radobjekt angivet återbetalningsbelopp inklusive moms är vilket är över det betalda beloppet
  • LINE_ITEM_REFUND_AMOUNT_TOO_LOW
    • Utlösare: Återbetalningsbelopp under minimigränsen
    • Meddelande: Radobjekt begärt återbetalningsbelopp är vilket är för lågt
  • NOTHING_TO_REFUND
    • Utlösare: Inga återbetalningsbara belopp återstår; alla positiva radobjekt har redan återbetalats helt
    • Meddelande: Inget återbetalningsbart belopp återstår. Alla positiva radobjekt har redan återbetalats helt.
  • PARTIAL_REFUND_NOT_ALLOWED
    • Utlösare: Delvis återbetalning försökte på en betalningsmetod som endast stöder fulla återbetalningar
    • Meddelande: Delvisa återbetalningar är inte tillåtna för denna betalningsmetod
  • PAYMENT_ALREADY_REFUNDED
    • Utlösare: Dubblett återbetalning
    • Meddelande: Denna betalning har redan återbetalats
  • PAYMENT_HAS_BEEN_REFUNDED
    • Utlösare: Betalning har återbetalats helt
    • Meddelande: Betalnings-ID har återbetalats helt.
  • REFUND_AMOUNT_EXCEEDS_PAID_AMOUNT
    • Utlösare: Aggregat återbetalningsbelopp > betalt belopp
    • Meddelande: Det beräknade återbetalningsbeloppet är större än det betalda beloppet
  • REFUND_WINDOW_EXPIRED
    • Utlösare: Utanför tillåtet återbetalningsfönster
    • Meddelande: Återbetalningar kan inte initieras dagar efter betalningsskapelse. Kontakta support@dodopayments.com.
  • ZERO_AMOUNT_PAYMENT_REFUND_NOT_ALLOWED
    • Utlösare: Försök återbetala noll-belopps-betalning
    • Meddelande: Kan inte återbetala en betalning med noll valuta belopp

Prenumerationer & Tillägg

  • ADDONS_IN_USAGE_BASED_BILLING_NOT_SUPPORTED
    • Utlösare: Försök att lägga till tillägg till användningsbaserade faktureringsprenumerationer
    • Meddelande: Tillägg i Prenumerationer stöds inte för användningsbaserad fakturering
  • ADDONS_NOT_ALLOWED_FOR_ON_DEMAND
    • Utlösare: Försök att lägga till tillägg till on-demand-prenumerationer
    • Meddelande: Tillägg är inte tillåtna för on demand-prenumerationer
  • CANCEL_SCHEDULED_PLAN_CHANGE_FOR_CUSTOMER_PORTAL_DISABLED
    • Utlösare: Customer Portal försöker avbryta en schemalagd planändring medan verksamheten har inaktiverat den åtgärden
    • Meddelande: Avbrytande av schemalagd planändring är inaktiverad för kundportalen.
  • CHARGE_NOT_ALLOWED_FOR_SCHEDULED_CANCELLATION
    • Utlösare: Försök att debitera prenumeration som är schemalagd för uppsägning
    • Meddelande: Prenumeration schemalagd för uppsägning
  • CUSTOMER_HAS_EXISTING_SUBSCRIPTION
    • Utlösare: Skapar en prenumeration för en kund som redan har en, när flera prenumerationer per kund inte är tillåtna
    • Meddelande: Kund har en befintlig prenumeration. För att tillåta flera prenumerationer per kund, ändra företagsinställningar
  • DO_NOT_BILL_NOT_ALLOWED_IN_CUSTOMER_PORTAL
    • Utlösare: do_not_bill proration mode använd i en Customer Portal planändring
    • Meddelande: do_not_bill proration mode är inte tillåten i kundportalen
  • DUPLICATE_ADDON_IDS_IN_REQUEST
    • Utlösare: Samma addon_id visas mer än en gång i begäran
    • Meddelande: Dubblett tilläggs-ID är inte tillåtna
  • INACTIVE_SUBSCRIPTION_PLAN_CHANGE_NOT_SUPPORTED
    • Utlösare: Planändring på inaktiv prenumeration
    • Meddelande: Ändra plan är inte stöd för inaktiva prenumerationer
  • INVALID_PRORATION_MODE_WITH_NEXT_BILLING_DATE
    • Utlösare: En annan proration mode än full_immediately användes med effective_at: next_billing_date
    • Meddelande: Endast full_immediately proration mode är tillåtet med effective_at: next_billing_date
  • MISSING_ADDON_IDS
    • Utlösare: addon_id lista tom eller okända ID
    • Meddelande: En eller flera produkt-ID existerar inte:
  • ON_DEMAND_PLAN_CHANGE_NOT_SUPPORTED
    • Utlösare: Planskifte inte tillåtet för on-demand
    • Meddelande: Ändra plan stöds inte för on demand-prenumerationer
  • ON_DEMAND_USAGE_BASED_BILLING_NOT_SUPPORTED
    • Utlösare: Försök att använda on-demand med användningsbaserad fakturering
    • Meddelande: On Demand-prenumerationer stöds inte för användningsbaserad fakturering
  • ONE_TIME_PRODUCTS_NOT_ALLOWED_FOR_ON_DEMAND
    • Utlösare: Engångsprodukt tillagd till en on-demand-prenumeration
    • Meddelande: Engångsprodukter är inte tillåtna för on demand-prenumerationer
  • PENDING_PLAN_CHANGE_EXISTS
    • Utlösare: Ny planändring begärd medan en tidigare väntar på betalning
    • Meddelande: En väntande planändring finns redan för denna prenumeration. Var god vänta tills den nuvarande betalningen är klar.
  • PLAN_CHANGE_FOR_CUSTOMER_PORTAL_DISABLED
    • Utlösare: Planändring via Customer Portal medan verksamheten har inaktiverat den
    • Meddelande: Prenumerationsplanändring för kundportalen är inaktiverad.
  • PLAN_CHANGE_NOT_ALLOWED_FOR_SCHEDULED_CANCELLATION
    • Utlösare: Planändring försökt på prenumeration schemalagd för uppsägning
    • Meddelande: Prenumeration schemalagd för uppsägning
  • SCHEDULE_PLAN_CHANGE_FOR_CUSTOMER_PORTAL_DISABLED
    • Utlösare: Schemaläggning av planändring via Customer Portal medan verksamheten har inaktiverat den
    • Meddelande: Schemaläggning av planändringar är inaktiverad för denna verksamhet.
  • SCHEDULED_PLAN_CHANGE_EXISTS
    • Utlösare: Skapar en schemalagd planändring när en redan existerar
    • Meddelande: En schemalagd planändring existerar redan för denna prenumeration. Vänligen avbryt den befintliga schemalagda ändringen innan du skapar en ny.
  • SCHEDULED_PLAN_CHANGE_NOT_FOUND
    • Utlösare: Refererar eller avbryter en schemalagd planändring som inte existerar
    • Meddelande: Ingen schemalagd planändring hittades för denna prenumeration.
  • SUBSCRIPTION_EXPIRED
    • Utlösare: Fakturera förbi ends_at
    • Meddelande: Prenumeration löpte ut kan inte skapa nya avgifter
  • SUBSCRIPTION_INACTIVE
    • Utlösare: Status ≠ ACTIVE
    • Meddelande: Prenumerationen är inte aktiv
  • SUBSCRIPTION_NOT_ON_DEMAND
    • Utlösare: Förväntar on-demand men fick fast intervall
    • Meddelande: Prenumerationen är redan inte on demand
  • SUBSCRIPTION_PAYMENT_RETRY_LIMIT_EXCEEDED
    • Utlösare: Prenumerationsbetalningsförsök översteg maximalt antal försök
    • Meddelande: Högsta gräns för 10 försök överskriden för denna prenumeration

Produkter, Kundvagn & Varumärken

  • BRAND_MISMATCH
    • Utlösare: Kundvagnens produkter tillhör olika varumärken
    • Meddelande: Alla artiklar i produktkundvagnen bör tillhöra samma varumärke
  • BRAND_NOT_ENABLED
    • Utlösare: Varumärket är inaktiverat eller inte aktivt
    • Meddelande: Varumärket som anges är inte aktiverat
  • BRAND_SUBMISSION_NOT_ENABLED
    • Utlösare: Varumärkesverifieringsominsändningsfunktionen inte aktiverad
    • Meddelande: Varumärkesverifieringsominsändning är inte aktiverad
  • FILE_IN_USE
    • Trigger: En fil för en digital produkt tas bort trots att den fortfarande refereras av aktiva behörighetsbeviljanden
    • Message: Den digitala filen refereras av aktiva behörighetsbeviljanden
  • INVALID_SUGGESTED_PRICE
    • Utlösare: PWYW-pris < minimipris
    • Meddelande: Föreslaget pris kan inte vara lägre än minimipriset. Vid pay what you want, betraktas priset som det minsta accepterade beloppet
  • LOCALIZED_PRICE_ALREADY_EXISTS
    • Utlösare: Ett lokaliserat pris finns redan för denna produkt och land/valuta
    • Meddelande: Ett lokaliserat pris för denna produkt och land/valuta finns redan
  • LOCALIZED_PRICE_DUPLICATES_BASE
    • Utlösare: Lokaliserat pris duplicerar produktens basvaluta/land
    • Meddelande: Lokaliserat pris duplicerar produktens basvaluta/land
  • LOCALIZED_PRICE_SHAPE_MISMATCH
    • Utlösare: Formen på det lokaliserade priset matchar inte produktens pricing_mode
    • Meddelande: Formen på det lokaliserade priset matchar inte produktens pricing_mode
  • MISSING_PRODUCT_INFORMATION
    • Utlösare: Produkten finns men obligatorisk information saknas
    • Meddelande: Produkt existerar men annan obligatorisk information saknas eller är ogiltig
  • PAY_AS_YOU_WANT_AMOUNT_REQUIRED
    • Utlösare: Pris saknas för PWYW-produkt
    • Meddelande: Belopp är obligatoriskt för pay as you want-produkt
  • PRODUCT_CART_EMTPY
    • Utlösare: Tom produktkorg inlämnad
    • Meddelande: produkt_kundvagn är tom (felkoden är avsiktligt stavad EMTPY för att matcha det exakta värdet som API:n returnerar)
  • PRODUCT_COLLECTION_IS_DELETED
    • Utlösare: Användning av en produktkollektion som har tagits bort
    • Meddelande: Inget meddelande
  • PRODUCT_COLLECTION_MUST_HAVE_PRODUCTS
    • Utlösare: Tar bort den sista produkten (eller sista gruppen med produkter) från en kollektion
    • Meddelande: Kan inte ta bort den sista produkten i en kollektion. Arkivera kollektionen istället.
  • PRODUCT_IS_DELETED
    • Utlösare: Produkt mjukraderad
    • Meddelande: Inga meddelanden
  • PRODUCT_PRICING_MODE_REQUIRED
    • Utlösare: Lägger till lokaliserade priser innan produktens pricing_mode är satt
    • Meddelande: Produkt pricing_mode måste ställas in innan lokaliserade priser läggs till
  • SLUG_ALREADY_TAKEN
    • Utlösare: Det begärda produkt slug / korta URL är redan i användning
    • Meddelande: Slug är redan upptaget
  • UNABLE_TO_EDIT_PRIMARY_BRAND
    • Utlösare: Försök att uppdatera primärt varumärke via vanlig API
    • Meddelande: Primärt varumärke kan inte uppdateras via denna API-slutpunkt.

Rabatter

  • DISCOUNT_ALREADY_USED_ON_SUBSCRIPTION
    • Utlösare: Åter-tillämpa en rabatt som redan har använts för denna prenumeration
    • Meddelande: Denna rabatt har redan använts på denna prenumeration
  • DISCOUNT_CODE_ALREADY_EXISTS
    • Utlösare: Dubblett av rabattkod skapad
    • Meddelande: Rabattkod finns redan
  • DISCOUNT_CODE_EXPIRED
    • Utlösare: Rabattkod förbi dess expires_at datum
    • Meddelande: Rabattkod har gått ut
  • DISCOUNT_CODE_USAGE_LIMIT_EXCEEDED
    • Trigger: Rabattkoden används igen efter att usage_limit har nåtts
    • Message: Användningsgränsen kan inte vara mindre än times_used / Rabattkoden har nått användningsgränsen
    • Note: Terminal — koden är förbrukad. Försök inte igen.
  • DISCOUNT_CONCURRENT_REDEMPTION
    • Trigger: En annan inlösen av samma kod höll låset på raden för användningsgränsen för länge (HTTP 503)
    • Message: Rabatten löses in samtidigt; försök igen
    • Note: Tillfälligt fel. Koden kan fortfarande ha kapacitet, så det är säkert att försöka igen. Visa inte detta för kunden som “koden är förbrukad”.
  • DISCOUNT_CURRENCY_OPTION_INVALID
    • Trigger: Ogiltig currency_options vid skapande eller uppdatering
    • Message: En fast rabatt kräver minst ett valutaalternativ med en lösbar standardinställning / Dubbletter av valutaalternativ tillåts inte / Endast ett valutaalternativ får vara markerat som standard
  • DISCOUNT_CUSTOMER_NOT_ELIGIBLE
    • Trigger: Kunden uppfyller inte kodens customer_eligibility (first_time, existing eller finns inte på en specific-kods lista över tillåtna kunder)
    • Message: Kunden är inte berättigad till denna rabattkod
  • DISCOUNT_MINIMUM_SUBTOTAL_NOT_MET
    • Trigger: Varukorgens delsumma ligger under minimum_subtotal som konfigurerats för checkout-valutan
    • Message: Varukorgens delsumma ligger under rabattens minsta erforderliga delsumma
  • DISCOUNT_NOT_YET_ACTIVE
    • Trigger: Koden används före dess starts_at-datum
    • Message: Rabattkoden är inte aktiv ännu (starts_at ligger i framtiden)
  • DISCOUNT_PER_CUSTOMER_USAGE_LIMIT_EXCEEDED
    • Trigger: Kunden har redan löst in koden per_customer_usage_limit gånger
    • Message: Användningsgränsen per kund har överskridits för denna rabattkod
  • DISCOUNT_NOT_APPLICABLE_TO_NEW_PRODUCT
    • Trigger: Planen ändras till en produkt som den befintliga rabatten inte gäller för
    • Message: Rabatten gäller inte för den nya planens produkt
  • DISCOUNT_NOT_AVAILABLE_FOR_ON_DEMAND
    • Trigger: Koden tillämpas på en on-demand-prenumeration
    • Message: Rabattkupongen är inte tillgänglig för on-demand-prenumerationer
  • DISCOUNT_NOT_AVAILABLE_FOR_PRODUCT
    • Trigger: Koden tillämpas på orelaterade produkter
    • Message: Rabattkupongen är inte tillgänglig för denna produkt
  • INVALID_DISCOUNT_CODE
    • Trigger: Koden finns inte / gäller inte
    • Message: Ogiltig rabattkod / Rabattkoden kan inte tillämpas på någon produkt i varukorgen
  • INVALID_PERCENTAGE
    • Trigger: Procentbelopp > 100 % (eller 10 000 baspunkter)
    • Message: Procentbeloppet kan inte vara större än 10000 / Rabattkodens belopp kan inte vara större än 100 %
  • UNSUPPORTED_DISCOUNT_TYPE
    • Trigger: En rabattyp som inte stöds. percentage och flat stöds båda; rabatter med belopp per enhet stöds inte.
    • Message: Endast procentuella och fasta rabattkoder stöds

Licensnycklar

  • ACTIVATION_LIMIT_LESS_THAN_CURRENT_AMOUNT
    • Trigger: Aktiveringar av licensnyckel: ny gräns < befintligt antal instanser
    • Message: Den nya aktiveringsgränsen kan inte vara mindre än det aktuella antalet instanser
  • INACTIVE_LICENSE_KEY
    • Trigger: Nyckelstatus ≠ ACTIVE
    • Message: Licensnyckeln är inte aktiv
  • LICENSE_KEY_LIMIT_REACHED
    • Trigger: Aktiveringar = gräns
    • Message: Licensnyckelns aktiveringsgräns har nåtts
  • LICENSE_KEY_NOT_FOUND
    • Trigger: Instans-ID eller nyckel-ID är ogiltigt
    • Message: Licensnyckelns instans hittades inte eller tillhör inte denna licensnyckel
  • NO_EXPIRY_ON_SUBSCRIPTION_LICENSE_KEYS
    • Trigger: Försök att ange utgångsdatum för en prenumerationsbaserad nyckel
    • Message: Det går inte att ange ett utgångsdatum för en prenumerationsbaserad licensnyckel

Användningsbaserad fakturering och mätare

  • DUPLICATE_METER_IDS_IN_REQUEST
    • Trigger: Samma mätar-ID förekommer flera gånger i begäran
    • Message: Dubbletter av mätar-ID:n tillåts inte
  • INVALID_QUANTITY
    • Trigger: Ogiltig kvantitet angavs för användningsbaserad prissättning
    • Message: Endast 1 kvantitet tillåts i produkter med användningsbaserat pris
  • METER_IS_DELETED
    • Trigger: Försök att använda en borttagen mätare
    • Message: Mätaren har redan tagits bort
  • MISSING_METER_IDS
    • Trigger: Listan med mätar-ID:n är tom eller innehåller ogiltiga ID:n
    • Message: Ett eller flera mätar-ID:n finns inte:

Kreditbaserad fakturering

  • CREDIT_ENTITLEMENT_IS_DELETED
    • Trigger: Försök att använda ett kredittillgodohavande som har tagits bort
    • Message: Kredittillgodohavandet har redan tagits bort
  • CREDIT_ENTITLEMENT_NAME_ALREADY_EXISTS
    • Trigger: Ett kredittillgodohavande skapas med ett namn som redan finns
    • Message: Det finns redan ett kredittillgodohavande med detta namn
  • OVERAGE_LIMIT_EXCEEDED
    • Trigger: Ett användnings- eller kreditavdrag skulle överskrida den konfigurerade övertrasseringsgränsen
    • Message: Övertrasseringsgränsen har överskridits

Plånbok

  • INSUFFICIENT_WALLET_FUNDS
    • Trigger: Plånbokssaldo < debiteringsbelopp
    • Message: Otillräckliga medel i plånboken
  • NEGATIVE_BALANCE_ADJUSTMENT
    • Trigger: Försök att göra plånbokssaldot negativt
    • Message: Plånbokssaldot får inte bli negativt

Valuta, skatt och region

  • EXCHANGE_RATE_NOT_FOUND
    • Trigger: Ingen växelkurs för from → to-valutapar
    • Message: Växelkurs hittades inte för konvertering från valuta till valuta
  • INVALID_TAX_ID
    • Trigger: VAT/GST/TIN kunde inte valideras
    • Message: Skatte-ID:t är ogiltigt
  • REQUEST_AMOUNT_BELOW_MINIMUM
    • Trigger: Belopp < produktens minimum
    • Message: Beloppet kan inte vara mindre än det minsta belopp som angetts för produkten
  • TOTAL_PAYMENT_AMOUNT_BELOW_MINIMUM_AMOUNT
    • Trigger: Den sammanlagda totalsumman i varukorgen < gatewayens minimum
    • Message: Ett minimibelopp på krävs för att behandla betalningen
  • UNSUPPORTED_BILLING_CURRENCY
    • Trigger: Den begärda faktureringsvalutan stöds inte för denna prenumeration
    • Message: Faktureringsvaluta som inte är USD stöds inte för prenumerationer
  • UNSUPPORTED_COUNTRY
    • Trigger: Geografiskt område stöds ännu inte
    • Message: Landet stöds för närvarande inte
  • UNSUPPORTED_CURRENCY
    • Trigger: Produktens eller tilläggets valuta är inte en valuta som Dodo Payments kan debitera i. Baspriser kan anges i valfri debiterbar valuta, så detta innebär vanligtvis att valutakoden är ogiltig eller ännu inte stöds.
    • Message: Valutan stöds för närvarande inte / För närvarande stöds endast produkter i USD och INR / Endast USD och INR stöds för tilläggspris / Endast USD eller INR kan begäras för billing_currency / Valuta stöds inte / Oväntad valuta för indiska kortprenumerationer
  • UNSUPPORTED_TAX_CATEGORY
    • Trigger: Skattekategoristrängen finns inte i enum
    • Message: Kategorien stöds för närvarande inte

Validering och begäranden

  • DUPLICATE_LINE_ITEMS_IN_REQUEST
    • Trigger: Samma item_id förekommer två gånger i items[]
    • Message: Dubbletter av item_ids har angetts i items-arrayen
  • INVALID_QUERY_PARAMS
    • Trigger: Ömsesidigt uteslutande eller felaktigt formaterade query-parametrar
    • Message: Query-parametrar får endast innehålla antingen time_frame eller (start, end)
  • INVALID_REQUEST_BODY
    • Trigger: Felaktigt formaterad JSON eller schemaöverträdelse
    • Message: Begärans body är ogiltig. Kontrollera dina request headers och ditt objekt.
  • INVALID_REQUEST_PARAMETERS
    • Trigger: Felaktig semantik (t.ex. datum i det förflutna)
    • Message: Det går inte att ändra next_billing_date till en tidpunkt i det förflutna
  • MAXIMUM_KEYS_REACHED
    • Trigger: Metadata/custom-fields överskred 50 par
    • Message: Fler än 50 nyckel-värdepar

Allmänt och system

  • INTEGER_CONVERSION_FAILURE
    • Trigger: Alla heltalskonverteringar ↔ sträng-/decimalvärden som misslyckas på serversidan
    • Message: Fel vid heltalskonvertering
  • INTERNAL_SERVER_ERROR
    • Trigger: Fångas inte upp av undantag; du bör logga detaljer på serversidan
    • Message: Inget offentligt meddelande (generiskt 500-fel)
  • NOT_FOUND
    • Trigger: Generiskt 404-fel för en resurs som saknas
    • Message: Objektet hittades inte (eller mer specifikt)
  • TOO_MANY_REQUESTS
    • Trigger: Hastighetsbegränsning på 429
    • Message: Inga meddelanden
  • UNSUPPORTED_ACTION
    • Trigger: Åtgärd stöds inte för resurstypen
    • Message: Det går inte att ändra planer för användningsbaserade prenumerationer

Bästa praxis

  1. Hantera alltid fel på ett smidigt sätt i din applikation
  2. Implementera korrekt felloggning
  3. Använd lämpliga felmeddelanden för slutanvändare
  4. Implementera återförsökslogik för tillfälliga fel
  5. Kontakta supporten vid olösta problem

Support

Kontakta vårt supportteam på support@dodopayments.com om du behöver ytterligare hjälp med felkoder eller integrationsproblem.
Senast ändrad 6 augusti 2026