Naar de inhoud springen

Handleidingen

Tegoed

Het saldo, de mutatiegeschiedenis en de facturen leest u via zowel de API als MCP. Betalen met een kaart - eenmalig of automatisch - loopt altijd via een Stripe Checkout-link die een mens afrondt; de API zelf belast nooit uit zichzelf een kaart. Hetzelfde geldt voor het optionele maandabonnement.

Bedragen zonder btw, hellers, de taal van omschrijvingen

Elk bedrag in deze API is een geheel getal in HELLERS en exclusief btw - volai is btw-plichtig, maar btw wordt pas berekend wanneer u het tegoed met een kaart opwaardeert (zie /cenik). Omschrijvingen van mutaties (GET /v1/credit/ledger) stelt de API in het Engels samen op basis van het mutatietype - de opgeslagen Tsjechische notitie wordt nooit verstuurd, in geen enkel veld.

Saldo, looptijd en meldingen

GET /v1/balance geeft het huidige saldo plus twee extra berekeningen TERUG ALS AANVULLING (bestaande clients die alleen balanceHal/balanceCzk/currency lezen, blijven werken): runway (dailyAverageHal - het recente gemiddelde dagelijkse verbruik, runwayDays - hoeveel dagen het saldo in dit tempo meegaat, null als het niet te berekenen is) en notice - dezelfde melding die u op de overzichtspagina van het portaal ziet, null als er geen is. Er zijn acht mogelijke vormen van notice: {kind:"unknown"} (te weinig gegevens voor een schatting), {kind:"empty"} (saldo nul), {kind:"number_fee",feeHal,dueAt} (een maandelijks tarief voor spraaknummers of mobiele nummers vervalt binnen 3 dagen en het saldo dekt het niet; feeHal is de som van al die tarieven, dueAt het vroegste vervalmoment; wordt niet teruggegeven zolang automatisch opwaarderen aan staat), {kind:"runway",days} (het saldo raakt in het huidige tempo op over days dagen) en vier vormen die alleen voorkomen bij een account met een maandabonnement: {kind:"subscription_exhausted_topup",renewsAt} (het maandtegoed van deze periode is op en het abonnement draait in opwaardeermodus, dus verder gebruik wordt betaald uit opgewaardeerd tegoed; renewsAt is het einde van de periode in ms, wanneer het volgende maandtegoed binnenkomt), {kind:"subscription_cap_reached",renewsAt} (het maandtegoed is op, het abonnement draait met de limiet en opgewaardeerd tegoed dekt niets, dus betaalde acties stoppen tot renewsAt of tot u handmatig opwaardeert) en {kind:"subscription_past_due"} (de verlenging van het abonnement is mislukt, de opgeslagen kaart kon niet worden belast; betaal de verlenging in het portaal of vervang de kaart) en {kind:"subscription_runway",renewsAt,runsOutAt} (het saldo raakt op voordat het volgende maandtegoed op renewsAt binnenkomt; runsOutAt is de schatting in ms, gebaseerd op het voorzichtige tempo van het abonnement, hetzelfde als het uitzicht op het maandtegoed op de abonnementskaart in het portaal: het hoogste van het 28-daags gemiddelde (alleen bij een volledige tegoedgeschiedenis), het gemiddelde verbruik over de laatste 7 Praagse dagen zonder nummertarieven en het gemiddelde sinds het begin van de periode (na de eerste week); runway houdt het 28-daags gemiddelde aan; een abonnee krijgt deze vorm in plaats van runway, en niets zolang automatisch opwaarderen aan staat). renewsAt is in ms (epoch), hetzelfde moment als subscription.periodEnd in dezelfde respons, waar het een ISO 8601-tekenreeks is; het formaat van geen van beide velden verandert. Bij een abonnement dat na de betaalde periode eindigt, bevatten subscription_exhausted_topup, subscription_cap_reached en subscription_runway ook cancelAtPeriodEnd: true: er volgt geen verlenging, renewsAt is het einde van het abonnement en er komt geen nieuw maandtegoed bij (met de limiet kunt u dan alleen verder door op te waarderen); zonder opzegging staat het veld niet in de melding. Bij een account met een maandabonnement bevat de respons ook subscription (de status van het abonnement, anders null) en topupBalanceHal (alleen opgewaardeerd tegoed); balanceHal blijft de som van maandtegoed en opgewaardeerd tegoed, zie het hoofdstuk Maandabonnement.

