(Are there) subtleties in the definition of 'biproduct' I always thought that a biproduct of two objects $A_1,A_2$ in some category $\mathcal{C}$ is an object $P$ with two maps $p_i:P\to A_i$ making it a product and two maps $j_i:A_i\to P$ making it a coproduct. Namely, that it is just an object (with the structure maps) which is simultaneously a product and a coproduct. I was surprised that the nLab entry for biproduct is somewhat more complicated. First, it assumes that $\mathcal{C}$ has zero morphisms (which is equivalent to having a zero object?) Then, it requires the existence of some product $A_1 \times A_2$ and some coproduct $A_1 + A_2$. Finally, it constructs the canonical map $\phi:A_1 + A_2 \to A_1 \times A_2$ which in matrix notation is the $2\times 2$ identity matrix and this map should be an isomorphism. My question is whether this complication is actually necessary.
More concretely, is there an example of $(\mathcal{C},A_i,P,p_i,j_i)$ as above such that $\phi$ (say, from $P$ to $P$) is not an isomorphism?
I think that a standard universal properties argument shows that no such example exists, but then I don't understand why the nLab entry is taking this strange path. Additionaly, is refers to a result that if we have any natural family of isomorphisms $A_1+A_2 \simeq A_1\times A_2$ for all $A_1,A_2$ then all the $\phi$-s are isomorphisms as well, but if I am correct then there is no need for naturality, as this is true 'pointwise'.
 A: The correct definition of a biproduct is discussed extensively in this blog post. The conditions you write down are morally wrong because they don't guarantee uniqueness up to unique isomorphism, which is something you'd like any universal thing to satisfy. They're equivalent to talking about a product, a coproduct, and an isomorphism between them, which is very far from unique even when it exists. 
Some other comments. The condition that a category have zero morphisms is slightly weaker than the condition that it have a zero object; the latter implies the former and the two are equivalent if the category has either an initial or a terminal object, but for example a nonzero ring $R$ regarded as a one-object linear category has a zero morphism but not a zero object. 
One way to think about the significance of all of these conditions is that in a category with biproducts in the usual sense, you can write down homomorphisms between biproducts using matrices of morphisms that compose in the way you would think matrices compose; this is discussed in the last section of the blog post. In particular, writing finite-dimensional vector spaces as biproducts of one-dimensional vector spaces recovers matrix multiplication in the usual sense, and a category with biproducts is automatically enriched over commutative monoids (so you can add morphisms, which is important for multiplying matrices of them). 
A: Let $X$ be an infinite set and let $x \in X$. Then for cardinality reasons, $(X, x) + (X, x)$ is isomorphic to $(X, x) \times (X, x)$ in $\mathbf{Set}_*$ yet the canonical comparison $(X, x) + (X, x) \to (X, x) \times (X, x)$ is not an isomorphism. So we do not have a biproduct.
