Each topping can be found on at least $5$ pizzas. Because if we have only $4$ pizzas with topping $x$, then these $4$ pizzas contain $4\times 3=12$ toppings where $4$ are topping $x$, so there are only $12-4=8$ other toppings remaining and not $9$.
If we count all topping on our pizzas we bought we have therefore at least $50$ toppings, so we have at least $50/3=16+2/3$ pizzas.
Inspired by RobPratt's linked to ljcr.dmgordon.org:
If we have nine toppings we arrange the numbers 1 to 9 in a square. The horizontal rows, vertical rows and diagonals in $12$ groups of numbers, where each pair is contained in exactly one group:
If we augment the square
1 2 3
4 5 6
7 8 9
to an infinite grid
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
... 1 2 3 1 2 3 1 2 3 1 2 3 ...
... 4 5 6 4 5 6 4 5 6 4 5 6 ...
... 7 8 9 7 8 9 7 8 9 7 8 9 ...
... 1 2 3 1 2 3 1 2 3 1 2 3 ...
... 4 5 6 4 5 6 4 5 6 4 5 6 ...
... 7 8 9 7 8 9 7 8 9 7 8 9 ...
... 1 2 3 1 2 3 1 2 3 1 2 3 ...
... 4 5 6 4 5 6 4 5 6 4 5 6 ...
... 7 8 9 7 8 9 7 8 9 7 8 9 ...
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
and draw all vertical, horizontal and diagonal lines, and choose for example 1 the for each of its neighbor 2,....,8 we can find a line that contains 1 and this neighbor.
Similar holds if we choose a another number. These lines partition the numbers in 12 groups:
1-2-3
4-5-6
7-8-9
1 2 3
| | |
4 5 6
| | |
7 8 9
(3)1 2 3
\ \ \
4 5 6
\ \ \
7 8 9(7)
1 2 3(1)
/ / /
4 5 6
/ / /
(9)7 8 9
This gives raise to the following topping $12$ combination:
1 2 3
4 5 6
7 8 9
1 4 7
2 5 8
3 6 9
1 5 9
2 6 7
3 4 8
1 6 8
2 4 9
3 5 7
Topping 10 is stille not on a pizza, so we combine it with all the other 9 toppings
1 2 10
3 4 10
5 6 10
7 8 10
1 9 10
In the last group one topping is reused which was already combined with 10 to get three toppings for this pizza.
Now we have $12+5=17$ pizzas that contain all pairs of toppings. We already showed that this is the minimum of pizzas we need.
So you have to order $17$ pizzas.