Allyl complexes are often generated by oxidative addition of allylic halides to low-valent metal complexes. This route is used to prepare (allyl)NiCl:
:2 Ni(CO) + 2 ClCHCH=CH →  Ni(μ-Cl)(η-CH) + 8 CO
A similar oxidative addition involves the reaction of allyl bromide to diiron nonacarbonyl.  Oxidative addition route has been used for Mo(II) allyl complexes as well:
Other methods of synthesis involve addition of nucleophiles to η-diene complexes and hydride abstraction from alkene complexes.  For example, palladium(II) chloride attacks alkenes to give first an alkene complex, but then abstracts hydrogen to give a dichlorohydridopalladium alkene complex, and then eliminates hydrogen chloride:
:PdCl + >C=CHCHPd&ndash;(η-(>CCHCHPd(H)⚟(>CCHC<) → ClPd⚟(>CCHC<) + HCl
One allyl complex can transfer an allyl ligand to another complex.  An anionic metal complex can displace a halide, to give an allyl complex.  However, if the metal center is coordinated to 6 or more other ligands, the allyl may end up "trapped" as a σ (η-) ligand.  In such circumstances, heating or irradiation can dislocate another ligand to free up space for the alkene-metal bond.    
In principle, salt metathesis reactions can adjoin an allyl ligand from an allylmagnesium bromide or related allyl lithium reagent.  However, the carbanion salt precursors require careful synthesis, as allyl halides readily undergo Wurtz coupling.  Mercury and tin allyl halides appear to avoid this side-reaction.