We study an inventory system in which a supplier supplies demand using two mutually substitutable products over a selling season of T periods, with a single replenishment opportunity at the beginning of the season. As the season starts, customer orders arrive in each period, for either type of products, following a nonstationary Poisson process with random batch sizes. The substitution model we consider combines the usual supplier-driven and customer-driven schemes, in that the supplier may choose to offer substitution, at a discount price, or may choose not to; whereas the customer may or may not accept the substitution when it is offered. The supplier's decisions are the supply and substitution rules in each period throughout the season, and the replenishment quantities for both products at the beginning of the season. With a stochastic dynamic programming formulation, we first prove the concavity of the value function, which facilitates the solution to the optimal replenishment quantities. We then show that the optimal substitution follows a threshold rule, and establish the monotonicity of the thresholds over time and with respect to key cost parameters. We also propose a heuristic exhaustive policy, and illustrate its performance through numerical examples.