Down Payment Processing with Document Condition

Based on SAP documentation: , thus you can use this to process down payments on the basis of document conditions in sales orders.

Down payments based on document conditions are a common form of down payment when buying and selling high-quality products, for example in hardware stores, furniture stores, or for wholesale technical equipment. The down payment is due as soon as the order is made, that is when the sales order is created. The down payment values are stored as conditions in the sales order either in header level or item level.

You can use this type of down payment for delivery-related and order-based billing.

Here I already tested the usage when it is used for billing delivery-related based.


Enhancing Pricing Procedure with Condition Type: AZWA, AZWB, AZDI

The following condition types are supplied in the standard system:

  • AZWA for debit down payments. By copying the AZWA you can create a percentage debit down payment condition.  AZWA has the calculation type B (fixed amount) and condition type initial. It is configured as a group condition and can be entered for the header or item.
  • AZWB for billing. AZWB has the calculation type G (formula) and the condition type E (down payment demand/settlement).
  • AZDI for rounding differentials balance. AZDI has the calculation type B (fixed amount), the condition class A (surcharges or discounts), condition type L (generally new when copying) and cannot be edited manually. It is an item condition.
1. Configure Pricing Procedure for condition type: AZWA, AZWB, AZDI.



Routines that is used here is routine 49 and 48:

a. Formulas Condition Value: 49 (Cond. Down Payments)

(t-code: VOFM > Formulas > Condition Value)img-2.2i

b. Formulas Condition Base Value: 48 (Cond. Down Payments)

(t-code: VOFM > Formulas > Condition base value)


Make sure that all routines are activated first, then they  can affect in your sales document.

2. Condition type AZWA


3. Condition type AZWB.

img-2.2f img-2.2g

4. Condition type AZDI.

img-2.2d img-2.2e

Setting in Financial Accounting

1. Configure reconciliation account (transaction OBXR)

You must assign the field status area G031 for the G/L accounts Down Payments Received and Down Payments Requested chosen by you.

2. Set Accounting Configuration (transaction OBXB)

You must configure the posting key for the down payments (process ANZ in the standard system) and the output tax billing (process MVA in the standard system).

Aside from this you must perform an account assignment for the tax account.

3. Configure posting key (transaction OB41)

You must set Sales Order as optional entry for the posting key 19.

4. Set field status area (transaction OB14)

You must set Sales Order as optional entry for field status variant 0001, field status group G031.

5. Assign field status variants to company code (transaction OBC5)

Business Process Flow
Basic Process of Down Payment Based on Condition
Basic Process of Down Payment Based on Condition

Business scenario:

A customer order 3 materials to you each $ 123,000.00. Since the price of the product is high, thus your customer should paid some amount of debt as down payment. Let say that customer deal to pay $ 50,000.00 as down payment. Thus, you record the customer down payment as condition in sales order item. Then the process is continued to delivery and billing. Since delivery is made partially, thus the down payment amount that affect in billing document is divided proportionally based on quantity in delivery order.


1.1. Create Sales Order (t-code: VA01)

Enter the values of the standard fields that must be filled when creating a sales order.


Your product price is $ 123,000.00. Thus the total amount is $ 369,000.00.img-2.2k
1.2. Input Customer Down Payment in Sales Order Item (t-code: VA02)

Change your sales order to enter the customer down payment in condition type AZWA for sales order item 10. Enter $ 50,000.00 as this amount is deal with customer for the payment through down payment.


1.3. Posting Customer Debit Down Payment (t-code: F-29)

The amount that deal with customer is $ 50,000.00. The payment of this customer down payment is record in FI transaction through transaction F-29. Ask your FI consultant how to input transaction down payment using this t-code.


Don’t forget to record the sales order and item number in field provided (in case your down payment is affect in item level).


After simulate, the journal that will create is like screenshot below. Then post your posting.


Accounting document created.


Record in report FBL5N (Customer Line Item Display).


1.4. Create Delivery Order (t-code: VL01N)

Based on scenario, delivery is send partially. Here I only post 1 PC of material to be goods issued.


1.5. Create Billing (t-code: VF01)


img-2.2tThe value of condition type AZWB, is calculated from the amount of debit down payment that is posted from transaction F-29.  The basis for distribution for the second or third milestone bill is not the debit down payment, but instead the difference between the debit down payment and the cleared down payments in existing billing documents for the item. Similarly, the value to be distributed is no longer the total of the payments received in financial planning but is rather the difference between the total of the payments received and the billing postings for these payments.

The value of AZWB is calculated based on this formula:


The value of condition type AZWB can be processed manually, however you cannot exceed the maximum allocation value. An error message will be thrown if the amount you entered is exceed the maximum allocation value.


Journal in accounting document.



This documentation only provide basic explanation about how to use Down Payment (DP) based on document condition. Later, if you want to modify based on user’s requirement such as block and approval, enhancement in routine and user exit should be made.


