Unfortunately we don't really have a cleaner solution today in the API.
Alternatively, you can update the `custom_fields` of an Invoice when you get the `invoice.created` Event delivered to your WebhookEndpoint. The main gotcha is that you can't edit finalized Invoices and the first Invoice of a Subscription is finalized automatically on creation. Potential workarounds are
1. Set the default one on the Customer before the Subscription creation and unset those after so that the first Invoice of the Subscription inherits those but not future ones.
2. Use a SubscriptionSchedule on creation instead as the first Invoice of those is not automatically finalized which gives you time to edit the Invoice.
I'll raise this feedback internally again though as I would really like to get to parity with our Dashboard UI in this case.