Billing address fields are not visible on frontend

Expected behavior: There is a checkbox to display billing fields after shipping fields .

If none is displayed please verify if either:

  • Zero Subtotal Checkout payment method is enabled
  • billing fields are set to be shared with all payment methods from store > configuration > sales > checkout > Display Billing Address On = On Payment page.

This way OneStepCheckout knows where to look for the billing fields from to display below shipping address fields.

Technical explanation: OneStepCheckout is a wrapper around default UIComponents Magento 2 uses and it does not implement new address forms and reuses whats already loaded (mostly for performance and backwards compatibility reasons). Due that it needs to have one of those features enabled to be able to target the address form components from uiRegisty and move those to right place in UI.