De masterdocumentatie van Odoo vermeldt dat de verouderde RPC-databaseservice is verwijderd in Odoo 20. De bredere XML-RPC- en JSON-RPC-API’s zijn sinds versie 19.0 verouderd, maar Odoo 20 verwijdert niet elke verouderde service. Odoo documenteert dat de common- en object-services beschikbaar blijven tot Odoo 22. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API) Integratieteams moeten daarom per externe verbinding vaststellen welke service wordt gebruikt, in plaats van verouderde RPC-ondersteuning te behandelen als één functie met één verwijderingsdatum.

De Americas-evenementpagina van Odoo meldde dat Odoo 20 zou worden uitgebracht tijdens het evenement in San Francisco op 2 en 3 september 2026. (Oxp26 Americas Introduction) Upgradeplanning kan nu al rekening houden met de gedocumenteerde verwijdering van de databaseservice, maar productiebeslissingen moeten worden gecontroleerd aan de hand van de definitieve Odoo 20-releasedocumentatie.

De verwijdering geldt voor een specifieke service

Odoo benoemt `/xmlrpc`, `/xmlrpc/2` en `/jsonrpc` als verouderde eindpunten die vanaf versie 19.0 zijn gedepricieerd. Binnen die API’s wordt de databaseservice in Odoo 20 verwijderd, terwijl de common- en object-services gepland staan om te blijven tot Odoo 22. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API) Een integratie die een behouden service gebruikt, kan na een upgrade naar Odoo 20 blijven werken, maar het eindpunt alleen bevestigt geen compatibiliteit.

Een systeem kan verschillende services gebruiken via de legacy RPC-interface. Een integratiebeoordeling moet daarom zowel het eindpunt als de aangeroepen service vastleggen. Een applicatie alleen beschrijven als een XML-RPC- of JSON-RPC-integratie laat niet zien of deze afhankelijk is van een bewerking die in Odoo 20 is verwijderd. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API)

De voortgezette beschikbaarheid van de common- en object-services is tijdelijk. Odoo plant beide voor verwijdering in Odoo 22. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API) Teams kunnen urgent werk aan aanroepen van de databaseservice scheiden van de migratie van behouden services, maar beide vereisen een plan.

JSON-2 verandert het aanvraagcontract

Odoo documenteert JSON-2 als de vervangende API. Het eindpuntformaat is `/json/2/<model>/<method>`, waarbij model en methode in de URL zijn opgenomen. (Odoo master Docs: Reference External API) Migratie houdt daarom meer in dan alleen het vervangen van het basispad in een bestaande RPC-client. Elke bewerking moet worden gekoppeld aan de juiste model- en methoderoute.

JSON-2 vereist benoemde argumenten in een JSON-aanvraagbody in plaats van positionele RPC-argumenten. (Odoo master Docs: Reference External API) Bestaande wrappers, middleware en gegenereerde clients kunnen ervan uitgaan dat de argumentvolgorde de betekenis bepaalt. Die componenten moeten afzonderlijk worden beoordeeld. Een verouderde aanvraag doorsturen naar het nieuwe eindpunt werkt niet als de client nog steeds positionele parameters opbouwt.

Voor elke gemigreerde bewerking moeten teams het doelmodel, de methode en de door JSON-2 vereiste benoemde argumenten documenteren. (Odoo master Docs: Reference External API) Verzoeken moeten vervolgens worden getest in de relevante Odoo 20-omgeving, vooral wanneer een gedeelde integratiebibliotheek aanroepen voor meerdere applicaties samenstelt. Statistische payloadvergelijkingen kunnen niet bevestigen hoe server of client de volledige aanvraag verwerkt.

Authenticatie moet ook veranderen

JSON-2 gebruikt bearer API-sleutel-authenticatie. (Odoo master Docs: Reference External API) Migratiewerk moet sleutelaanmaak, veilige opslag, afhandeling van autorisatiekoptekens en sleutelvervanging omvatten. Proxies, gateways en clientbibliotheken moeten worden gecontroleerd om te zorgen dat zij het koptekst behouden bij het doorsturen van verzoeken. Ook logging, monitoring en foutafhandeling moeten worden beoordeeld, zodat inloggegevens niet worden blootgesteld.

De documentatie legt de authenticatiemethode vast, maar elke organisatie moet bepalen hoe API-sleutels passen binnen haar toegangsbeheer voor inloggegevens. (Odoo master Docs: Reference External API) Daaronder valt het toewijzen van verantwoordelijkheid voor sleutels, het beheersen waar ze kunnen worden gebruikt en het vastleggen hoe getroffen integraties worden bijgewerkt wanneer een sleutel wordt vervangen.