Mutatiegeschiedenis

GET /v1/credit/ledger?limit - nieuwste eerst, ZONDER cursor (alleen limit, 1-200, standaard 50) - er is helemaal geen cursor, dus via de API zijn alleen de nieuwste 200 mutaties bereikbaar; de pagina /kredit van het portaal en de facturen bevatten de volledige geschiedenis. Elke regel bevat type (bonus, topup, call_out, call_in, sms, number_fee, agent, refund, admin, setup_revision - een extra revisieronde bij een sleutelklare installatie bovenop wat het pakket omvat, subscription_grant - het bijschrijven van het tegoed van het maandabonnement en subscription_expire - het vervallen van het ongebruikte restant), amountHal (positief voor een bijschrijving, negatief voor een afschrijving), grossHal (het bedrag inclusief btw bij opwaarderen met kaart, anders null) en een Engelse description die uit het type wordt samengesteld - bij number_fee ook met het nummer waarvoor het tarief geldt. Een afschrijving die door het maandtegoed is gedekt, bevat ook fromSubscriptionHal - het deel van de afschrijving dat het maandtegoed heeft betaald; andere mutaties hebben dit veld niet. De add-on mobiel nummer verschijnt in de geschiedenis als number_fee (de eerste periode bij aankoop van het nummer en elke verlenging na 30 dagen) en sms (een bericht verstuurd vanaf een mobiel nummer, tegen het tarief per segment op de prijzenpagina); wanneer de provider een vanaf een mobiel nummer verzonden sms later afwijst, komt het tegoed terug als een refund-regel.

Opwaarderen met kaart

POST /v1/credit/topup {amountCzk} geeft {checkoutUrl} terug - een Stripe Checkout-link die een MENS in een browser opent. Er wordt niets afgeschreven voordat die persoon de betaling zelf afrondt. Een volledig factuuradres (PUT /v1/account/billing) is VOORAF vereist - zonder kan geen geldige factuur worden uitgegeven (billing_address_required). Ondersteunt Idempotency-Key - veilig opnieuw te proberen na een time-out zonder twee betalingen te veroorzaken.

Automatisch opwaarderen

Via de API kan automatisch opwaarderen alleen worden GELEZEN, UITGEZET en kan de DREMPEL worden gewijzigd - aanzetten en het BEDRAG wijzigen gaan uitsluitend via Stripe Checkout, nooit via een directe schrijfactie.

Waarom niet gewoon "enabled: true"

Als er al een kaart is opgeslagen, zou een kale {"enabled": true} het afschrijven ZONDER MENS BIJ DE KAART in gang zetten - precies wat we willen vermijden ("geld beweegt alleen met een mens bij de kaart"). Daarom weigert PATCH /v1/credit/auto-topup zowel enabled: true als amountHal met een eigen melding, niet met een algemene fout over een onbekend veld.

Lezen en uitzetten

GET /v1/credit/auto-topup geeft {enabled, thresholdHal, amountHal, card: {brand, last4} | null, spentThisMonthHal, monthlyCapHal, disabledReason} terug - ZONDER het kaartnummer, alleen het merk en de laatste vier cijfers. PATCH {enabled: false} zet het direct uit, PATCH {thresholdHal} wijzigt alleen de drempel (die moet een van de aangeboden waarden zijn en lager dan het opgeslagen bedrag, anders zou het saldo meteen na een opwaardering weer onder de drempel zakken).

Aanzetten en het bedrag wijzigen

POST /v1/credit/auto-topup/setup {thresholdHal, amountHal} geeft {checkoutUrl} terug - het afronden van Checkout schrijft METEEN amountHal af als eerste opwaardering, en pas daarmee wordt de kaart opgeslagen voor toekomstige automatische opwaarderingen. Het werkt ook met een al eerder opgeslagen kaart - het is de enige manier om automatisch opwaarderen aan te zetten of het bedrag te wijzigen. Na Checkout komt de browser terug op de TSJECHISCHE portaalpagina (/kredit?automat=zapnuto), ook voor een Engelstalige klant - een bekende tekortkoming, geen fout in uw integratie.

Kaart

