chemfig
does not provide curved arrows. It is possible to define something with \definearrow
- the documentation gives an example. This is not comfortable to use and is only part of what your scheme has: combined curved arrows.
It is probably possible to define such arrows, too, but I don't believe that they're any more comfortable to use. I would try to avoid them completely and instead use what is available already.

\documentclass{article}
\usepackage{chemfig}
\usepackage{chemmacros}
\chemsetup[ox]{pos=super}
\DeclareChemIUPAC\tBu{\textsuperscript{\textit{t}}Bu}
% \usepackage{showframe}
\begin{document}
\begin{center}
\small
\schemestart[,2]
\chemfig{R_2-\ox{2,Pd}-R_1}
\arrow(start--)[45]
\ox{0,Pd}
\arrow(--X){->[*{0.180} $+$ \chemfig{R_2-X}]}[-45]
\chemfig{R_2-\ox{2,Pd}-X}
\arrow(--tBu){->[*{0.0} $+$ NaO\tBu][*{0.180} $-$ NaX]}[-135]
\chemfig{R_2-\ox{2,Pd}-O\tBu}
\arrow(@tBu--@start){->}
%%
% remember this point, \mbox to actually create an empty node
\arrow(@tBu--rem1){0}[135,1] \mbox{}
\arrow(@rem1--)[180]
\chemfig{
\tBu O-\chemabove{B}{\qquad\fscrm}
(-[2]OH)(-[6]OH)(-[3,,,,draw=none]Na^{\fplus})
-O\tBu
}
\arrow(@rem1--){<-}[-120,1.25]
\chemfig{
R_1-\chemabove{B}{\qquad\fscrm}
(-[2]OH)(-[6]OH)(-[3,,,,draw=none]Na^{\fplus})
-O\tBu
}
\arrow{<-}[180,1]
\chemfig{R_1-B(-[:-60]OH)-[:60]OH}
%%
% remember this point, \mbox to actually create an empty node
\arrow(@start--rem2){0}[45,1] \mbox{}
\arrow(@rem2--)[135,1]
\chemfig{R_1-R_2}
\schemestop
\end{center}
\end{document}
chemfig
alone, I believe. You either need to use TikZ directly for coding the arrows or think of another way to display the information of the scheme.