SAP OData Interview Questions
OData interviews split candidates into two groups fast: those who have only consumed a service from a Fiori app, and those who have built and debugged one. The questions below are drawn from ERPClimb's reviewed bank and are written for the second group — but they are exactly what the first group gets asked.
Expect the mechanics first: entity types and entity sets, the metadata document, query options like $filter and $expand, and how CRUD maps to the generated provider classes. Then the scenarios: a service that returns 500 with no message, a breakpoint that never stops, a list service that dies on real data volumes, a key that cannot find a material that obviously exists.
Every answer keeps the order that works in a real interview — what you would check, in which tool, and what that result would tell you next. Naming the right error log without being prompted is worth more than any definition.
What interviewers actually probe
Error analysis under pressure
The classic scenario is a failing call with a useless message. Interviewers listen for the frontend versus backend error logs, replaying the request, and checking service registration before touching code.
Performance on real volumes
A list service that is fast in testing and slow in production is a near-guaranteed scenario. Server-side paging, selective fields, and pushing filters to the database are the expected direction.
Why your breakpoint does not stop
Gateway calls do not run in your dialog session. Being able to explain external breakpoints and runtime users separates candidates who have debugged a live service from those who have not.
Conversion exits and keys
The 'material exists but the service says not found' question tests whether you remember that keys arrive in external format and need conversion before the SELECT.
14 questions with full answers
Ordered from foundational to advanced. No sign-in required.
2. What is SEGW?
3. How do you implement $filter on an entity set?
4. A Fiori app calls your OData service but your breakpoint is not stopping. What would you check?
5. An OData list service is slow and returns thousands of records. How would you improve it?
6. What is the difference between entity type and entity set in OData?
7. What is a deep insert?
8. A material detail service returns not found for material 12345, but the material exists in SAP. What could be wrong?
9. How do you design a maintainable SEGW OData service?
10. Where do you check errors for a failing OData service?
11. OData call returns 500 error with no useful message. What do you check?
12. External partner requires OAuth2 on OData. Approach?
13. OData service is slow for large lists. Options?
14. When would you pick RAP over SEGW?
Practise by experience level
The questions above are tagged by the experience levels they are normally asked at, so the same page works for a first interview and for a lead-developer round.
SAP OData Interview Questions FAQ
What is the difference between V2 and V4 OData in SAP?
V2 is the SAP Gateway generation exposed through SEGW with hand-implemented provider methods; V4 is the standard-aligned generation that RAP services produce. V4 tightens the protocol — cleaner expand and filter semantics, leaner metadata — and, in SAP terms, signals that the service comes from a behaviour definition rather than a legacy project.
An OData call returns 500 with no useful message. What do you check?
The error logs before the code: the frontend Gateway error log for requests that never reached the backend, the backend error log for ones that did, then replay the request in the Gateway client to reproduce it under your own control. Only after that do breakpoints and dumps earn their place.
How do you make a slow list service faster?
Move work to the database and shrink the payload: server-side paging with $top and $skip, $select for only the fields the UI shows, filters translated into the underlying selection instead of applied in ABAP afterwards, and care with $expand on high-cardinality associations.
What is a deep insert and when is it used?
A single create call whose payload contains a header and its items together, so the consumer creates a document in one request. The backend must handle the nested structure in one logical unit of work — interviewers probe whether you understand the consistency requirement, not just the payload shape.
Why does a service return not found for a material that exists?
Almost always a conversion-exit problem: the key arrives in external format while the database stores the internal one, so the selection misses. The fix is converting the incoming key — the debugging skill is recognising the symptom before rewriting the query.
Next practice step
Related SAP interview topics
ERP Climb is an independent educational platform and is not affiliated with SAP SE.