1. Home
  2. Products
  3. SAP RAR

SAP RAR: when does a sale become revenue?

An invoice is not revenue. Under IFRS 15, ASC 606 and Brazil’s CPC 47, revenue follows the promises you keep, and SAP Revenue Accounting and Reporting (RAR) is the engine that makes that split.

  • SAP S/4HANA
  • SAP ERP add-on
  • IFRS 15 · ASC 606 · CPC 47
Read this page as
Switch to Consultant for Customizing, BRF+ and tables.Showing Customizing, BRF+ and tables.

What SAP RAR is

Billing tells you what you charged. RAR tells you what you earned.

In a plain sale, the two are the same: you ship a box, you invoice it, you book revenue. They drift apart the moment a deal mixes things delivered at different times, like a phone handed over today with a plan that runs for two years, or software with a year of support. IFRS 15 then asks you to split the price over each promise and book each part when you deliver it. RAR does that split. It reads your sales documents, keeps its own revenue accounting contract as the accounting view of the deal, and posts the result to the ledger at period end.

This guide is written for people who have never opened RAR. It follows one sales order through it, lists the transactions key users and consultants use every month, and answers the questions people ask most. The standard behind it all: IFRS 15.

  • 1

    Operational view

    Sales, logistics, billing

    Sales orders, deliveries and invoices in SD, BRIM, CRM or another system. They keep working exactly as before and send each event to RAR.

    • VA01
    • VL01N
    • VF01
  • 2

    Revenue accounting contract

    The accounting view of the deal

    RAR’s own object: one contract with a performance obligation (POB) for each promise, the price allocated over them and a revenue schedule.

    • FARR_RAI_MON
    • Manage Revenue Contracts
  • 3

    General ledger

    What the auditors see

    At period end, three programs calculate revenue, contract assets and liabilities and post them. In S/4HANA the result lands in the Universal Journal.

    • FARR_REV_POST
    • ACDOCA

Senders with native integration: SAP SD, SAP Billing and Revenue Innovation Management (BRIM), SAP CRM and SAP S/4HANA Service. Other systems can send data too, in the same format. SAP PRESS

Do you need RAR? A 30-second check

Tick what is true for your company. A rule of thumb for a first conversation, not accounting advice.

What is true for your company

of 5 ticked

  • 0–1 tickedProbably not, for now.If revenue simply follows delivery or billing, the standard SD postings may be enough. Confirm with your auditors before deciding.
  • 2–3 tickedWorth a closer look.Compare RAR with event-based revenue recognition (further down this page), which posts in real time from sales orders, projects and service documents.
  • 4–5 tickedRAR territory.Bundles, allocation, contract changes and parallel accounting principles are what RAR was built for.

The standard behind it

Five steps of IFRS 15, and where RAR does each one

IFRS 15 and the US standard ASC 606 were published together in May 2014 and took effect for periods starting on or after 1 January 2018. They replaced IAS 11, IAS 18 and four interpretations with one five-step model. RAR was built around that model, step by step. Timeline: ICAEW.

  1. 1

    Identify the contract

    An agreement with a customer that creates enforceable rights and obligations.

    In RAR

    RAR creates a revenue accounting contract when the first item of a sales document is processed. It is the accounting view of the deal, not the sales contract, and contracts can be combined when the standard requires it.

    Consultant: Contract categories and number ranges (FARR_CONTRACT_NR); combination by rule or by hand in the contract UI.

  2. 2

    Identify the performance obligations

    Each distinct good or service the customer was promised.

    In RAR

    Each order item usually becomes a performance obligation (POB). RAR adds linked POBs for implicit promises, such as a free service, and can group items into compound POBs or BOM hierarchies. POBs that came from a document cannot be deleted; manual and linked ones can.

    Consultant: Define Performance Obligation Types; POB type and attributes derived by a BRF+ decision table.

  3. 3

    Determine the transaction price

    What the company expects to receive, including variable amounts.

    In RAR

    RAR reads the price conditions from the sender: SD pricing, BRIM or the external system. Changes and invoices that arrive later update the price.

    Consultant: Reserved condition types, condition types not requiring allocation and roles for condition types in contract Customizing.

  4. 4

    Allocate the price

    Split the price over the obligations in proportion to their standalone selling prices.

    In RAR

    RAR finds a standalone selling price (SSP) for each POB and allocates the price. The difference to the contractual price is the allocation effect; across one contract the effects add up to zero.

    Consultant: SSP from a BRF+ decision table or a condition sent by SD; the consistency check category E1 tests the zero sum.

  5. 5

    Recognize revenue

    When, or as, each obligation is satisfied: at a point in time or over time.

    In RAR

    POBs are fulfilled by an event (goods issue, invoice, proof of delivery), by time between a start and an end date, by percentage of completion, or by hand. RAR keeps a revenue schedule for each one.

    Consultant: Define Fulfillment Event Types; fulfillments stored in FARR_D_FULFILLMT, the schedule in FARR_D_DEFITEM.

