How to solve the minimum-cost flow problem on a complete graph, with a concave cost function of flow for each edge?
Your problem is $\rm NP$-hard by a reduction from the minimum-weight Steiner tree problem.

Let $G=(V,E;w)$ be a graph with non-negative edge weights $w(e)$, $e \in E$, and let $S \subseteq V $ be a non-empty set of terminal vertices.

The vertex set in your problem will coincide with $V$. Choose the concave function $c_e(x)$  that describes the cost of sending $x$ units of flow across edge $e$ as $c_e(x) = w(e)$. 
Pick an arbitrary terminal $s \in S$ and make it a source with supply $|S|-1$.
Make every vertex in $S \setminus \{ s \}$ a sink with demand $1$.

There is a Steiner tree $T$ of cost at most $k$ if and only if your problem admits a flow of cost at most $k$.

$\Rightarrow$) $s$ send one unit of flow to each vertex $v \in S \setminus \{ s \}$ using the unique path in $T$ between $s$ and $v$.

$\Leftarrow$) Consider the subgraph $H$ of $G$ induced by the set of edges traversed by non-zero flow. Since $H$ contains at least one path from $s$ to each vertex in $S \setminus \{ s \}$, it must have a connected component $C$ that spans all the vertices in $S$. Let $T$ be an arbitrary spanning tree of $C$. The cost of $T$ w.r.t. $w$ is exactly the contribution of the edges in $T$ to the cost of the flow. By our choice of the concave functions, this is upper bounded by the cost of the flow itself.

Notice that, by suitably subtracting epsilons from the cost functions, you can adapt this reduction to work for strictly concave functions. In this case it is convenient to relate  a flow of cost at most $k$ to Steiner tree of cost at most $\lceil k \rceil$.