How to handle Order/Invoice with split Payment terms ?

Hi we are implementing 11.5.9 for one of our sites...
we have a situation wherein we charge the customer on placing the Order, on shipping the
goods and on their acceptance...
For example,Assume total order is $200,000. 10% on placing order; 20% on shipping: and 70%
when customer accepts.
10% - 20,000
20% - 40,000
70% - 140,000
We need to issue invoices at each stage too...
Can anyone suggest a way out ??
thanks in advance..

Hi,
After much thought, My knowledge took me to Customization way to this Scenario.
1. Define Order type to close immediately after delivery.
2. Design a Invoice Print report, which will bring details into a TEMP table from Order depending on Order status.
i.e. Order booked -- 1 line inserted into temp table with 10% of order amount and status as Booked.
The Invoice will be printed using this details and an interface program should fire, which will interface this line to ra_interface_lines_all.(Plan program as per your needs. This is just a test case I have taken)
3. On next run, after delivery, the Line status will change to Delivered, which will insert another line into TEMP table which current record flag 'Y'. Prints and Interfaces the invoices to AR.
Similarly next step.
Design of this TEMP table and other validations, you can discuss with Technical Consultant. I think, we can achieve this only with this minimum customization.
Standard application is just giving workarounds and not perfect solution to this.
Regards,
Sridhar