Try it

The handset puzzle: why a “free” phone is not free

When SAP put RAR 1.1 into ramp-up in November 2015, its announcement singled out telecom carriers: the new rules change how they split revenue between a handset’s standalone price and the monthly plan sold with it. Here is that deal. The customer pays 50 a month for 24 months and gets the phone for nothing. Pick the phone’s standalone price, move the months and watch what IFRS 15 does.

Example: the phone’s standalone price is 400 and we are in month 6 of 24.

Revenue under IFRS 15525
Billed so far (the old way: revenue = billing)300
Contract asset on the balance sheet225
  • Revenue (IFRS 15)
  • Billing
  • Contract asset
Performance obligationContract priceStandalone priceAllocatedAllocation effect
Smartphone · point in time0400300+300
Service plan · 24 months1,2001,200900−300
Contract total1,2001,6001,2000
  • Day one jumps. The phone is delivered at once, so its share of the price is revenue on day one, although nothing has been billed. The gap is a contract asset that shrinks with every monthly bill and reaches zero in month 24.
  • Effects net to zero. What the phone gains, the plan gives up. RAR’s consistency check (category E1 in FARR_CONTR_MON) tests exactly that: the allocation effects of a contract must add up to zero.
  • The total never changes. After 24 months revenue equals billing: 1,200 either way. IFRS 15 changes when revenue appears, not how much.

The zero-sum check: SAP Community, consistency check report in RAR.

The RAR process

Follow one sales order through RAR

Every document in SD (order, delivery, invoice) sends a revenue accounting item (RAI) to RAR. Items are checked, turned into a contract and performance obligations, and at period end three programs post the result. Pick a step.

  • SD · BRIM · CRM · external
  • Revenue accounting items
  • Contracts and POBs
  • Period-end programs A · B · C
  • General ledger
Process step

What happens · step 1 of 8

Sales order saved

When a sales order with revenue-relevant items is saved, SD sends one order item per line to RAR as a revenue accounting item (RAI). Nothing is posted to the ledger yet.

Where you see it

The RAI monitor, or the Fiori app Manage Revenue Accounting Items.

  • FARR_RAI_MON

Under the hood

Order items arrive in the item class for SD orders (SD01 with source item type SDOI in many systems). Upload rules decide whether items arrive as Raw or Processable.

  • FARRIC
  • SD01
  • SDOI

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Community (inbound processing; goods issue walkthrough), community configuration guide.

What happens · step 2 of 8

Checked: Raw to Processable

Raw items have had no checks. Moving them to Processable validates master data and the company code. Errors stop here, which keeps bad data out of contracts.

Where you see it

The mass transfer, or the monitor button. Failures are in the application log.

  • FARR_RAI_TRANS
  • SLG1

Under the hood

Each item class and status has its own pair of tables, one for main items and one for conditions. Enhancements can enrich and check items before they reach Raw and Processable.

  • Main items
  • Conditions

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Help (RAI monitor), SAP Community (inbound processing).

What happens · step 3 of 8

Contract and POBs built

Processing creates or updates the revenue accounting contract. Each order item usually becomes a performance obligation, rules add linked ones for implicit promises, and RAR allocates the price using standalone selling prices.

Where you see it

The mass processing run, then the contract in Manage Revenue Contracts.

  • FARR_RAI_PROC

Under the hood

A BRF+ application copied from FARR_AP_SD_PROCESS_TEMPLATE derives POB type and SSP. POB IDs became character fields for performance; check custom code (SAP Note 2672794).

  • FARR_D_CONTRACT
  • FARR_D_POB

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Help (RAI monitor), SAP PRESS, community configuration guide.

What happens · step 4 of 8

Goods issue posted

The goods issue sends a fulfillment item. RAR fulfills the event-based POB for the delivered quantity and recognizes its allocated revenue, plus the matching cost when cost recognition is used.

Where you see it

The delivery in SD, the fulfillment item in the monitor.

  • VL01N
  • FARR_RAI_MON

Under the hood

Fulfillment class (SD02 with item type SDFI in many systems); event types in Define Fulfillment Event Types.

  • FARR_D_FULFILLMT
  • SD02

Item classes, BRF+ and tables for this step are in the Consultant view.

Source: SAP Community (goods issue and time-based fulfillment walkthrough).