Binaire velden hebben een afzonderlijke compatibiliteitswijziging

Odoo’s ORM-changelog vermeldt nog een Odoo 20 RPC-wijziging: de representatie van binaire velden voegt `BinaryValue.filename` toe. (Odoo master Docs: Orm Changelog) Dit staat los van het verwijderen van de databaseservice, omdat het de geretourneerde gegevens wijzigt in plaats van de beschikbaarheid van de service. Toepassingen die antwoorden met binaire velden lezen, transformeren of valideren, moeten worden opgenomen in compatibiliteitstests.

De changelog bevestigt dat het lid `filename` wordt toegevoegd, maar het praktische effect hangt af van de client. (Odoo master Docs: Orm Changelog) Tests moeten controleren of strikte schema's, serializers, antwoordvergelijkingen en downstreamtransformaties het extra lid accepteren. Clients die onbekende velden negeren, hebben mogelijk geen aanpassing nodig, maar dat gedrag moet worden geverifieerd in plaats van verondersteld.

Hoe de integratie-audit af te bakenen

Begin met het identificeren van verbindingen die `/xmlrpc`, `/xmlrpc/2` of `/jsonrpc` gebruiken, die Odoo markeert als verouderde eindpunten. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API) De inventaris moet intern ontwikkelde toepassingen, middleware, geplande processen en connectoren van derden omvatten waar configuratie of broncode beschikbaar is. Wijs aan elke verbinding een eigenaar toe, zodat het doel en de status kunnen worden geverifieerd.

Classificeer vervolgens elke verbinding op basis van de verouderde service. Gebruik van de databaseservice vereist een oplossing voor Odoo 20, terwijl gebruik van de common- en objectservice als beschikbaar gedocumenteerd blijft tot Odoo 22. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API) Dit ondersteunt een gefaseerd plan: pak eerst de onverenigbaarheid met Odoo 20 aan en stel daarna migratiedata vast voor de resterende verouderde aanroepen.

Leg voor integraties die naar JSON-2 verhuizen het routepad `/json/2/<model>/<method>`, de benoemde request-argumenten en de bearer API-sleutelauthenticatie vast die de vervangende interface vereist. (Odoo master Docs: Reference External API) Testgevallen moeten succesvolle verzoeken, afgewezen authenticatie, ongeldige benoemde argumenten en applicatieafhandeling van geretourneerde gegevens omvatten. Voeg binaire-veldcases toe waar die velden voorkomen.

Bevestig het uiteindelijke gedrag van Odoo 20

De verwijzingsdetails zijn ontleend aan Odoo's master-ontwikkelaarsdocumentatie, terwijl de aangekondigde releasetiming afkomstig is van een evenementpagina die vermeldt dat Odoo 20 tijdens het Americas-evenement van september 2026 zou worden uitgebracht. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API; Oxp26 Americas Introduction) Controleer vóór de implementatie opnieuw de documentatie voor de uitgebrachte Odoo 20-versie en de exacte editie en build die zij willen gebruiken.

Het gebruik van een verouderd RPC-eindpunt bewijst op zichzelf niet dat een integratie in Odoo 20 zal stoppen met werken, omdat de common- en objectservices gedocumenteerd blijven tot Odoo 22. Omgekeerd bewijst succesvol gebruik op een eerdere versie geen compatibiliteit voor een databaseserviceaanroep na het verwijderen ervan. (Odoo master Docs: Reference External API; Odoo master Docs: Reference External Rpc API)

Checklist voor upgradebeslissingen

Voordat een Odoo 20-upgrade wordt goedgekeurd, moeten besluitvormers een integratieregister opvragen waarin elk verouderd eindpunt, de aangeroepen service, de eigenaar en de geplande oplossing staan vermeld. Afhankelijkheden van de databaseservice moeten een geteste vervanging hebben. Integraties die op de common- of objectservices blijven, moeten een afzonderlijke migratiedatum hebben die hun gedocumenteerde verwijdering in Odoo 22 weerspiegelt. (Odoo master Docs: Reference External API; Odoo master Docs: Referentie Externe Rpc API)

De review moet bevestigen dat JSON-2-implementaties het model en de methode in de URL plaatsen, benoemde JSON-argumenten gebruiken en authenticeren met een bearer API-sleutel. Waar binaire velden aanwezig zijn, moet de test rekening houden met de toevoeging van `BinaryValue.filename`. (Odoo master Docs: Referentie Externe API; Odoo master Docs: Orm Changelog) Deze controles onderscheiden de onmiddellijke verwijdering van de Odoo 20-databaseservice van de latere uitfasering van de resterende legacyservices.