Similar Messages

  • AR Invoice with Installment Payment Terms

    Hi to All,
    We have an invoice where the payment terms are based on installment. The installment is for 18 months.  Automatic cash receipts have been applied correctly for Installment 1 and Installment.
    Our situation is this where we want to apply an On Account receipt to installment 3.  When we query for the installment 3 invoice we are getting the following error message:
    "FRM-41830: List of Values contains no entries"
    Basically the the invoice is not being queried.  We checked the invoice, it is complete but the installments 3-18 are open.  What we like to know if we can preform an on account receipt to an installment invoice...if so what setup do we need to look for.
    Thanks in advance for any help.

    Hi Bharat,
    Thanks for your reply.  We checked the invoice payment schedule in the tables are 4th to 18th are all open.  We have also verified this thru the forms and same appears.
    So when we go to receipts and attempt to apply on accounts funds to the invoice.  We cant query for the invoice.  The following oracle forms message appears:  "FRM-41830:  List of Values contains no entries"

  • Sales order blocked for credit with status "Payment Terms"

    Hi Experts,
    Sales order is blocked for credit, as when i refer the t.code vkm3 or vkm1, the status of blocking showing as "Payment Term". Geenrally the status of credit block would be 'Old item', Dynamic check', value etc.
    My question here is how the sales order is blocked with status "Payment Terms", and what is the role of payment terms in credit management.
    regards
    Vivek.

    Hi  Vivek,
    The Standard Cr. management  ( Automatic credit check) of SAP has Critical Fields Check - payment terms is one of them,
    If it is being changed in sales order (other than maintained in Customer master) the sales order will go for credit block
    Thanks
    Dilip S

  • How can I make invoice when down payment is bigger than item value ?

    Dear all,
    please, I need make invoice with bigger down payment than the item value.
    How can I make invoice when down payment clearing value is bigger than the item value ?
    When I do Release To Accounting, I have got a massage:
    "Total of down payment to be billed too high. See billing document item XXXXX"
    Please, how can I solve this problem?
    Thank you
    Peter

    Hello,
      I would like to underline that this is not a problem, but a standard, and in my opinion rightful behaviour of SAP: in a dowpayment process, when you create the invoice document, you should deduct only an amount less or equal to the invoice amount. And in the following invoices you will deduct the remaining downpayment amounts still open.
    Also under al legal and fiscal point of view, I guess how would you print the invoice? With a minus value?
    Best regards,
    Andrea

  • How to create excise invoice with reference thorugh credit memo

    Hi All,
    Please provide any solution for the following qurey:
    How to create excise invoice with reference thorugh credit memo

    Hi murali,
    i am unable to understand your requirement i think there is no like this scenario requirement for any client
    if any requirement is there kindly explain detail
    cheers

  • F-48, Clearing Invoice with Down payment error

    My Dear Friends,
    I have a problem with Clearing Vendor Invoice with Dwon payment.
    I have a down payment of 50000 made to a vendor
    I have an invoice raised for 100000 from Vendor
    Now, i want to celar the Down payment with Invoice.
    But, when i go to F-54 and try to clear the Down payment, it is taking in Global Company Currency and giving a meesage that "The balance in Global company currency is too large".
    I do not have any clue why it is taking the Global company currency in the first place.
    I have checked the configuration and even i have checked the box "Central Inv Prop"
    Kindly help me
    Thanks,
    Narasim

    Hi,
    I think if you see the below entry while clearing the Down payment with Invoice, you might get an idea.
        PK  BusA Acct                               CNY   Amount        Tax amnt
       001 39A      0003012265 BMW                                       720.00-
       002 26       0003012265 BMW                                         720.00
       003 40       0021611000 TDE Interest                                72.00-
    "Balance in Global company currency CNY is too large for automatic correction"
    Message no. F5580
    Actual entry should be
    39A   BMW     A/C    CR  5000
    26      BMW     A/C    DR  4500
    40      TDS       A/C    DR    500
    Please help me
    Thanks,

  • How to handle "xsd:anyAttributes" with jaxb

    Need help for how to handling "xsd:anyAttribute" with jaxb!
    Here is part of my xml schema.
    <xsd:attributeGroup name="DataAttributes">
    <xsd:anyAttribute namespace="##local" processContents="lax"/>
    </xsd:attributeGroup>
    <xsd:element name="Data">
    <xsd:complexType>
         <xsd:attributeGroup ref="DataAttributes"/>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="MA_Verify">
    <xsd:complexType>
         <xsd:sequence>
         <xsd:element ref="Data" minOccurs="0" maxOccurs="unbounded"/>
         </xsd:sequence>
         <xsd:attributeGroup ref="verifyAttributes"/>
    </xsd:complexType>
    </xsd:element>
    I have an application which only knows the attribute names and values at runtime. (Thest attributes are string.) Therefore, I cannot define attribute names in the schema and have to use xsd:anyAttribute.
    I was able to generate all jaxb code. However, the interfaces generated for Data and DataType are basically all empty. The impl classes are empty too, since no get or set methods exist for the attribute.
    Some thoughts for handling this case, but do not know if it will work.
    (1) write some derive classes on top of the generated jaxb classes.
    (2) write customized method to handle the 'Data' element level and its attributes. Similar to parseMethod or printMethod for the javaType.
    (if there is a way)
    Can anyone give me suggestions, directions or an laternate way to handle the situation?
    Your help will be greatly appreciated.
    Ruth

    xsd:anyAttribute is not supported by JAXB.
    http://java.sun.com/xml/jaxb/users-guide/jaxb-works.html#unsupported

  • How to handle Table controls with XD01 in BDC

    How to handle Table controls with XD01 in BDC - If there are more than 5/6 records in Table control. - Can any one explain it with a piece of code plz..
    Thanks & Regards,
    Krishna Chaitanya

    Hi
    check this code...viz for xko1....
    DATA: BEGIN OF it_xk01 OCCURS 0,
            f1(1),
            f2(5),
            f3(5),
            f4(9),
            f5(9),
          END OF it_xk01.
    DATA: v_count(2) VALUE '00',
          v_koinh(14),
          v_banks(14),
          v_bankn(14),
          v_bankl(14),
          it_bdcdata TYPE STANDARD TABLE OF bdcdata WITH HEADER LINE,
          wa_ctuparams type ctu_params.
    PARAMETERS: p_file TYPE rlgrap-filename OBLIGATORY.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
      PERFORM get_f4.
    START-OF-SELECTION.
      PERFORM upload_data.
    END-OF-SELECTION.
      LOOP AT it_xk01.
        IF it_xk01-f1 = 'H'.
          PERFORM bdc_dynpro      USING 'SAPMF02K' '0100'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'RF02K-KTOKK'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'RF02K-KTOKK'
                                        it_xk01-f2.
        ENDIF.
        IF it_xk01-f1 = 'N'.
          PERFORM bdc_dynpro      USING 'SAPMF02K' '0110'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'LFA1-PSTLZ'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=VW'.
          PERFORM bdc_field       USING 'LFA1-ANRED'
                                        'Mr'.
          PERFORM bdc_field       USING 'LFA1-NAME1'
                                        it_xk01-f2.
          PERFORM bdc_field       USING 'LFA1-SORTL'
                                        it_xk01-f3.
          PERFORM bdc_field       USING 'LFA1-PSTLZ'
                                        it_xk01-f4.
          PERFORM bdc_field       USING 'LFA1-LAND1'
                                        it_xk01-f5.
          PERFORM bdc_dynpro      USING 'SAPMF02K' '0120'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'LFA1-KUNNR'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=VW'.
        ENDIF.
        IF it_xk01-f1 = 'I'.
          v_count = v_count + 1.
          IF v_count le 5.
          CONCATENATE 'LFBK-KOINH(' v_count ')' INTO v_koinh.
          CONCATENATE 'LFBK-BANKS(' v_count ')' INTO v_banks.
          CONCATENATE 'LFBK-BANKN(' v_count ')' INTO v_bankn.
          CONCATENATE 'LFBK-BANKL(' v_count ')' INTO v_bankl.
          CONDENSE v_koinh NO-GAPS.
          CONDENSE v_banks NO-GAPS.
          CONDENSE v_bankl NO-GAPS.
          CONDENSE v_bankn NO-GAPS.
          PERFORM bdc_dynpro      USING 'SAPMF02K' '0130'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                         v_koinh.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING  v_banks
                                        it_xk01-f2.
          PERFORM bdc_field       USING  v_bankl
                                        it_xk01-f3.
          PERFORM bdc_field       USING  v_bankn
                                        it_xk01-f4.
          PERFORM bdc_field       USING  v_koinh
                                        it_xk01-f5.
          else.
          PERFORM bdc_dynpro      USING 'SAPMF02K' '0130'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                         v_koinh.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=P+'.
          v_count = 1.
          PERFORM bdc_dynpro      USING 'SAPMF02K' '0130'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                         v_koinh.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          CONCATENATE 'LFBK-KOINH(' v_count ')' INTO v_koinh.
          CONCATENATE 'LFBK-BANKS(' v_count ')' INTO v_banks.
          CONCATENATE 'LFBK-BANKN(' v_count ')' INTO v_bankn.
          CONCATENATE 'LFBK-BANKL(' v_count ')' INTO v_bankl.
          CONDENSE v_koinh NO-GAPS.
          CONDENSE v_banks NO-GAPS.
          CONDENSE v_bankl NO-GAPS.
          CONDENSE v_bankn NO-GAPS.
          PERFORM bdc_field       USING  v_banks
                                        it_xk01-f2.
          PERFORM bdc_field       USING  v_bankl
                                        it_xk01-f3.
          PERFORM bdc_field       USING  v_bankn
                                        it_xk01-f4.
          PERFORM bdc_field       USING  v_koinh
                                        it_xk01-f5.
          ENDIF.
        ENDIF.
        CLEAR it_xk01.
      ENDLOOP.
      PERFORM bdc_dynpro      USING 'SAPMF02K' '0130'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                         v_koinh.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
      perform bdc_dynpro      using 'SAPLSPO1' '0300'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=YES'.
      wa_ctuparams-DISMODE = 'A'.
      wa_ctuparams-UPDMODE = 'S'.
      wa_ctuparams-DEFSIZE = 'X'.
      CALL TRANSACTION 'XK01' USING it_bdcdata  MODE 'A'
                                                 UPDATE 'S'.
    options from wa_ctuparams.
    MODE 'A'
                                                UPDATE 'S'.
    *&      Form  upload_data
          text
    FORM upload_data .
      DATA: lv_infile TYPE string.
      lv_infile = p_file.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename            = lv_infile
          filetype            = 'ASC'
          has_field_separator = 'X'
        TABLES
          data_tab            = it_xk01.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " upload_data
    *&      Form  get_f4
          text
    FORM get_f4 .
      CALL FUNCTION 'F4_FILENAME'
       EXPORTING
         program_name        = syst-cprog
         dynpro_number       = syst-dynnr
        FIELD_NAME          = ' '
       IMPORTING
         file_name           = p_file.
    ENDFORM.                                                    " get_f4
           Start new screen                                              *
    FORM bdc_dynpro USING program dynpro.
      CLEAR it_bdcdata.
      it_bdcdata-program  = program.
      it_bdcdata-dynpro   = dynpro.
      it_bdcdata-dynbegin = 'X'.
      APPEND it_bdcdata.
    ENDFORM.                    "BDC_DYNPRO
           Insert field                                                  *
    FORM bdc_field USING fnam fval.
    IF FVAL <> NODATA.
      CLEAR it_bdcdata.
      it_bdcdata-fnam = fnam.
      it_bdcdata-fval = fval.
      APPEND it_bdcdata.
    ENDIF.
    ENDFORM.                    "BDC_FIELD
    *H     0302
    *N     sdng     dddsj     500020     IN
    *I     IN     ICICI     734897597     xyz
    *I     IN     SBH     768346687     abc
    *I     IN     SBI     345687346     fgh
    *I     IN     SBH     763846878     ujhgf
    *I     IN     HSBC     797893778     fvdg
    *I     IN     HDFC     723678638     fdgf
    *I     IN     4444     435645646     fgfg
    *I     IN     3400     763468768     gfgfg

  • Issue with Idoc when creating invoice taking wrong payment term

    Hi All,
    My Requirement is invoices created through B2B interface should hold the payment term of purchasing party instead of invoicing party
    400021 is Invoicing party having payment term 2000 i.e. 20 days
    414478 is the Purchasing party having the payment term 1000 ie 10 days
    So invoice should hold the payment term 10 days instead of 20 days
    I have an IDOC which is creating Invoice, I am trying to reprocess the IDOC to see the issue but could not able to achieve the solution.
    Please help me out which approach should i follow to achieve the solution of this issue.
    Thanks,
    VB

    Hi,
    Try using E1EDK18 segment. Put "Number of days" ,Qualifier and check if this achievs the desired result or not? If yes then you have to use an user exit to put the number of days in the IDOC.
    Cheers,

  • Single invoice for multiple payment terms

    Hi Friends,
    I have given 2 different payment terms for 2 line items in single order and the billing is splitted due to this reason. I want to know where the system is checking this control. Because I want to create single Invoive even the payment terms are different. (The routine 003 under Data VBRK/VBRP in SO to Bill copy controls will be usefull only to create single Invoice for multiple SO's where the payment terms is same). But I need to create single Invoice even for multiple payment terms.
    Can anyone suggest me at the earliest please.
    Kumar

    Hi Kumar,
    The Billing Split is take care at Copy control level.
    For multiple line items in one single SO, with different Payment terms is not acceptable as per the  business logic and its not best practices.
    Please suggest the business to go on Split method only.
    Or
    Try to use Proforma Invoice Concept.
    Regards
    Srini

  • How is VBDKR - ZTERM_TX1 gets populated ? Payment terms ...

    Hi,
    How does VBDKR-ZTERM_TX1 VBDKR-ZTERM_TX2 and VBDKR-ZTERM_TX3 get populated? Currently I see that in the INVOIC IDOC the payment term is populated from VBDKR-ZTERM_TX1 which is not based on payment terms. , I am getting the value 'Payable immediately without deduction'. I was wondering how did this value get populated which is different from the text maintained for paylemt term in table T052 table.
    IDOC segment : E1EDK18-ZTERM_TXT
    I see that the payment terms in the master table are carried onto Sales order and then to billing document which match the T052 value of the payment term but the IDOC is pulling some other value from some where.
    Regards
    Praneeth
    Edited by: gansprasan on Oct 26, 2011 12:36 PM

    Hi All,
    All the information  provided helped me in determining the logic from where this additional text is extracted.
    Actually the new text is a more descriptive text of the same payment terms we see on the SD documents with additional information like percentage, base line date to give more information to the end customer as the info on the payment term in SD document is very brief.
    SD_PRINT_TERMS_OF_PAYMENT Function module has the text embedded within the text elements and is pulling this text based on some additional logic inside the FM program.
    Regards
    Praneeth

  • With holding tax base amount for 1099 vendors with discounted payment term

    Hi Friends,
    We have a below situation for 1099 vendors,
    Some of the 1099 vendors are set-up in the system with payment term with discounts i.e. 2% if paid within 10 days
    As per config, system posts with holding tax base amount at the time of posting payment.
    With holding tax rate is 0%,
    Based on modified net amount calculation
    and
    Cash discount calculation before w/tax calculation
    When we have vendor with input tax, system excludes tax amount at the time of payment but for the with holding tax base calculation amount system does not exclude input tax type.
    Which causes difference in 1099 – misc vendors
    Below is the example of how system calculates the amount.
    Invoice $ 1000, payment term 2% if paid within 10 days. Input tax 7.25%
    Payment going out=
    $1000- $ 72.5(tax 7.25%) = $ 927.5 – 18.55 [2% discount] = $ 908.95 (payment amount)
    With holding base calculation =
    $ 1000 – 100 (2% discount) = $ 900
    Difference between payment going out and with holding tax base = 908.98 – 900 = 8.98
    Can some one please tell me how to get rid off this difference?
    Moreover, please tell me if it’s normal to have 1099 vendors with discounted payment term.
    Any thoughts on above situation will be helpful
    Edited by: Shefford William on Jan 28, 2008 11:36 PM

    Dear All
    i am also having the same problem. The example is
    Net invoice Value   = $ 100,000
    Input Tax @ 15%   = $  15,000
    Total Invoice Value = $ 115,000
    Cash Discount = 20% with in 20 days
    On payment the system behavior should be
    Debit  Vendor invoice Value   = $ 115,000
    Debit  Cash Discount @ 20%    = $   20,000   ( 20% of the Net Invoice Value that is 20% of $ 100,000)
    Credit  W/H Tax deduction @ 3.5% = $ 3,325  ( 3.5% of 95,000 the Inv Value - Cash Discount that is $ 115,000 - $20,000)
    Credit Bank Account  = $ 91,675 ( Inv value - Cash Dic - W/H tax that is $ 115,000 - 20,000 - 3325 = 91,675)
    However at the time of payment system is calculating tax as follows
    Debit  Vendor invoice Value   = $ 115,000
    Debit  Cash Discount @ 20%    = $   20,000   ( 20% of the Net Invoice Value that is 20% of $ 100,000)
    Credit  W/H Tax deduction @ 3.5% = $ 3,220  ( 3.5% of 92,000 the Inv Value - Cash Discount that is $ 115,000 - $23,000. This $ 23,000 is only calculated for W/H tax calculation that is 20% of $ 115,000 )
    Credit Bank Account  = $ 91,780 ( Inv value - Cash Dis - W/H tax that is $ 115,000 - 20,000 - 3220 = 91,780)
    this is not the common practice when using the net base value in the system.
    Can any one help me in this regard. I really have been stucked in this problem for many days
    Regards
    Bilal Athar

  • Cust sends EDI with incorrect payment terms

    Hello SAP Gurus-
    Do controls exists in SAP ECC 6.0 that will place orders on hold once customer sends order via EDI with incorrect payment terms?  We have situations where customer is remitting EDI with net 45 and in customer master the payment terms are net 60. 
    They are going through the system and we don't know how to stop them.  What can we do to control this?  We would like the order to go on hold so that we can manage without the orders print and shipping.  Is this a configuration change?  If so, where?
    Thank you!!

    Hi,
    In your payment Terms configuration, you need to enter 11 in discount percentage 2 as blank and discount days 2 as 11. Then system will not calculate discount from the 11th day. If you dont enter then system will populate the discount even after the discount date is over.
    Hope this helps
    Regards
    Mahendra

  • Getting split payment terms in case of customer credit memo(Doc type DG)

    Hi Guys,
    Is there any FM available for getting split payment terms in case of customer credit memo(Document type DG). There will be no invoice/billing doc for this document type and will be created from FB75 transaction. For billing document i am using FM SD_PRINT_TERMS_OF_PAYMENT_SPLI. Please let me know if there is any FM for accounting document also.
    Thanks,
    Vinod.

    Hi,
    Try this bapi
    BAPI_AR_ACC_GETSTATEMENT

  • How to inactive "Credit Limit" field under "Payment Term" tab of BP Master

    Hi,
    Can anyone tell how to inactive "Credit Limit" field under "Payment Term" tab of BP Master Data in BP module?   I'd prefer to revise SAP SP (store procedure)...
    Thanks in advance

    Hi Michelle,
    You could use the sample codes available while installing the SDK setup.
    like in this path C:\Program Files\SAP\SAP Business One SDK\Samples\COM UI\VB.NET
    Add this code under SBO_Application_ItemEvent which will disable the field.
            If (pVal.FormType = 134 And pVal.EventType = SAPbouiCOM.BoEventTypes.et_FORM_LOAD And pVal.Before_Action = False) Then
                Dim oforms As SAPbouiCOM.Form
                Dim oitems As SAPbouiCOM.Item
                oforms = SBO_Application.Forms.GetFormByTypeAndCount(pVal.FormType, pVal.FormTypeCount)
                oitems = oforms.Items.Item("85")
                oitems.Enabled = False
            End If
    Note that the above is only a sample code and you have to track other events as well to disable this field like in add mode, browsing records
    If you need help with SDK, post it in SDK forum.
    Regards,
    Vijay kumar
    SAP Business One Forums Team

Maybe you are looking for

  • Queries in Siebel Analytics 7.8 (Cayman)

    Hi I am new to Siebel Analytics. I have few questions 1) I have dashboard where in 3 prompts Prompt1,Prompt2 and prompt3 , when i pass the values to these and press "Submit" and after that a web link.i am getting a report on new page. here the requir

  • How to set the focus to a first element in oracle apex 3.2.1  and 3.1.2.00

    Hello , I am using oracle apex 3.2.1 in development env. How to set the focus to a first element of a page. thanks/mahesh

  • Call jspdynpage or Abstract Portal Component from SAPUI5

    Hi, I am new to SAPUI5, so might ask basic and dumb questions. I am trying to develop an application in sapui5 which should have the functionality to read and write a file to the server. It is different from file upload as the user wont be selecting

  • Gallery images not found.. BUGS!!

    I HAVE UPDATED TO PR1.3 ... I COPIED ALL THE IMAGE STO MY PC AND HARD RESET MY N9. NOW I COPIED BACK ALL THE IMAGES AND I CANNOT FIND THEM IN THE GALLERY.. ONLY NEWS IMAGES TAKEN USING CAMERA ARE FOUND.. AND THE IMAGES WHICH I DOWNLOAD ON MY N9 AND S

  • How to delete several inspection plan

    Hi every body, I need to delete 4000 inspections plan, but I don't know how I can do it? Somedody could help me? I try tcode QSR6, but this tcode delete just one inspection plan!! tHANK for any help. Cdt Kari