POST /v1/credit/auto-topup/card geeft een Checkout-link (setup-modus, er wordt niets afgeschreven) om de opgeslagen kaart te vervangen. DELETE /v1/credit/auto-topup/card koppelt de kaart METEEN los - de hele configuratie wordt verwijderd (drempel en bedrag inbegrepen), niet alleen de kaart; opnieuw aanzetten kan alleen via .../setup, dat meteen een eerste opwaardering afschrijft. Na Checkout komt de browser terug op de TSJECHISCHE portaalpagina (/kredit?karta=zmenena), ongeacht de taal van het account - dezelfde bekende tekortkoming als hierboven.

Limieten

Twee ONAFHANKELIJKE limieten: maximaal 10.000 CZK aan bijgeschreven tegoed per kalendermaand, en maximaal 4 opwaarderingen per KALENDERDAG - ongeacht hoe vaak het saldo onder de drempel zakt. Het overschrijden van een van beide zet automatisch opwaarderen uit (disabledReason monthly_cap respectievelijk daily_cap); spentThisMonthHal/monthlyCapHal in de respons laten zien hoeveel van de maandlimiet over is.

MCP: get_auto_topup (lezen) en disable_auto_topup (uitzetten) - aanzetten, het bedrag wijzigen en de kaart zitten niet in MCP, om dezelfde reden als enabled: true in REST hierboven.

Maandelijkse bestedingslimiet

Een optionele beveiliging tegen een onverwacht hoge rekening: u stelt in hoeveel gesprekken, sms en de spraakagent in één kalendermaand (Praagse tijd) mogen kosten. De functie staat alleen aan voor een account dat een limiet heeft ingesteld; zonder limiet verandert er niets en wordt het verbruik van de maand alleen geteld.

GET /v1/account/spend-cap geeft {spendCap: {enabled, capHal, warnShare, inboundAboveCap, month, monthSpendHal, remainingHal, reached, updatedAt}} terug. Zonder limiet is enabled gelijk aan false en zijn de limietvelden null, maar monthSpendHal krijgt u altijd. Bedragen zijn in hele hellers exclusief btw.

PUT /v1/account/spend-cap {capHal, warnShare?, inboundAboveCap?} stelt de limiet in of wijzigt die: capHal is in hele hellers van 5.000 (50 CZK) tot 100.000.000 (1.000.000 CZK), warnShare is het aandeel van de limiet van 0,5 tot 0,99 (standaard 0,8) waarop de waarschuwingsmail wordt verstuurd, en inboundAboveCap: true laat de agenten inkomende gesprekken ook boven de limiet beantwoorden (standaard false; bij een wijziging zonder dit veld blijft de opgeslagen waarde gelden). DELETE /v1/account/spend-cap verwijdert de limiet; het verwijderen van een niet ingestelde limiet is geen probleem.

Zodra de limiet is bereikt, worden nieuwe uitgaande gesprekken, beltonen, testgesprekken en sms geweigerd met spend_cap_reached (HTTP 402), er wordt niets afgeschreven en opnieuw proberen helpt niet tot de maand voorbij is of u de limiet verhoogt of verwijdert. Een inkomend agentgesprek eindigt na één zin en kost niets, tenzij inboundAboveCap true is. Er wordt een e-mail verstuurd wanneer warnShare is bereikt en wanneer de limiet is bereikt, elk hooguit één keer per maand.

Wat de limiet NIET tegenhoudt: gesprekken die al bezig zijn (de prijs wordt na het gesprek afgeschreven, dus de maand kan boven de limiet eindigen met de prijs daarvan, evenals met gesprekken die na middernacht zijn geboekt), doorschakelen zonder agent, en nummertarieven, de sleutelklare ronde en het maandabonnement, die niet meetellen voor de limiet. Bij een account met een maandabonnement telt ook het verbruik mee dat door het maandtegoed is gedekt. Een nummer in de modus Eigen SIP-centrale met inboundAboveCap: true blijft in de SIP-proxy, dus de limiet houdt uitgaande gesprekken vanuit de centrale niet tegen.

MCP: get_spend_cap, set_spend_cap en clear_spend_cap roepen dezelfde service aan als REST en het portaal (het onderdeel Maandelijkse bestedingslimiet in Tegoed). set_spend_cap laat de agent het bedrag vóór en na het opslaan aan de klant herhalen.