What happens · step 5 of 8

Invoice posted

SD posts the invoice to accounts receivable as always. An invoice item also goes to RAR, which takes the billed amount back out of revenue against the receivable adjustment account: billing is not revenue.

Where you see it

The billing document in SD, the invoice item in the monitor.

  • VF01
  • FARR_RAI_MON

Under the hood

Invoice class (SD03 with item type SDII in many systems). Invoice amounts feed the contract asset and liability calculation.

  • FARR_D_DEFITEM
  • SD03

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Help (revenue-related events and postings), SAP Community.

What happens · step 6 of 8

A · Transfer revenue

Calculates the revenue to recognize in the period, including time-based POBs. It creates no accounting document.

Where you see it

The transaction or the Fiori app Transfer Revenue.

  • FARR_REV_TRANSFER

Under the hood

Errors in this step can be handled by moving the revenue to the next period.

  • FARR_D_DEFITEM

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Community (period-end activities; revenue postings in RAR).

What happens · step 7 of 8

B · Contract assets and liabilities

Compares revenue recognized with what has been invoiced. Revenue ahead of invoices gives a contract asset; invoices ahead of revenue give a contract liability. Still no accounting document.

Where you see it

The transaction or the Fiori app Calculate Contract Liabilities and Assets.

  • FARR_LIABILITY_CALC

Under the hood

Calculated per POB; the results can be posted per POB (unbilled receivable, deferred revenue) or per contract (contract asset, contract liability).

  • FARR_D_DEFITEM

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Community (period-end activities; revenue postings in RAR).

What happens · step 8 of 8

C · Revenue posting run

Posts the results to the general ledger. Test mode is on by default, so simulate first and then post. A period can only be posted when every earlier period has been.

Where you see it

The revenue posting run and its job monitor.

  • FARR_REV_POST

Under the hood

Data is staged in FARR_D_POSTING and grouped by reconciliation key: one per company code, accounting principle and period. With direct posting (2021 on, optimized contract management only) entries go straight to ACDOCA and this step is not needed.

  • FARR_D_POSTING
  • ACDOCA

Item classes, BRF+ and tables for this step are in the Consultant view.

Sources: SAP Help (revenue posting; reconciliation), SAP Community (revenue postings in RAR).

Three statuses every RAI goes through

The RAI monitor shows items in any status. A stuck item almost always sits in one of these. Source: SAP Help.

  • Raw

    The item has arrived from the sender. No checks have run yet.

    Next: Transfer to Processable (FARR_RAI_TRANS or the monitor button).

  • Processable

    Master data and company code have been validated. The item is ready to build or change a contract.

    Next: Process it (FARR_RAI_PROC or the monitor button).

  • Processed

    The contract and its POBs have been created, changed or fulfilled.

    Next: Nothing. Changes after this arrive as new items.

  • In the log

    An item that failed stays where it was. The reason is in the application log.

    Next: SLG1, object FARR. Emergency changes to items are possible but logged.

Accounting

Who posts what: the receivable adjustment account

SD still posts the invoice. RAR then moves amounts in and out of one clearing account, the receivable adjustment account, until each part of the price sits where it belongs: revenue, deferred revenue or unbilled receivable. Pick an event; the amounts are only an example. The logic is from SAP Help.

Accounting event
Posted byDebitCreditAmount
SD billingAccounts receivableBilled revenue1,000
RARRecognized revenueReceivable adjustment1,000

Billing is not revenue

SD books the invoice exactly as before. RAR takes the billed amount back out of revenue against the receivable adjustment account, because no promise has been kept just by invoicing.

Posted byDebitCreditAmount
RARReceivable adjustmentRecognized revenue300
RARRecognized COGSDeferred cost200

Revenue follows delivery

When a performance obligation is fulfilled, its allocated revenue moves from the receivable adjustment account to revenue. With cost recognition, deferred cost becomes cost of goods sold at the same moment.

Posted byDebitCreditAmount
RARUnbilled receivableReceivable adjustment500

Revenue ahead of invoices

At period end, if cumulative revenue (1,500) is above cumulative invoices (1,000), the difference becomes an unbilled receivable, or a contract asset at contract level. The next invoice clears it.

Posted byDebitCreditAmount
RARReceivable adjustmentDeferred revenue300

Invoices ahead of revenue

