order($run); if (! in_array($order->status, ['paid', 'provisioning'], true)) { return StepResult::fail('order_not_paid'); } if ($this->plan($run) === []) { return StepResult::fail('unknown_plan'); } if (blank($order->datacenter)) { return StepResult::fail('invalid_datacenter'); } $order->update(['status' => 'provisioning']); return StepResult::advance(); } }