Maandabonnement

Een optioneel abonnement: elke maand wordt de prijs van het gekozen niveau van de opgeslagen kaart afgeschreven en wordt een maandtegoed in CZK bijgeschreven, dat wordt besteed volgens het gewone tarievenoverzicht. Tarieven en facturering per seconde veranderen niet, het abonnement is een laag daaroverheen. Er zijn drie niveaus en tier is hun prijs in CZK exclusief btw: "490", "990" en "1990"; de prijs en het tegoed van elk niveau geeft GET /v1/subscription terug in het veld tiers.

Wanneer het aanbod niet beschikbaar is

Het abonnementsaanbod kan voor alle accounts of slechts voor sommige zijn uitgeschakeld. Zolang het voor uw account uit staat, geeft GET /v1/subscription available: false terug en mislukt het aanzetten met pausal_unavailable (404). Een abonnement dat al loopt, blijft doorlopen, ook als het aanbod wordt uitgeschakeld.

Twee soorten tegoed

Maandtegoed komt uit het abonnement, vervalt aan het einde van de periode en wordt niet terugbetaald. Opgewaardeerd tegoed (opwaarderingen, de welkomstbonus, correcties) vervalt niet en is zoals voorheen terugbetaalbaar. Het accountsaldo - balanceHal in GET /v1/balance, in het portaal en in elke controle (minimum voor een gesprek, schuldlimiet, waarschuwingen) - is de som van beide soorten. Alleen opgewaardeerd tegoed staat in topupBalanceHal, het resterende maandtegoed in subscription.monthlyRemainingHal. Een schuld kan alleen in opgewaardeerd tegoed ontstaan.

Volgorde van besteding

Elke afschrijving wordt eerst uit het maandtegoed betaald en de rest uit opgewaardeerd tegoed - gesprekken per seconde, de agent, tarieven voor nummers en mobiele nummers, sms, beltonen van de poort en uitgaande taakgesprekken. De verdeling is atomair en wordt vastgelegd in het grootboek: een afschrijving die door het maandtegoed is gedekt, bevat fromSubscriptionHal (het deel dat het maandtegoed heeft betaald). Correcties van de eigenaar (admin, ook negatieve) en de terugbetaling voor een niet verzonden sms (refund) raken alleen opgewaardeerd tegoed.

Periode en bijschrijving

Een periode duurt één maand vanaf de geslaagde afschrijving (31 januari geeft 28 februari). Het maandtegoed wordt pas bijgeschreven nadat de betaling is bevestigd, met een subscription_grant-regel, en het bijschrijven is idempotent op betaal-id. Als het account op dat moment een schuld in opgewaardeerd tegoed heeft, wordt die eerst uit het nieuwe maandtegoed afgelost, zodat opgewaardeerd tegoed niet negatief blijft.

Vervallen

Het ongebruikte restant van het maandtegoed vervalt op de verlengingsdag (een subscription_expire-regel met een negatief bedrag), wanneer het abonnement eindigt, of door een automatische veiligheidscontrole wanneer een periode meer dan 36 uur geleden zonder verlenging is afgelopen. Als de afschrijving mislukt, is het restant al vervallen en komt er geen nieuw tegoed bij; tot het is betaald draait het account alleen op opgewaardeerd tegoed.

Keuze na uitputting

Voor het aanzetten van het abonnement is een exhaustionMode nodig, zonder standaardwaarde. topup: zodra het maandtegoed op is, wordt opgewaardeerd tegoed gekocht met de opgeslagen kaart - het is het huidige automatisch opwaarderen met dezelfde limieten en e-mails. cap: er wordt niets gekocht, uitgaande gesprekken, sms en nummeraankopen worden geweigerd met subscription_cap_reached (HTTP 402), en bij een saldo onder nul stoppen ook inkomende gesprekken, doorschakeling en SIP-toegang (stop bij nul; na het opwaarderen of met het nieuwe maandtegoed wordt alles hervat). Automatisch opwaarderen kan niet worden aangezet met een limiet (subscription_cap_active); overschakelen naar de limiet zet het uit. Het meeste dat u in een maand met een limiet betaalt, is de prijs van het abonnement.

Niveau wijzigen, opzeggen, verlengen