If cumulative invoices (1,000) are above cumulative revenue (700), the difference becomes deferred revenue, or a contract liability at contract level. It clears as revenue is recognized.

  • Two pairs of names

    Unbilled receivable and deferred revenue are worked out per performance obligation against the invoice date. Contract asset and contract liability are netted per contract against the invoice due date.

    SAP Help
  • No tax in RAR postings

    Revenue postings carry no input or output tax; tax-related accounts get a zero-rate tax code. Tax stays on the invoice.

    SAP Help
  • Exchange rates too

    When the receivable adjustment balance moves with the exchange rate, RAR posts a gain or loss to the accounts set in OB09.

    SAP Help

Quick test

Point in time or over time?

Step 5 decides when revenue appears, and it decides how a performance obligation is set up in RAR. Guess first, then open a card. Two of these surprise most people.

  • A laptop shipped to a business customerShow the answer
    Point in time

    Control passes on delivery. In RAR: an event-based POB fulfilled by the goods issue.

    Source: IFRS 15, paragraph 38
  • 12 months of software support, paid upfrontShow the answer
    Over time

    The customer uses the service as it is delivered. In RAR: a time-based POB; the upfront invoice waits as a contract liability.

    Source: IFRS 15, paragraph 35(a)
  • A custom machine built on the customer’s siteShow the answer
    Over time

    The customer controls the asset while it is being built. In RAR: usually percentage of completion fed by a project.

    Source: IFRS 15, paragraph 35(b)
  • A right-to-use software licence delivered on day oneShow the answer
    Point in time

    A right to use the software as it is when granted is recognized when the customer can start using it.

    Source: IFRS 15, paragraphs B56 and B61
  • The standard one-year warranty that comes with a TVShow the answer
    Not a performance obligation

    Surprise: a warranty that only promises the product works is a provision under IAS 37, not a POB.

    Source: IFRS 15, paragraph B30
  • A three-year extended warranty the customer chose to buyShow the answer
    Over time

    A warranty sold separately is a service and a POB of its own. In RAR: a time-based POB over three years.

    Source: IFRS 15, paragraph B29
  • Loyalty points the customer can redeem next yearShow the answer
    Later: when redeemed

    Surprise: points that give a material right are a separate POB, and their share of the price waits until they are used or expire.

    Source: IFRS 15, paragraphs B39 to B43
  • A 36-month cloud subscription billed monthlyShow the answer
    Over time

    Delivered every day of the term. In RAR: a time-based POB; with monthly billing, revenue and invoices move almost together.

    Source: IFRS 15, paragraph 35(a)

Reference

Transactions and apps for key users and consultants

The codes a revenue accountant runs every month, and the ones a consultant needs to set RAR up, migrate and troubleshoot. Filter by who you are or by stage, or type a word. The name column is SAP’s own text; the Source column says where each one was confirmed.

Audience
Stage

