This is a preliminary version, using expl3
features and calculating the total number of seconds, then splitting and calculating the new time.
It does not indicate that the time span is more than 24 hours, so using a timespan of multiples of 1440 (minutes) will result in the same time as the start time.
Wrapping hour values after midnight is done.
datetime2
does not provide macros in order to calculate time spans or end times in sense of hour:minute:seconds -- there are some computation macros concerning dates.

\documentclass{article}
\usepackage{xparse}
\usepackage{datetime2}
\newcommand*\timespan{90}
\newcommand*\starttime{13:45:00}
\ExplSyntaxOn
\cs_generate_variant:Nn \int_set:Nn {NV}
\cs_generate_variant:Nn \seq_set_split:Nnn {NVn,NVV}
\NewDocumentCommand{\endtime}{+m+m}{%
\group_begin:
\tl_set:Nx \l_tmpa_tl {#1}
\seq_set_split:NVV \l_tmpa_seq {\c_colon_str} \l_tmpa_tl
\exp_args:NNx \fp_set:Nn \l_tmpa_fp {\seq_item:Nn \l_tmpa_seq {1} * 3600 + \seq_item:Nn \l_tmpa_seq {2} * 60 + \seq_item:Nn \l_tmpa_seq {3} }
\exp_args:NNx \fp_set:Nn \l_tmpb_fp {#2 * 60}
\fp_add:Nn \l_tmpa_fp {#2 * 60}
\tl_clear:N \l_tmpa_tl
% Compute hours
\exp_args:NNx \int_set:Nn \l_tmpa_int {\int_div_truncate:nn {\fp_use:N \l_tmpa_fp}{3600}}
\int_compare:nNnTF {\l_tmpa_int } > {23} {% After midnight?
\exp_args:NNx \int_set:Nn \l_tmpb_int {\int_mod:nn {\l_tmpa_int } {24}}
}{%
\int_set_eq:NN \l_tmpb_int \l_tmpa_int
}
\tl_put_right:NV \l_tmpa_tl {\l_tmpb_int\c_colon_str}
% Remaining seconds, split them into minutes and seconds
\int_set:Nn \l_tmpa_int {\fp_use:N \l_tmpa_fp}
\exp_args:NNx \int_set:Nn \l_tmpb_int {\int_mod:nn {\l_tmpa_int}{3600}}
\exp_args:NNx \int_set:Nn \l_tmpb_int {\int_div_truncate:nn {\l_tmpb_int}{60}}
\tl_put_right:NV \l_tmpa_tl {\l_tmpb_int\c_colon_str}
% Finally splitting: Seconds
\exp_args:NNx \int_set:Nn \l_tmpa_int {\int_mod:nn {\l_tmpa_int}{60}}
\tl_put_right:NV \l_tmpa_tl {\l_tmpa_int}
% Display output:
\exp_args:NV \DTMtime{\l_tmpa_tl}
\group_end:
}
\ExplSyntaxOff
\begin{document}
We started at \expandafter\DTMtime\expandafter{\starttime}
The event lasts \timespan\ minutes
It ends at \endtime{\starttime}{\timespan}
\end{document}
datetime2
nordatetime2-calc
provide such features