Hi TW,
The requirement is to be able to create customers in XD01 even if there is no street address:
as per clients requirement we can't stop customer creation because we don't have address
This requirement would be fulfilled with the proposed approach. The customer can be created but it would be blocked for order entry.
The second requirement is to block sales order creation for customers without street information which would be covered as well by standard SAP (Order block on customer master).
I would also suggest to setup a new process and to have the business regularly checked which customers have the given blocking reason (ex. 'Missing street information') so that they complete the master data. This can be done via transaction VCUST.
Thanks
Bernhard