26 thoughts on “Down Payment Processing with Document Condition

  1. in our system all implementations have been made, still cant make AZWB work. Our basis team activated sd_01, however nothing has changed any ideas?

    1. Have you check the routine in VOFM for routine number: Formulas Condition Value: 49 (Cond. Down Payments) and Formulas Condition Base Value: 48 (Cond. Down Payments)?
      If there are no problem with the routines, maybe you can ask help abaper to set breakpoint during billing creation.
      Hope it helps.

  2. Hello ,
    I tried to simulate this as well but seems routine 49 has no coding in it .Can you please paste routine 49 screen shot .
    also if both condition type (AZWA and AZWB) are statistical , system will not allow to post .Please update?

    1. Have you make sure the business function for this process is activated: sd_01?
      The condition type for AZWA & AZWB are statistical, the routine it self will propose the posting to accounting.
      Sorry cannot put the coding, since the coding is very long. You should activate the business function for first, ask basis guy for do that. In my IDES it’s work that’s why I can put the result in my blog.
      Good luck.

      1. Hi Dear, I want if user cant make down payment with reference to SO, system should not create the delivery, please suggest.

  3. Hi, would have been awesome if you could have also configured the subtotal, showing on the invoice the net value remaining to be paid..

  4. Thanks for this instruction. What I miss is the bill for the downpayment. Is it not possible to create such to send ist to the customer, like the FAZ if you work with billing plans?

    1. Hi Wodi,
      Yes there is no standard functionality to create such down payment request invoice like we do by using billing plan. But maybe we can use workaround such as create proforma invoice based on sales order to create invoice for down payment request, but still there is lack functionality there. Because it is only for printing purpose, not trigger any special GL in accounting entries like down payment request does.

  5. Hi Monica,

    at first thank you for sharing, I would ask to you, in where path could I find AZWA AZWB and AZDI because I have check in SPRO — Sales and Distribution — Basic Function — Pricing — Pricing Control — Define Condition Type :: Maintain Condition Type
    in there I only found AZWR
    please show me the path

    thank you before

    1. Hi,
      This function can not be used directly until you activated first business function SD_01.
      In certain case, regardless I have activated that business function but the condition types do not appear, I sometimes create manually those conditions types (AZWA, AZWB, AZDI) and applied them in appropriate pricing procedure and place the necessary routines.

      Thank you,

  6. Hi Monica,
    thank you for this great explanation. I managed to customize and test this as described. Just one error left (VFX3)…
    For posting key 16 text is mandatory in our system (I do not want to change this). Do you have an idea which exit to choose and how the coding should look like?
    I already tried EXIT_SAPLV60B_008 (User exit AC Interface transfer tables) but this seems to be to late. EXIT_SAPLV60B_002 would work, but a this stage I haven´t the positing key availabe.
    Thank you.

  7. Hi Monica,
    I have configured the system all the conditions types (AZWA, AZWB, AZDI) are coming in sales order. But after doing F-29, when i am doing invoicing AZWB condition type is not coming with value. Can you please help how to get it.Do i also needs to do copy control for sales order to billing (OR-F2).

    Please also mail me the document which you have send to ganesh


  8. Monica appreciated your post with details flow , I have requirement to manage Customer Advances as customer will make advance payment and company will issue invoice to Customer for advance payment for Normal Sales order flow SO>Dly>Billing . as we are using existing order type that is global and it doesn’t have billing Plant functionality so we don’t want to use that…is it possible to sent invoice for advance payment ? ….. right now we are using debit memo and then SO process to handle advance.. please suggest how to refine the process….

  9. Hi, Great.. it solved my issues. thanks.

    I have a question, the down payment document does not appear in sales order document flow. I have seen it in milestone billing.

    please advise.

  10. Based on this document I created the pricing condition types in the Sandbox system. I checked that SD_01 was not activated. I then proceed to perform the end-to-end step. I am surprised that it worked without the activation. I am now wondering what this activation will do. I am unable to ascertain what program or configuration is turned on and what is not. When I check the system, the pricing formula was there. Only the pricing condition types are missing. It seemed that we can implement this whole thing without the activation of SD_01. Appreciate that anybody can share what the activation will do. Thanks in advance.

  11. I would like to share one of my finding. One answer that I was not able to find from my research was whether condition based downpayment support header downpayment. The general answer was YES. However none specified how it is done. I am happy to discover how it works when I tested it in Sandbox.

    When we create the SO and we have multiple items, we must go to HEADER CONDITION Tab to append AZWA pricing condition. When we go that, SAP will know that this is a header downpayment. During F-29, SAP will check the SO to see if the downpayment is at header condition or at item condition. If it is a header downpayment in the SO, SAP will allow F-29 to enter only the SO number. No item number is required. If F-29 checked that the SO downpayment is at item level, then it will give an error message V1 125 saying item number must be entered. F-29 is calling function module SD_DOCUMENT_ACCOUNT_ASSIGNMENT. Inside this FM there is an enhancement spot by SAP that does this validation.

  12. Hi,
    I have a question here, what will be the procedure for cancelling a invoice with condition based invoice.
    as i am facing an issue, that the value of AZWB is not reverting back to the value before the initial invoice was creating.
    for example: sales order had 10 QTY with AZWA of 10,000 USD, invoice 1 had 6 Qty with AZWB of 6000 USD, I cancelled Invoice 1. Now when i create Invoice 2 with 6 Qty AZWB is showing 4000 USD.
    Also the Cancellation invoice (lets call it) Invoice 1a is not getting getting to accounting. below message is coming:
    Distribution error in downpayments. Billing document XXXXXXX not transferred. Message No. VF533
    can you please help
    Thank you very much.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s