Reimbursement system integration with SAP: voucher interface and multi-organization ledger processing
The key to SAP integration is Mapping between company codes and ledgers, and mandatory validation of cost centers。SAP's organizational structure is stricter than domestic general ledgers. The relationships among company code, cost center, profit center and internal order must be clarified first, otherwise vouchers cannot be posted.
First clarify SAP's organizational structure
| SAP concepts | Corresponding expense control side | Description |
|---|---|---|
| Company Code | Legal entity | The smallest unit for independently issuing financial statements; vouchers must belong to a certain company code |
| Cost Center | Department / Responsibility Center | Expense accounts usually require mandatory fields |
| Profit Center | Profit responsibility unit | Some enterprises enable it, and after enabling it may likewise be required |
| Internal Order | Project / Special Campaign | Commonly used for project expense collection |
The most easily overlooked aspect on the expense control side is A cost center and a department are not the same thing A department is an organizational structure concept, while a cost center is a cost attribution concept. The two may be one-to-one, many-to-one, or there may be departments with no corresponding cost center. This requires a mapping table.
Field requirements for voucher push
Besides the usual account, amount, debit/credit direction and description, the SAP side usually also requires:
Tax code is a concept absent from domestic general ledgers, easy to miss. SAP uses tax codes to identify tax rates and deductibility, and the invoice type and deductibility judgment results on the expense control side need to be mapped to the corresponding tax codes.
Five common error types
| Error | Reason | Processing |
|---|---|---|
| Account requires a cost center but none was provided | Missing required dimensions for expense accounts | Account master data configures required dimensions, validated before generation |
| Accounting period is closed | The target period is already closed in SAP | Verify period status before generation |
| Tax code and account mismatch | Tax code mapping error | Establish a mapping table from invoice type and deductibility to tax code |
| Cost center has become invalid | This cost center has been deactivated on the SAP side | Periodically sync master data; deactivated items are marked on the expense control side |
| Debit-Credit Imbalance | Incorrect algorithm for amount excluding tax | Tax amount is taken from the invoice value; tax-exclusive amount is derived by subtraction |
Choice of API method
Common options on the SAP side: RFC / BAPI calls, OData services, intermediate tables, or file exchange. Which one to choose mainly depends on the customer IT's existing standards and network conditions.
A practical experience:If the customer's SAP is on an intranet and external direct connection is not allowed, intermediate tables or file exchange are often the only feasible path. In this case, agree in advance on the file format, landing directory, processing frequency, and receipt mechanism; do not wait until development is halfway done to discover the network is unreachable.
Frequency of master data synchronization
Master data such as accounts, cost centers, and internal orders will change on the SAP side. If the expense control side takes a one-time imported snapshot, after some time errors such as "account deactivated" and "cost center does not exist" will appear.
It is recommended to establish Periodic synchronization mechanism, at least once a day. Synchronization must not only add new items but also handle deactivation—deactivated accounts and cost centers must be marked invalid on the expense control side to avoid continued reference by rules.
How is this scenario handled in Kailing Technology's expense control system?
Supports mapping and filling of SAP organizational dimensions such as company code, cost center, profit center, and internal order, with mandatory account dimensions validated before voucher generation. Invoice types and deductibility are automatically mapped to corresponding tax codes. Supports multiple integration methods including RFC, OData, and intermediate tables, with master data synchronized regularly and deactivated items handled.
Learn about the Kailing Technology expense control and reimbursement system →
Common Questions
No. A department is an organizational structure concept, while a cost center is an expense attribution concept; they may be one-to-one or many-to-one, requiring a mapping table.
SAP uses tax codes to identify tax rates and deductibility. Domestic general ledgers do not have this concept, so it is easily overlooked during integration. Invoice types and deductibility need to be mapped to tax codes.
Usually through intermediate tables or file exchange. The file format, directory, frequency, and receipt mechanism should be agreed in advance.
It is recommended to do this at least once a day, and deactivated items must be handled; otherwise errors such as the account being deactivated or the cost center not existing will occur.
