FI Global Settings Tax on Sales and Purchase: VAT, Tax Codes, and External Calculation

Book: Financial Accounting in SAP S/4HANA Finance Simplified: Questions & Answers
Author: Narayanan Veeriah
ISBN: 978-93-65898-675

Chapter 12 is the tax chapter for sales and purchases. Not withholding tax (that is Chapter 13). This one covers VAT-style taxes, how SAP calculates them, and when you hand the job to Vertex or Taxware instead.

What taxes does S/4HANA support?

At the FI global settings level, two major tax categories:

  1. Tax on sales/purchases (sales and use tax, VAT principles)
  2. Withholding tax (extended withholding tax, covered next chapter)

Tax on sales/purchases includes input tax (charged by vendors on your purchases), output tax (charged to customers on sales), additional tax (clearing tax, luxury tax, environmental tax, BENELUX postponed accounting), and acquisition tax (cross-border EU goods movement, posted as input tax at local VAT rate).

Sales tax vs use tax

Sales tax: the seller collects it at point of sale and remits to authorities. Buyer pays it as part of the price.

Use tax: the buyer owes it directly to the local authority where goods or services are consumed. Common when buying from out-of-state vendors.

A transaction is usually subject to one or the other, not both.

Tax levels in SAP

SAP handles taxation at multiple layers:

  • National/federal - VAT in Europe, GST in Australia
  • Regional/jurisdiction - US state taxes
  • Multi-layer - India, Canada, Brazil where national and regional taxes interact

Customizing structure

Three configuration groups in IMG:

Basic settings: calculation procedure (OBYZ), country-to-procedure assignment (OBBG), tax processing settings (OBCN), jurisdiction code structure (OBCO), tax jurisdictions (OBCP), message control (OBA5), tax base amount field control, tax reporting date, external tax calculation toggle.

Calculation: tax codes (FTXP), document date for tax determination (OBCK), base amount (OB69), foreign currency translation (OBC8), exchange rate for tax items, tax-exempt codes.

Posting: tax accounts (OB40), country/region and tax code to G/L assignment, exchange rate difference accounts (OBYY), non-taxable transaction codes (OBCL), cross-company code tax transfer.

How SAP calculates tax

SAP uses the condition method for all tax calculations except withholding tax. The flow:

  1. Define tax rate per tax code (country-specific, 2-digit)
  2. Link tax codes to tax types (input or output) in a tax calculation procedure
  3. Procedure iterates condition records via access sequences
  4. Assign procedure to country (OY01) and G/L accounts
  5. System posts calculated tax to the right accounts

A tax procedure defines the sequence of operations, condition types (fixed amount or percentage), and reference steps for base amounts.

Account/process keys connect procedures to G/L accounts for automatic posting. Standard keys ship pre-defined. SAP says leave them alone. Set default posting keys (40 debit, 50 credit), account determination rules, and tax accounts.

Access sequences control which condition tables get checked and in what order.

Tax amounts usually post on the same side as the G/L account tied to the tax code. Foreign currency tax differences go to dedicated exchange rate difference accounts.

Configuration details per company code:

  • Base amount: gross (includes cash discount) or net
  • Tax codes: percentage, tax type classification
  • Tax rates: one or more per code
  • Check indicators: error/warning when manual tax differs from system calculation

Jurisdiction codes (US focus)

A tax jurisdiction code stacks codes for state, county, city, and district so tax revenue routes to the right authority. Setup requires access sequence (country + tax code + jurisdiction), condition types referencing that sequence, and jurisdiction code definitions.

Tax rates live in the tax code per jurisdiction. Processing can happen at line item level or cumulated at tax code/jurisdiction level.

For external tax calculation, jurisdiction structure must match your provider:

  • Vertex expects 2/3/4/1 structure (configure in OBCO)
  • Taxware needs 2/5/2/0
  • ONESOURCE (Sabarix) needs 2/2/5/5

If you use internal US tax calculation with existing postings in production, you cannot change jurisdiction structure because transports get blocked.

External tax calculation

When SAP’s built-in procedures are not enough, connect to Vertex, Taxware, OneSource, or similar. The external system determines jurisdiction codes, applies rates, calculates tax, and returns results for posting.

Customizing steps: number ranges for external returns (OBETX), physical/logical destinations (SM59), activate external calculation and updating, enhancements (CMOD), cross-company code transfer, connection definition.

Use standard procedure 0TXUSX and SD pricing procedure RVAXUS.

FI/MM flow: system pulls ship-to jurisdiction from plant, cost center, asset, order, or WBS master. Ship-from comes from vendor master. MM and FI use country and tax code to read condition records. Condition formulas 300-306 and 311-316 trigger the tax interface. Data transfers via RFC to the external API. Calculated tax returns for posting.

SD flow: ship-from jurisdiction = point-of-order acceptance (plant). Ship-to = point-of-order origin (customer). Condition type UTXJ exits standard pricing and calls the external engine. Returned amounts apply via condition types XR1-XR6 at jurisdiction level.

Tax reports

SAP’s default tax reports help with country-specific compliance. Run period-end closing in SAP first (reconcile AR/AP, handle exchange rate differences) before generating reports. Third-party reporting tools exist, but in-system closing gives you cleaner numbers.


Previous: FI Global Settings Document Part 2 | Next: FI Global Settings Withholding Tax Chapter 13