Een niveauwijziging (omhoog of omlaag) gaat in vanaf de volgende periode, zonder verrekening. Opzeggen is cancelAtPeriodEnd: true: het tegoed blijft geldig tot het einde van de periode, vervalt dan en de status wordt canceled; een opzegging kan tot het einde van de periode worden ingetrokken. Via REST en MCP kunt u het niveau niet verhogen, een opgezegd abonnement niet hernieuwen en niet overschakelen op kopen met de kaart - die stappen verhogen of starten terugkerende afschrijvingen, dus ze geven subscription_confirmation_required terug met een confirmUrl die een mens opent en in het portaal bevestigt (24 uur geldig).

Advies vóór verlenging

Drie dagen voor de verlenging (uiterlijk één dag ervoor) komt er een e-mail, maar alleen wanneer betalen per seconde of een lager niveau bij uw tot dan toe gemaakte verbruik minder zou kosten. Dezelfde regel geldt als voor het advies in de verlengingsmail en in het portaal: een andere optie moet minstens 50 CZK en 5% goedkoper zijn. De schatting voor de hele periode gebruikt het hoogste van het tempo sinds het begin van de periode en over de laatste 7 dagen, en ligt nooit lager dan het verbruik van de laatste 30 dagen waarop het portaal adviseert, zodat na de klik de rijen Abonnementsniveau en Abonnement opzeggen nooit antwoorden dat uw niveau past. De e-mail vermeldt de exacte datum en tijd van de verlenging en komt hooguit één keer per periode, nooit bij een abonnement dat aan het einde van de periode wordt opgezegd, bij een geplande niveauwijziging, zonder opgeslagen kaart of in afwachting van betaling. De knop opent de rij Abonnement opzeggen (/kredit?pausal=zrusit) of de rij Abonnementsniveau (/kredit?pausal=stupen) in het portaal. De verlengingsmail adviseert daarna opnieuw op basis van het werkelijke verbruik van de hele periode, dus het advies kan afwijken.

Niet-betaalde verlenging

De afschrijving van de opgeslagen kaart wordt geprobeerd op de verlengingsdag, na 2 dagen en na 4 dagen. Na de eerste mislukking is de status past_due, brengt een e-mail een link om handmatig te betalen en om de kaart te wijzigen, en is het maandtegoed 0; POST /v1/subscription/pay geeft de link voor handmatige betaling terug. Na de derde mislukking eindigt het abonnement (canceled) en blijven opgewaardeerd tegoed en het account gewoon werken.

Btw en facturen

Prijzen zijn exclusief btw. Het btw-regime wordt vóór elke afschrijving bepaald, dus een betaler uit een ander EU-land met een geverifieerd btw-nummer betaalt zonder Tsjechische btw (verlegging) en de factuur geeft dat weer. volai geeft zelf voor elke betaalde periode een factuur uit (de belastinggrondslag is de prijs van het niveau, niet het tegoed dat is bijgeschreven) en u vindt die in GET /v1/billing/documents.

Verband met de bonus en de eerste opwaardering

Het aanzetten van het abonnement telt als eerste betaling: het ontgrendelt sms vanaf de gedeelde afzender, doorschakelen, een tweede nummer, een mobiel nummer en de kaart voor automatisch opwaarderen, net als een opwaardering. De welkomstbonus blijft opgewaardeerd tegoed.

Terugbetalingen

Maandtegoed wordt niet terugbetaald en vervalt; opgewaardeerd tegoed is zoals voorheen terugbetaalbaar. Opzeggen van het abonnement geeft geen recht op een evenredig deel van de betaalde periode. Het terugbetalen van een abonnementsbetaling (een klacht, een vergissing) wordt handmatig afgehandeld door de eigenaar van volai, niet via de API of MCP.

Het abonnement via REST en MCP

