@Fabien: 1) googledoc line 13: I'm not sure that on pdf this is the contact that is show as address: - ACME FR (is company) - ACME EUROP (is company - JOHN DO AT ACME EUROP contact for invoicing address When you print invoice for ACME FR, and send it for validation to JOHN DO AT ACME EUROP that is in charge of all invoice for ACME CORP, I think address should be ACME FR on invoice. Does you mean that in this case I have to add JOHN DO AT ACME FR with same adresse , phone and email as JOHN DO AT ACME EUROP and use it to invoice ? Do you mean that this invoice will have JOHN DO ADRESS ? For me invoice has ACME FR adresse and is send by post or by email to JOHN DO AT ACME EUROP. That what we did in our customer install ... in report invoice (pdf) we have the invoice with address of ACME FR and the document is just send to JOHN DO AT ACME (just a spécial domain on invoice for contact_id) .. But the invoice IS for ACME FR. If I'm clear with what you said I have to create a JOHN DO at ACME FR, with 1) fr address of acme ? 2) or address of JOHN DO ? (for mail, phone and fax it's JOHN do think. If 1) JOHN DO will never receive invoice for validation by post .. So i think it's WRONG. Where i'm wrong ? 2) scenario 4: How do you create this structure ? (runbot 7.0-fix-contact-company-handling is disable .. will test when it 's ok, but for me you can not add contact to partner that's not a company ...) 3) Scenario 6: I don't see case when you disable (active = false) an contact because he has left le company and you have to create a refund. For me it's not john do at ACME that should be linked to the refund and eventually new invoice but the new contact .. ? 4) Scenario 7: You have to choose if it'a john do at ACME or not ... you say all over comment that it's not john do as partner_id but john do at ACME, and base contact add ability to have more function ? (I can test now because of nginx bad gateway on runbot, but will do it) Is there a branch with base_contact and fix-contact-company to test ? 5) Scenatio 8: One company order, but the delivery is another company and invoicing too ... hum, how do you manage contact with this ?JOHN do at ACME can be contact for delivery and invoice (the person who check, validate et follow the project) and address can be different ? how do you configure this to your point of view ? Ex: Nicolas JEUDY is in charge of a project that will be invoiced to TUXSERVICES FRANCE, and deliver to OPENERP (delivery address). But Nicolas JEUDY will be the only contact that is in charge of verifying computers are ok in OPENERP, and all goods are OK, but the delivery adresse (postal one in this case) is OPENERP ? should I create Nicolas JEUDY AT OPENERP ? Nicolas JEUDY will be able to recieve info only by email because postal adresse is wrong ... A contact is not necessary a person who has same postal adress as company. it's just the contact for the project, invoice ... And think that the mistake ... I'm ready to test these scenario but can you just tell me how I can create this situation ? Some questions: - In my modules how do i know when partner_id is a contact or a company ? I have to check if parent_id exist or if commercial_id existe ? what is the way you think we should do it ? - On a contract, I should add ACME or john DO at ACME in partner_id ? If it's ACME, how to have this contract on issue or task when invoice timesheet on issue,task is active (analytique account) ? Now I create issue with the contact that call me, do you mean all contact in ACME will have accounting, sales, ... informations duplicate ? I want to find a solution with community, parnter and OpenERP for sure, and think I will make video on good practice. But now I have lots of practical questions on how to setup OpenERP in the way you think (in V7). Thanks to take time to work together.