SAP Business One Document Object Type Codes (ObjType)
Almost every cross-document query in SAP Business One filters on an ObjType number: the base document of a row, the type of a journal source, or the object a UDO links to. This list maps the numbers to the document, its tables and the DI API enum.
| ObjType | Object | Header table | Row table | DI API enum |
|---|---|---|---|---|
1 | Chart of accounts | OACT | - | oChartOfAccounts |
2 | Business partner | OCRD | CRD1 | oBusinessPartners |
4 | Item master | OITM | - | oItems |
13 | A/R invoice | OINV | INV1 | oInvoices |
14 | A/R credit memo | ORIN | RIN1 | oCreditNotes |
15 | Delivery | ODLN | DLN1 | oDeliveryNotes |
16 | Returns | ORDN | RDN1 | oReturns |
17 | Sales order | ORDR | RDR1 | oOrders |
18 | A/P invoice | OPCH | PCH1 | oPurchaseInvoices |
19 | A/P credit memo | ORPC | RPC1 | oPurchaseCreditNotes |
20 | Goods receipt PO | OPDN | PDN1 | oPurchaseDeliveryNotes |
21 | Goods return | ORPD | RPD1 | oPurchaseReturns |
22 | Purchase order | OPOR | POR1 | oPurchaseOrders |
23 | Sales quotation | OQUT | QUT1 | oQuotations |
24 | Incoming payment | ORCT | RCT2 | oIncomingPayments |
30 | Journal entry | OJDT | JDT1 | oJournalEntries |
46 | Outgoing payment | OVPM | VPM2 | oVendorPayments |
59 | Goods receipt (inventory) | OIGN | IGN1 | oInventoryGenEntry |
60 | Goods issue (inventory) | OIGE | IGE1 | oInventoryGenExit |
66 | Bill of materials | OITT | ITT1 | oProductTrees |
67 | Inventory transfer | OWTR | WTR1 | oStockTransfer |
202 | Production order | OWOR | WOR1 | oProductionOrders |
203 | A/R down payment invoice | ODPI | DPI1 | oDownPayments |
204 | A/P down payment invoice | ODPO | DPO1 | oPurchaseDownPayments |
540000006 | Purchase quotation | OPQT | PQT1 | oPurchaseQuotations |
1250000001 | Inventory transfer request | OWTQ | WTQ1 | oInventoryTransferRequest |
1470000113 | Purchase request | OPRQ | PRQ1 | oPurchaseRequest |
Codes are the standard ObjType values. DI API enum names are given for BoObjectTypes; verify against the SDK help of your exact version before building on them.
Document-flow reporting for Business One
Optional: a short call about tracing order to cash and plan to produce in B1.
Optional. The tool and every export work without this. No spam.
Where ObjType appears
Rows carry BaseType and BaseEntry, which point to the document they were copied from. A delivery row with BaseType 17 and a BaseEntry equals the sales order DocEntry. Journal entries carry TransType and BaseRef, so you can walk from a posting to its source. Approval templates, alerts and Query Manager formatted searches also use these numbers.
- BaseType and BaseEntry give document flow
- TransType in OJDT shows the source document type
- BoObjectTypes enums wrap the same codes in the SDK
- UDO registration uses object codes of its own
Tracing a sales chain
To trace a sales order forward, select delivery rows where BaseType is 17 and BaseEntry is the order DocEntry, then invoice rows where BaseType is 15 and BaseEntry is the delivery DocEntry. Reverse the direction for purchasing with 22 and 20. For production, a production order is 202, and its issue and receipt documents (60 and 59) reference it through BaseType 202.
Mistakes to avoid
Do not confuse 59 and 20: 59 is an inventory goods receipt without a purchase order, 20 is a goods receipt PO. Do not assume DocNum equals DocEntry when you filter by base entry. And remember that document types added in later versions may have codes not in this list, so check the SDK help for yours.
Frequently Asked Questions
What is the difference between BaseType and ObjType?
ObjType is the type of the document the row belongs to. BaseType is the type of the document the row was copied from, such as a delivery row copied from a sales order. Together with BaseEntry they form the document-flow link.
Is 202 the production order in every version?
Yes, the production order object type is 202 in the standard schema. Always confirm any code against the SDK help of your version, since newer releases add objects.
How do I find the source of a journal entry?
Check TransType and BaseRef in OJDT. TransType holds the ObjType of the source document and BaseRef holds its number, so a TransType of 13 points to an A/R invoice.
Do user-defined objects have ObjType codes?
User-defined objects are registered with their own code string, and user tables are prefixed with an at sign. They do not take the numeric codes of standard documents.
Need a document-flow report or a trace across orders, deliveries and invoices built for your Business One setup? Netray can help automate it read-only.
Related Tools
SAP Business One Database Tables Reference
Searchable lookup of the core SAP Business One tables, with the matching row table and what each one stores.
Developer ToolsSAP Business One DI API Sales Order Code Generator (C#)
Fill in connection and order details to get a C# DI API skeleton that connects, adds a sales order and reports errors.
Developer ToolsSAP Business One Service Layer Request Builder
Fill in host, company and item details and get ready-to-paste Service Layer requests for login, item query, sales order and production order.
SAPSAP Business One Production Component Shortage SQL Generator
Pick a status, due date and warehouse and get a query that shows components short against on-hand stock for open production orders.
More SAP tools
See all- SAP B1 User Permission Matrix Worksheet
- SAP B1 Period End Close Checklist
- SAP B1 Approval Procedure Template
- SAP B1 Business Partner Master Data Request Form
- SAP Business One User Acceptance Test Script Template
- SAP Business One Data Migration Mapping Worksheet
- SAP Business One User-Defined Fields and Tables Register
- SAP Business One User-Defined Field Planning Worksheet
- SAP Business One Private AI Layer Blueprint Generator
New to SAP Business One? Start with the SAP Business One guide and toolkit.
Keep exploring
Free tools
- SAP Business One Database Tables ReferenceSearchable lookup of the core SAP Business One tables, with the matching row table and what each one stores.
- SAP B1 Approval Procedure TemplateFill in thresholds and approvers to generate a written SAP Business One approval procedure you can sign and configure from.
- SAP B1 Business Partner Master Data Request FormA fill-in request form for creating or changing a customer or vendor in SAP Business One, with the fields finance needs and an approval block.
ERP fixes and how-tos
- Private AI for SAP Business One: Service Layer, a read replica and a local modelAdd a private AI assistant to SAP Business One: Service Layer reads, SQL Server or HANA replica, document index, local LLM, permissions and approvals.
- SAP Business One production process flow: from BOM to production order to receiptThe SAP Business One production process flow from bill of materials to production order, issue, receipt and close, with the reports and tables used.
- SAP Business One Financial Reports and Reporting FeaturesStandard SAP Business One financial reports (trial balance, P&L, balance sheet, aging), plus Query Manager, Crystal layouts and dashboards and when to use each.
Runs with your ERP
- DocuWare ECM-Connect with SAP Business One: archiving and invoice processingHow DocuWare ECM-Connect links archived documents and incoming invoices to SAP Business One records, with data flows, setup, pitfalls and private AI.
- Ecosire quality control and inspection with SAP Business One: CoA, NCR and CAPAHow Ecosire's quality add-on for SAP Business One handles inspections, certificates of analysis, NCR and CAPA ageing and supplier quality reporting.
- ECOSIRE Time and Attendance and SAP Business One: clock events to job costingHow ECOSIRE's time and attendance integration turns clock terminal events into hours, overtime and absence in SAP Business One, with setup, pitfalls and AI.
AI on your ERP
- AI on SAP Business One for Electronics Manufacturers: BOMs, Shortages and TraceabilityPrivate AI on SAP Business One for electronics makers: multi-level BOM questions, component shortages, lot and serial traceability, RoHS and obsolescence checks.
- AI for SAP Business One, Without Sending Your Books to a Public APIAdd AI to SAP Business One without sending customer data or financials to a public API. Service Layer and DI API integration, sized for an SMB budget.
Integrations
- How to add AI agents to SAP Business OneHow to put AI agents on SAP Business One: Service Layer tool design, read-only first, draft documents for human approval, and an on-prem model option.
- How to add WhatsApp to SAP Business OneHow to add WhatsApp to SAP Business One: Service Layer, Cloud API templates, opt-in rules, order status, delivery alerts and two-way replies into documents.
Software
- SAP Business OneSAP Business One explained for small manufacturers: modules, Service Layer and DI API, deployment, limits, alternatives and where AI helps on top of it.
- SAP Business ByDesignSAP Business ByDesign explained: cloud ERP modules for midsize firms, extensibility, integration options, limits, alternatives and where AI fits.