Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/idempiere/idempiere/llms.txt

Use this file to discover all available pages before exploring further.

iDempiere provides powerful web service capabilities that enable seamless integration with external systems and applications. The platform offers both SOAP and REST APIs, allowing developers to choose the most appropriate protocol for their use case.

Service Architecture

iDempiere’s web service layer is built on Apache CXF and supports multiple protocols:
  • SOAP Services: Full-featured XML-based web services with WSDL definitions
  • REST Services: JSON and XML support for modern, lightweight integrations
  • Dual Protocol: Services are exposed via both SOAP and REST endpoints simultaneously

Available Services

ModelADService

The primary service for CRUD operations and business logic execution.

Create Data

Create new records in any iDempiere table

Read Data

Read single records or query multiple records

Update Data

Update existing records with new values

Delete Data

Delete records from the system

Run Process

Execute business processes and reports

Set Doc Action

Process documents (complete, void, close, etc.)

Get List

Retrieve lookup lists and reference data

Query Data

Advanced querying with filters and pagination

CompositeService

Execute multiple operations in a single request with transaction control.

Composite Operation

Execute multiple CRUD and process operations atomically with pre-commit and post-commit hooks

Service Endpoints

https://your-server:8443/ADInterface/services/ModelADService
https://your-server:8443/ADInterface/services/compositeInterface

Key Features

Security and Authentication

  • Role-based access control for all operations
  • Session caching for performance
  • Configurable session expiry
  • IP-based validation support
  • Custom validators for login and operations

Transaction Management

  • Automatic transaction handling
  • Rollback on errors
  • Composite operations with transaction boundaries
  • Pre-commit and post-commit hooks

Data Handling

  • Full support for all iDempiere data types
  • Automatic type conversion
  • Lookup value resolution
  • Binary data support (Base64 encoded)
  • Date/time handling with timezone support

Extensibility

  • Custom web service types
  • Pluggable validators (IWSValidator interface)
  • Configurable input/output fields
  • Service-level parameter definitions

Configuration

Web services are configured through the iDempiere application:
  1. Web Service (WS_WebService): Define service endpoints
  2. Web Service Method (WS_WebServiceMethod): Define available methods
  3. Web Service Type (WS_WebServiceType): Configure specific operations
  4. Web Service Type Access (WS_WebServiceTypeAccess): Control role-based access
  5. Web Service Parameters (WS_WebService_Para): Define input parameters
  6. Field Input/Output: Configure field-level access

Schema Reference

The complete XML schema is defined in:

iDempiere Schema

/WEB-INF/xsd/idempiere-schema.xsdDefines all request/response structures including:
  • WindowTabData
  • DataRow and DataField
  • StandardResponse
  • ModelCRUD operations
  • Process execution
  • Login request/response

Common Data Types

ADLoginRequest

Required for all service requests to authenticate and establish context.
user
string
required
Username or email (based on system configuration)
pass
string
required
User password
lang
string
required
Language code (e.g., en_US, es_MX)
ClientID
integer
required
Tenant/Client ID
RoleID
integer
required
User role ID
OrgID
integer
required
Organization ID
WarehouseID
integer
required
Warehouse ID (can be 0)
stage
integer
required
Session expiry in minutes (9 = default)

StandardResponse

Standard response structure for most operations.
IsError
boolean
Indicates if the operation failed
IsRolledBack
boolean
Indicates if the transaction was rolled back
RecordID
integer
ID of the created/updated record
Error
string
Error message if IsError is true
outputFields
array
Configured output fields with values and display text
WindowTabData
object
Data returned for read/query operations

Next Steps

Authentication

Learn how to authenticate and manage sessions

REST API

Explore REST API endpoints and examples

SOAP API

Detailed SOAP API documentation and WSDL reference

Best Practices

Define web service types in the application rather than hardcoding table names and operations. This provides better security and maintainability.
Use the IWSValidator extension point to add custom validation logic, logging, or integration with external systems.
Set an appropriate session expiry time to balance security and performance. Sessions are cached based on login credentials.
Always check the IsError flag in responses and handle rollback scenarios appropriately in your client application.