Geld beweegt alleen met een mens bij de kaart. Het aanzetten van het abonnement en handmatig betalen geven alleen een Stripe Checkout-link terug en belasten de kaart nooit rechtstreeks; het verhogen van het niveau, het hervatten van een abonnement dat is ingesteld om te eindigen en het overschakelen op opwaarderen met de kaart vereisen de bevestiging van een ingelogde mens in het portaal.

  • GET /v1/subscription - de status van het abonnement (subscription of null), de niveaucatalogus tiers (id, priceHal, creditHal), topupBalanceHal, available (een nieuw abonnement kan worden gestart: het aanbod staat aan en er loopt geen abonnement), recommendation (de goedkoopste manier om het verbruik van de laatste 30 dagen te betalen en steady, of het verbruik doorlopend is en geen eenmalige piek; null zonder aanbod of zonder 30 dagen geschiedenis) en previousPeriod (de laatste periode met dezelfde cijfers als in de verlengingsmail: usedHal van creditHal, usedPercent, besteding boven het maandtegoed overHal en wat is vervallen expiredHal; alleen zolang het abonnement actief is, null in de eerste periode en wanneer de tegoedgeschiedenis het gebruik niet kan aantonen).
  • POST /v1/subscription/checkout {tier, exhaustionMode, consumerConsent?} - geeft een {checkoutUrl} voor Stripe Checkout terug; het abonnement start zodra die is afgerond. exhaustionMode (topup of cap) is verplicht; een consument zonder bedrijfsnummer moet consumerConsent: true meesturen (anders consumer_consent_required). Het factuuradres moet volledig zijn (billing_address_required). Ondersteunt Idempotency-Key.
  • PATCH /v1/subscription {tier?, cancelAtPeriodEnd?, exhaustionMode?} - het verlagen van het niveau, opzeggen (cancelAtPeriodEnd: true) en overschakelen op de limiet (exhaustionMode: "cap") worden toegepast en geven {subscription} terug. Het verhogen van het niveau, het hervatten van een abonnement dat is ingesteld om te eindigen (cancelAtPeriodEnd: false) en exhaustionMode: "topup" veranderen niets en geven 409 subscription_confirmation_required terug met een confirmUrl.
  • POST /v1/subscription/pay - alleen in de status past_due; geeft een {checkoutUrl} terug om de verlenging handmatig te betalen. Ondersteunt Idempotency-Key.
  • POST /v1/subscription/card - geeft een {checkoutUrl} terug om de opgeslagen kaart van het abonnement te vervangen, er wordt niets afgeschreven. Ondersteunt Idempotency-Key.
  • GET /v1/balance bevat ook subscription (dezelfde vorm als hierboven, anders null) en topupBalanceHal.

MCP: get_subscription (lezen), create_subscription_link (een link om het aan te zetten), update_subscription en cancel_subscription (niveau verlagen, opzeggen, limiet; verhogen, verlengen en kopen met de kaart geven een confirmUrl terug met een zin dat een mens het in het portaal moet bevestigen) en create_subscription_payment_link (handmatige betaling). Kaartvervanging zit niet in MCP, om dezelfde reden als bij automatisch opwaarderen: vanaf hier wordt niets afgeschreven.

Facturen

Een factuur wordt automatisch uitgegeven bij het opwaarderen van tegoed met een kaart (eenmalig of automatisch), bij het betalen van een sleutelklare installatie en als correctiefactuur bij een terugbetaling van een installatie - geen handmatige stap, geen uitgifte via de API.

GET /v1/billing/documents?limit&before - nieuwste eerst, de cursor before (Unix ms, exclusief) is de nextBefore van de vorige pagina. De onderliggende opslag geeft nooit meer dan 100 records per aanroep terug, ook niet als limit om meer vraagt.

GET /v1/billing/documents/{id} geeft {id, number, issuedAt, taxableAt, netHal, vatHal, grossHal, vatRatePercent, reverseCharge, description, customer, paymentRef, pdfUrl} terug - reverseCharge: true voor betalers uit een ander EU-land met een via VIES geverifieerd btw-nummer, die zonder Tsjechische btw betalen. Het veld kind is altijd gevuld - "invoice" voor een gewone factuur (ook voor facturen die vóór het bestaan van het veld zijn uitgegeven), "credit_note" voor een correctiefactuur - automatisch uitgegeven wanneer de oprichter het tarief van een geannuleerde sleutelklare installatie terugbetaalt, genummerd in een eigen reeks OD..., met correctsNumber (het nummer van de oorspronkelijke factuur) en correctionReason (waarom is terugbetaald) erbij; netHal/vatHal/grossHal zijn POSITIEF, ook bij een creditnota, het minteken komt alleen op de PDF.