CodeSAP nameWhat it is forForStageSource
FARR_RAI_MONRevenue Accounting Item MonitorShows revenue accounting items in any status, filtered by order, fulfillment or invoice items. From the list you move Raw items to Processable, simulate, process, make emergency changes and see the change history.Fiori: Manage Revenue Accounting ItemsBothInboundSAP Help
FARR_RAI_TRANSTransfer Revenue Accounting ItemsMass run that moves items from Raw to Processable. For large volumes SAP recommends the mass runs over the monitor buttons.Key usersInboundSAP Help
FARR_RAI_PROCProcess Revenue Accounting ItemsMass run that processes Processable items: it creates, changes or fulfills contracts and performance obligations.Key usersInboundSAP Help
SLG1Analyze Application Log (object FARR)When an item fails, the reason is in the application log. Filter by object FARR.BothInboundSAP Community
FARR_RAI_PP_MONMonitor for Parallel Processing RunsFollows the parallel-processing runs behind mass jobs, useful when a big run ends with some packages in error.BothInboundSAP text
Fiori appManage Revenue ContractsOpens a revenue accounting contract with its POBs, allocated prices, fulfillments and revenue schedule. Revenue accountants also combine contracts, change dates, add manual POBs and enter manual fulfillments.Key usersContractsSAP Community
FARR_CONTR_HISRA - Contract and POB change historyWho changed what on a contract or POB, and when. The first stop when an auditor asks why an allocation moved.BothContractsSAP text
FARR_REV_TRANSFERTransfer RevenuePeriod-end step A: calculates the revenue to recognize in the period. Creates no accounting document.Fiori: Transfer RevenueKey usersPeriod endSAP Community
FARR_LIABILITY_CALCCalculate Contract Liabilities and AssetsStep B: works out contract assets and liabilities (or unbilled receivables and deferred revenue). Still no accounting document.Fiori: Calculate Contract Liabilities and AssetsKey usersPeriod endSAP Community
FARR_REV_POSTRevenue Posting ServiceStep C, the revenue posting run: posts the results to the general ledger. Test mode is the default; simulate, then post. Postings of an earlier job can be reversed.Fiori: Revenue posting run apps (start runs, monitor jobs)Key usersPeriod endSAP Help
Fiori appPosted Amount by ContractFiori report with posted, allocated and invoiced amounts by contract and period. Sister reports: Posted Amount by Performance Obligation Type and Revenue Accounting Overview.Key usersPeriod endSAP Community
FARR_RAI_RECONReconciliation RA Items to ContractsChecks that what arrived as revenue accounting items matches what is in the contracts.BothChecksSAP text
FARR_CONTR_MONRA - Consistency monitorValidates contract data: allocation effects that do not net to zero, schedules that do not match allocations, planned revenue that differs from posted revenue. Runs online or reads saved results.BothChecksSAP Community
FARR_CONTR_CHECKRA Contract Consistency CheckMass version of the consistency check for chosen company codes and accounting principles. Results are saved to table FARR_D_CONS.ConsultantsChecksSAP Community
FARRIC_CHECKCheck report for Revenue AccountingConsistency check of the SD integration component, the part of SD that builds revenue accounting items.ConsultantsChecksSAP text
FARR_IMGRevenue Accounting CustomizingEntry point to RAR Customizing: inbound processing, contracts, POB types, postings and revenue accounting periods.ConsultantsSetupSAP text
FARR_RAI_CONFConfig. of Rev. Accounting ItemsMaintains revenue accounting item classes: interface components, customer fields, indexes and configuration status. Classes released as productive accept only compatible changes.ConsultantsSetupSAP Help
FARR_RAI_GENGeneration of Rev. Accounting ItemsGenerates the interfaces and tables of an item class after its configuration changes. In target systems an after-import method can generate them automatically.ConsultantsSetupSAP Help
BRFPLUSBRF+ workbenchWhere RAR’s rules live: POB type derivation, SSP and account determination. Start from SAP’s templates, such as FARR_AP_SD_PROCESS_TEMPLATE for SD and FARR_ACC_DETERMINE_TEMPLATE for accounts.ConsultantsSetupCommunity guide
FARR_ACCT_DETER_CUSTLaunch A/c Determination CustomizingOpens the account determination rules for contract asset, contract liability, revenue, allocation and deferred cost accounts.ConsultantsSetupSAP text
FARR_CONTRACT_NRNumber Range Maintenance: FARR_CTRIDNumber ranges for revenue accounting contract IDs.ConsultantsSetupSAP text
FARRIC_OLRevenue Accounting: Operational LoadBrings existing SD documents into RAR at go-live or migration, creating order, fulfillment and invoice items. Migrated documents can no longer be processed by VF44 or VF46.ConsultantsMigrationSAP Community
FARRIC_OL_EXPERTOperational load, expert modeExpert variant of the operational load, also used to reset a migration together with the initial load cleanup.ConsultantsMigrationSAP Community
FARR_RAI_PROC_LOADInitial Load: Process Rev Acc ItemsProcesses the items of the initial load into contracts and performance obligations.ConsultantsMigrationSAP text
FARR_IL_CLEANUPInitial Load: CleanupRemoves an initial load so it can be run again, as long as the company code is still in migration status.ConsultantsMigrationSAP Community
FARR_TRANS_CATCHUPCalculate cumulative catch-up effectTransition step that calculates the cumulative catch-up effect when existing contracts move to the new revenue rules.ConsultantsMigrationSAP text
FARR_TRANS_REV_URDRReverse Unbilled/DeferredTransition helper for unbilled and deferred balances. Read the transition guide for your release before running it.ConsultantsMigrationSAP text
VF44Revenue Recognition: Post RevenueThe old SD revenue recognition. It is not available in SAP S/4HANA (simplification item SD_RR); RAR replaces it.BothECC legacySAP Community
VF47SD revenue recognition inconsistency checkChecks SD revenue recognition data before migration. Clean SD first, then migrate.ConsultantsECC legacySAP Community

Revenue accountants get these through role SAP_SR_FARR_REV_ACCOUNTANT_A; auditors get read access through SAP_SR_FARR_REV_AUDITOR_A, which can be limited to company codes and a fiscal year. Source: SAP Help.

Brazil

CPC 47, the NF-e and RAR

