Finding a home in France
Home
Finding a home in France
  • Consult a French Notaire
  • Properties for sale
  • Directory of French Notaires
    The role of the French Notaire
    Due diligence
    Fees and transfert taxes
    Taxes & Other property costs
    Inheritance-donation
    Mortgage & financial advices
    Currency risks
    Notarizing Service
    Glossary
    Schedule and low cost airlines
    French holidays
    Who are we?
    Finding a home in France

    What you must know

    Nearly all French properties are freehold and are all registered at the land registry. Ownership of a house or a piece of land is determined by its registration and not by title deeds. While ownership is clear, the boundaries of a property may not be. If an exact plan of the property is not available or you are purchasing a sub-division of an existing registered property then the notaire will call upon the services of a surveyor to map the boundaries.

     
    Consult a Notaire to find your property

    The Notaires are an excellent source of information when looking for a property. They are, in fact, the only persons in charge of the execution of properties' sales. Most of the properties are still sold by Notaires (especially in rural areas) despite the developpement of estate agents. Notaires are recognised experts in real estate. They are the only ones that have access to the "Perval" files that list the sales prices of every property transaction in France.

    When using a Notaire as agent, you will have to sign with him a detailed mandate. Your request will be automatically send to all the other "Notaires" having a brokerage department.

    Notaires, as public officers, are bound to professional secrecy and adhere to a stringent ethic code. Notaires' negotiation fees have been set by a French governmental decree and are as follows :
    5 % of the purchase price for the first 45 735 euro
    2,5 % on everything above
    All fees are subject to VAT (TVA) at 19.6%
    They are due only when and if the transaction is concluded.

     
    Find a Notaire specialized in real estate brokerage


    The purchase process

  • The provisional sale and purchase agreement:


  • Once you have found your home and reached an agreement on its price, you must enter into a provionnal contract ("compromis de vente " or "promesse d'achat") with the seller. It is essential that you do it with a Notaire ; he is the only one to give you all necessary guarantee on your future acquisition. The provisional contract stipulates, among other things, the details and state of the property, the existing encumbrances, the price and term of payment, the amount of the security deposit, the date for taking possession and any conditions precedent you wish (building permit, mortgage...). The security deposit usually amounts to 10 % of the acquisition price and is payable after a "cooling period" of seven business days giving you the opportunity to retract. It is kept by the Notaire and is refundable in case the conditions precedent mentioned in the provisional contract are not met. Be careful: do not buy a rented property unless you have taken advice from the Notaire as tenants have many rights in France specially in rural areas.

  • The deed of sale and purchase:


  • This is the actual sale and purchase agreement which must be prepared by a Notaire and signed in front of him by the different parties concerned. See details under "The role of the Notaire" page.

    --->  
    Properties and houses for sale in France
    Some properties for sale can be found here below :


  • Error Occurred While Processing Request The web site you are accessing has experienced an unexpected error.
    Please contact the website administrator.


    The following information is meant for the website developer for debugging purposes.
    Error Occurred While Processing Request

    Complex object types cannot be converted to simple values.

    The expression has requested a variable or an intermediate expression result as a simple value. However, the result cannot be converted to a simple value. Simple values are strings, numbers, boolean values, and date/time values. Queries, arrays, and COM objects are examples of complex values.

    The most likely cause of the error is that you tried to use a complex value as a simple one. For example, you tried to use a query variable in a cfif tag.

     
    The error occurred in C:/http/frenchnotaire/FindingAHomeInFrance.cfm: line 139
    137 : <cfoutput><cfset libelle="AFA International">
    138 : <cfset url="http://www.afa-international.com/">
    139 : <a href="javascript:displayWindow('#URLEncodedFormat(url)#','#URLEncodedFormat(libelle)#', '800', '400')" ><font color="Blue">#Libelle#</font></a></b>	 </cfoutput>
    140 : <br>
    141 :  <!--- <a href="http://www.afa-international.com/" target="_blank"><strong>AFA International</strong></a> --->
    

    Resources:

    Browser   claudebot
    Remote Address   54.224.90.25
    Referrer  
    Date/Time   29-Mar-24 02:59 AM
    Stack Trace
    at cfFindingAHomeInFrance2ecfm2097758052.runPage(C:/http/frenchnotaire/FindingAHomeInFrance.cfm:139)

    coldfusion.runtime.CfJspPage$ComplexObjectException: Complex object types cannot be converted to simple values.
    	at coldfusion.runtime.Cast._String(Cast.java:1036)
    	at cfFindingAHomeInFrance2ecfm2097758052.runPage(C:\http\frenchnotaire\FindingAHomeInFrance.cfm:139)
    	at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:244)
    	at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:444)
    	at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
    	at coldfusion.filter.IpFilter.invoke(IpFilter.java:64)
    	at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:443)
    	at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
    	at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
    	at coldfusion.filter.PathFilter.invoke(PathFilter.java:112)
    	at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:94)
    	at coldfusion.filter.BrowserDebugFilter.invoke(BrowserDebugFilter.java:79)
    	at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
    	at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
    	at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
    	at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
    	at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
    	at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)
    	at coldfusion.CfmServlet.service(CfmServlet.java:204)
    	at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
    	at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:414)
    	at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:203)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	at java.lang.Thread.run(Thread.java:722)