GET /v1/billing/documents/{id}/pdf downloadt dezelfde factuur als application/pdf - bij elke download vers gegenereerd, niet opgeslagen. Een vreemde of ontbrekende id meldt op beide endpoints dezelfde fout (invoice_not_found), zodat de respons niet kan verraden dat de factuur van iemand anders bestaat.

MCP: list_billing_documents en get_billing_document hebben dezelfde vorm als REST. De PDF is alleen via REST beschikbaar - MCP heeft geen binair kanaal om een bestand over te dragen.

Fouten

  • ledger_unavailable - De mutatiegeschiedenis of het saldo kon nu niet worden gelezen - probeer het zo meteen opnieuw.
  • invalid_amount - Het bedrag van de opwaardering, de drempel of het automatische opwaardeerbedrag is niet een van de aangeboden vaste waarden.
  • billing_address_required - Het factuuradres ontbreekt of is onvolledig - vul het aan in het portaal (/nastaveni) voordat u opwaardeert, anders kan geen geldige factuur worden uitgegeven.
  • stripe_not_configured - Betalingen zijn uitgeschakeld voor deze volai-omgeving - niet specifiek voor uw verzoek.
  • stripe_error - Stripe heeft geweigerd een betaalsessie aan te maken - probeer het zo meteen opnieuw.
  • autotopup_not_configured - Automatisch opwaarderen is nooit via .../setup ingesteld - er valt niets uit te zetten, te wijzigen of een kaart voor te vervangen.
  • invoice_not_found - Er bestaat geen factuur met deze id op het account (of hij hoort bij een ander account - de respons is hetzelfde).
  • spend_cap_reached - De door u ingestelde maandelijkse bestedingslimiet is bereikt: nieuwe uitgaande gesprekken en sms worden geweigerd en er wordt niets afgeschreven. Verhoog of verwijder de limiet met PUT of DELETE /v1/account/spend-cap, anders blijft dit gelden tot het einde van de maand (middernacht in Praag).
  • subscription_cap_reached - De limiet van het abonnement: maandtegoed en opgewaardeerd tegoed zijn allebei op en het account heeft voor de limiet gekozen. Uitgaande gesprekken, sms en nummeraankopen worden geweigerd (HTTP 402) tot de volgende verlenging of een handmatige opwaardering.
  • subscription_exists - Het account heeft al een abonnement; een niveauwijziging, opzeggen en de keuze na uitputting lopen via PATCH /v1/subscription.
  • subscription_missing - Het account heeft geen actief abonnement dat kan worden gewijzigd, opgezegd of handmatig betaald.
  • subscription_canceled - Het abonnement is al beëindigd (status canceled): het kan niet meer worden gewijzigd, opgezegd of handmatig betaald. Start een nieuw abonnement met POST /v1/subscription/checkout.
  • subscription_confirmation_required - Het verhogen van het niveau, het hervatten van een abonnement dat is ingesteld om te eindigen en kopen met de kaart worden alleen door een mens in het portaal bevestigd - de respons bevat een confirmUrl en er is niets gewijzigd.
  • consumer_consent_required - Een consument zonder bedrijfsnummer moet bij het aanzetten van het abonnement uitdrukkelijk verzoeken de dienst te laten ingaan vóór het einde van de herroepingstermijn (consumerConsent: true).
  • pausal_unavailable - Het abonnementsaanbod is momenteel uitgeschakeld voor dit account.
  • invalid_tier - Het niveau dat het abonnement al heeft, wanneer er geen ander niveau is gepland (een niveau waar het al naar overschakelt is geen fout en geldt als gedaan, dus dezelfde PATCH /v1/subscription kan na een storing opnieuw worden verstuurd; de uitzondering is terugkeren naar het huidige niveau, wat de geplande wijziging annuleert: een herhaling heeft niets meer te annuleren); een onbekende waarde buiten "490", "990", "1990" eindigt als validation.
  • subscription_cap_active - Automatisch opwaarderen kan niet worden aangezet met een limiet; schakel eerst de keuze na uitputting in het portaal om naar topup.
  • validation - Specifiek bij PATCH /v1/credit/auto-topup: een poging om het aan te zetten (enabled: true) of amountHal rechtstreeks te wijzigen - gebruik in plaats daarvan POST .../setup.

De volledige foutentabel voor elk endpoint staat in het onderdeel Tegoed van de REST API-referentie.