How to split an order's total amount into multple payment transactions?

What would be the proper way to approach splitting order payment amount to a several payment transactions? For example to split order of $300 and make several payment gateway API calls billing customer for 100, 100 and 100.

Is it even possible to have one Order with multiple transactions of Authorize/Capture type and have them voided/refunded later on?

I have implemented a similar feature in 3 of my 18 payment modules for Magento 2:

1. Stripe module

I have implemented a multi-shipping: an order can be split into multiple shipping destinations.
A separate order and a separate payment transaction will be created for each shipping destination.
See an example of a multishipping checkout with Stripe payment.

2. 歐付寶 O’Pay (allPay) Taiwanese module

I have implemented the installment feature: a customer can pay only a part of order total, and then he will pay the rest in the next months:

3. Moip Brazilian module

I have implemented a similar installment feature as for 歐付寶 O’Pay (allPay):

I provide my payment modules implementation service, so if anybody need a similar feature, then please order my service.