Brazil adopted the same model as IFRS 15. What changes in an SAP project is the relationship between what the fiscal documents say and what the ledger shows.

  • CPC 47 is IFRS 15

    Brazil’s CPC 47 (NBC TG 47 for the accounting council) follows IFRS 15 and has applied since 1 January 2018. It replaced CPC 17 on construction contracts, the revenue interpretations attached to CPC 30, ICPC 02 and ICPC 11. Smaller companies follow NBC TG 1000 instead.

    • CPC 47
    • NBC TG 47
    Source: Jornal Contábil
  • The NF-e still comes from billing

    RAR issues no documents. The billing document still creates the nota fiscal and carries ICMS, IPI, PIS and COFINS. RAR’s own postings carry no tax at all: tax-related accounts get a zero-rate tax code.

    • VF01
    • NF-e
    Source: SAP Help
  • Two clocks, both correct

    Fiscal records follow the documents; accounting revenue follows RAR. The same contract can therefore appear in different months in files built from fiscal documents and in the ECD, built from the ledger. Expected, and worth explaining to the tax team and the auditors before the first close.

    • EFD ICMS IPI
    • ECD
    Source: SAP Help, revenue posting

How the nota fiscal itself works: NF-e, Brazil’s electronic invoice.

Releases

SAP ERP, S/4HANA classic and S/4HANA optimized

RAR started as an add-on for SAP ERP and became part of SAP S/4HANA in release 1809. Since then SAP added an optimized way of managing contracts (1909), of receiving items (2020) and of posting (2021), while the classic way stays available. Source: SAP PRESS.

TopicSAP ERP (ECC)S/4HANA, classicS/4HANA, optimized
ProductAdd-on SAP Revenue Accounting 130 (REVREC 130), needs at least EHP5Part of S/4HANA since 1809Part of S/4HANA since 1809
Contract managementClassicClassicOptimized (OCM), since 1909
Receiving itemsClassic inbound processingClassic inbound processingOptimized inbound processing (2020): real time instead of batch
PostingPosting run from the RAR subledgerPosting run from the RAR subledgerPosting run, or direct posting to the Universal Journal (2021)
Contract changesPeriod-basedPeriod-basedDay-based changes, freeze periods on time-based POBs
Early terminationHard to handleHard to handleStandard function
ReportsWeb Dynpro sample reportsSAP Fiori report librarySAP Fiori report library
SD revenue recognition (VF44)Still availableNot availableNot available
MaintenanceMainstream ends end of 2027; extended to 2030S/4HANA release cycleS/4HANA release cycle

Which one? For new S/4HANA projects SAP PRESS suggests evaluating optimized contract management and optimized inbound processing, because that is where SAP invests. Companies moving RAR from SAP ERP with heavy enhancements may find classic the safer first step. Maintenance dates: SAPinsider.

RAR or event-based revenue recognition?

The question comes up in almost every S/4HANA project. Both recognize revenue; they were built for different problems. Source: SAP Community, answer from SAP.

  • Revenue Accounting and Reporting

    • Built around IFRS 15 and ASC 606, with its own revenue contract separate from the sales documents.
    • Senders: SD, CRM, BRIM and external systems through APIs.
    • Made for high volumes in S/4HANA and SAP ERP; typical in high tech and telecom.
    • Revenue posted by period-end programs, or directly with optimized contract management.
  • Event-based revenue recognition

    • Set up in the controlling area; cost-driven scenarios.
    • Posts revenue and cost adjustments in real time from sales orders, projects, service documents and provider contracts.
    • Matches revenue with cost and adds market segment data to every posting in the Universal Journal.
    • SAP PRESS notes release 2022 added allocation and parallel reporting to it.

Troubleshooting

Error decoder

Messages people search for most, in plain words. Full details for any item error are in the application log, SLG1 with object FARR.

Message

FARR_ACCR_MAIN038

Revenue accounting period setting not defined for CoCd &1 AcctPr. &2

What it means

The company code and accounting principle have no entry in the revenue accounting period settings, so RAR cannot create a reconciliation key.

First thing to try

In Customizing, Open and Close Revenue Accounting Periods: add the combination.

  • FARR_IMG
SAP message long text

FARR_APPLICATION114

Contract &1: Open recon key exists in closed period &2/&3

What it means

A reconciliation key (one per company code, accounting principle and period) is still open for a period that is already closed in RAR.

First thing to try

Check that period’s revenue posting jobs for this contract before reopening anything; search SAP for Me for the message number.

  • FARR_REV_POST
SAP message text

FARR_RAI664

Item &1: The item has status Processable and has yet to be processed

What it means

A later step needs this item processed first, for example an invoice or fulfillment item waiting for its order item.

First thing to try

Process the waiting item first (FARR_RAI_PROC or the monitor), then retry the one that depends on it.

  • FARR_RAI_PROC
  • FARR_RAI_MON
SAP message text

FARR_RAI411

Item &1 is partially processed for AccPr &2 but no processable RAIs exist

What it means

The item is still listed in table FARR_D_RAI2_PROC but no Processable item exists. Most likely it was set to status 4 (Processed) or deleted by mistake: the data is inconsistent.

First thing to try

SAP’s long text says to contact SAP support.

  • FARR_D_RAI2_PROC
SAP message long text

FARR_RAI023

Configuration of class &1 is inconsistent or not updated

What it means

The item class was changed but its interfaces were not generated again, or the class is not active.

First thing to try

Check the class in FARR_RAI_CONF and generate it again with FARR_RAI_GEN.

  • FARR_RAI_CONF
  • FARR_RAI_GEN
SAP message text

FARR_RAI542

You are not authorized to process revenue accounting items

What it means

The user’s roles lack the authorization to process items.

First thing to try

Run SU53 straight after the error; the delivered role for revenue accountants is SAP_SR_FARR_REV_ACCOUNTANT_A.

  • SU53
SAP message text

FARR_CONTRACT_UI270

This contract contains no performance obligations for manual fulfillment

What it means

Manual fulfillment was tried on a contract whose POBs are fulfilled by events or by time.

First thing to try

Fulfill through the event (goods issue, invoice) or change the POB setup; only POBs set up for manual fulfillment accept it.

  • Manage Revenue Contracts
SAP message text

Tips and tricks

14 tips for key users and consultants

Small habits that make the monthly close calmer, and documented behaviour behind setup and migration. Filter by audience.

Audience
  • 01Key users

    Simulate before you post

    The revenue posting run starts in test mode. Use it to check account determination, debits, credits and amounts before switching to posting mode.

    • FARR_REV_POST
    SAP Help
  • 02Key users

    Post the periods in order

    Revenue is posted one period at a time, and every earlier period must be posted first. A forgotten period blocks the next close.

    • FARR_REV_POST
    SAP Help
  • 03Key users

    Errors live in SLG1

    When an item fails, open the application log with object FARR. It says why, item by item.

    • SLG1
    SAP Community
  • 04Key users

    Mass runs for volume

    For many items use the mass transfer and processing runs instead of the buttons in the monitor.

    • FARR_RAI_TRANS
    • FARR_RAI_PROC
    SAP Help
  • 05Key users

    Keep manual entries off RAR accounts

    The report comparing RAR with the ledger flags differences account by account; most come from manual postings to those accounts.

    SAP Help
  • 06Key users

    Ask who changed it

    The change history shows every change to a contract or POB, with user and date. Auditors love it.

    • FARR_CONTR_HIS
    SAP text
  • 07Key users

    Big documents split

    A posting job usually creates one FI document, but splits it above 900 lines or when currencies differ, and splits single amounts above 99,999,999,999.

    SAP Help
  • 08Consultants

    Copy BRF+ templates, never edit them

    Create your own applications from SAP’s templates for SD, BRIM (CA), CRM and account determination.

    • FARR_AP_SD_PROCESS_TEMPLATE
    • FARR_ACC_DETERMINE_TEMPLATE
    Community guide
  • 09Consultants

    Regenerate after every class change

    A class released as productive only accepts compatible changes. Transporting an activated class can generate it in the target system through an after-import method.

    • FARR_RAI_GEN
    • FARR_RAIC_GEN_AFTER_IMP
    SAP Help
  • 10Consultants

    Run the consistency check every close

    The consistency monitor can run after each posting period. Save its results to FARR_D_CONS so you can compare closes.

    • FARR_CONTR_MON
    • FARR_CONTR_CHECK
    SAP Community
  • 11Consultants

    Migrate SD revenue recognition first

    Treat the move from VF44 to RAR as its own project, finished before the S/4HANA conversion. Switching from Migration to Productive cannot be undone; until then the initial load cleanup lets you repeat the load.

    • FARRIC_OL
    • FARR_IL_CLEANUP
    SAP Community
  • 12Consultants

    POB IDs are characters now

    The POB ID changed from numeric to character for performance reasons. Custom code that treats it as a number needs a review (SAP Note 2672794).

    • FARR_D_POB
    SAP PRESS
  • 13Consultants

    Direct posting has conditions

    It needs optimized contract management, works prospectively for existing customers and is not recommended for very high volumes.

    • ACDOCA
    Community guide
  • 14Consultants

    Pick the period-end rhythm

    Running the three programs rarely leaves little time to fix errors; running them too often can cause deadlocks.

    • FARR_REV_TRANSFER
    • FARR_LIABILITY_CALC
    • FARR_REV_POST
    SAP PRESS

Myths

Things people get wrong about RAR

  • MythRAR replaces SD billing.

    FactSD keeps invoicing and creating the nota fiscal. RAR decides when that money becomes revenue.

  • MythThe RAR contract is the sales contract.

    FactIt is the accounting view of the deal. One RAR contract can bring several sales documents together.

  • MythRevenue in RAR equals the invoice amount.

    FactOnly in total, at the end. Along the way allocation moves revenue between obligations, as the handset puzzle shows.

  • MythEveryone on S/4HANA needs RAR for IFRS 15.

    FactSimple sales recognized at delivery may not need it, and event-based revenue recognition is the other option.

  • MythRAR 2.0 is the S/4HANA version.

    FactAn informal nickname. SAP never released a product called RAR 2.0.

  • MythVF44 still works after the conversion.

    FactSD revenue recognition is not available in SAP S/4HANA. Migrate it to RAR before the conversion.

History

From a 2014 standard to the Universal Journal

From a 2014 accounting standard to postings straight into the Universal Journal.

  1. 2014MayThe IASB and FASB issue IFRS 15 and ASC 606, one revenue model first meant to apply from 2017.
  2. 2015SeptemberThe IASB defers IFRS 15 to periods starting on or after 1 January 2018.
  3. 2015NovemberRAR 1.1 enters ramp-up. SAP targets telecom carriers and the handset-versus-plan split, with SAP hybris Billing integration.
  4. 2016DecemberBrazil publishes CPC 47 as NBC TG 47 in the Diário Oficial on 22 December, effective 1 January 2018.
  5. 2017AugustRAR 1.3 for SAP ERP (add-on REVREC 130): SAP PRESS dates its first standalone release (SP03) to August 2017.
  6. 2018JanuaryIFRS 15 and CPC 47 apply: revenue from contracts with customers follows the five-step model.
  7. 2018S/4HANA 1809The add-on becomes part of SAP S/4HANA; SD revenue recognition is no longer available there.
  8. 2019S/4HANA 1909Optimized contract management: faster contracts and day-based contract changes.
  9. 2020S/4HANA 2020–2021Optimized inbound processing handles items in real time (2020); direct posting sends entries straight to the Universal Journal without the RAR subledger (2021).
  10. 2027End of the yearSAP ERP mainstream maintenance ends; extended maintenance runs to the end of 2030. RAR on SAP ERP lives on the same clock.

The questions people ask most

Why don’t I see revenue right after billing?

Because the invoice is not the event that earns revenue. SD posts the invoice; RAR takes the billed amount out of revenue into the receivable adjustment account and recognizes it when the obligation is fulfilled, at period end through the three programs.

What is the difference between a contract asset and an unbilled receivable?

Both mean revenue is ahead of billing. Unbilled receivable is calculated per performance obligation against the invoice date; contract asset is netted per contract against the invoice due date. Deferred revenue and contract liability are the mirror pair.

What is a reconciliation key?

A 10-character key that groups the creation, fulfillment and posting transactions of one company code, one accounting principle and one period. Posting and reconciliation reports work by it, and it closes when the period is posted.

Can I reverse a revenue posting run?

Yes. Postings created by an earlier job can be reversed, corrected and posted again.

Does RAR calculate or post taxes?

No. Revenue postings carry no input or output tax; tax stays on the invoice and its fiscal document.

RAR or event-based revenue recognition?

RAR is built for IFRS 15 and ASC 606 with its own contract, allocation and high volumes. Event-based revenue recognition is set up in controlling and posts revenue and cost in real time from sales orders, projects and service documents.

Classic or optimized contract management?

For new S/4HANA projects SAP PRESS suggests evaluating the optimized versions, where SAP now invests. Companies moving a heavily enhanced RAR from SAP ERP may prefer classic first.

Is RAR available in SAP S/4HANA Cloud?

Partner Bramasol reported in 2022 that RAR with optimized contract management is used in the private edition, while the public edition covers revenue recognition with event-based and contract-based revenue recognition. Check SAP’s current scope for your edition.

Which senders can feed RAR?

SD, BRIM, SAP CRM and SAP S/4HANA Service are integrated as standard. Third-party systems can send items too, as long as the data matches the format and quality SAP senders deliver.

How do I move from SD revenue recognition to RAR?

Clean SD data (VF47, VF44, VF42), set up RAR with a migration package and a transfer date at month end, run the operational load (FARRIC_OL), process the initial load, reconcile, and only then switch the status to Productive.

References

Checked in November 2026. Several SAP Help pages come from the original Revenue Accounting library; the functions they describe still exist in SAP S/4HANA. Transaction names are SAP’s own texts as listed by public transaction directories. SAP Notes need an SAP for Me login.

Reference group