I wish the Woocommerce Subscriptions plugin would provide comprehensive details on how to amend the layouts in various sections. Some of the documentation on classes and their uses gives a hint of how to interact with different parts of this large codebase but it was difficult to find out how to make changes to certain pages a client was asking for.
The only way that worked for me was to drill down to the templates in the /woocommerce-subscriptions/templates folder and find the file I wanted under myaccount. Once in the subscription-details.php file I could see the do_action references and then write code to add rows to the table.
Code A
There are a few of these do_actions in the file. As can be seen the do_action output needs to fit in with the table structure although it would be possible to end the table, add custom content and then start a new table
<tr>
<td><?php esc_html_e( 'Status', 'woocommerce-subscriptions' ); ?></td>
<td><?php echo esc_html( wcs_get_subscription_status_name( $subscription->get_status() ) ); ?></td>
</tr>
<?php do_action( 'wcs_subscription_details_table_before_dates', $subscription ); ?>
And then how to add some custom content into the do_action placeholder? This is actually better documented with plenty of examples online on how to hook into the action as shown below.
Code B
add_action( 'woocommerce_subscription_after_actions', [$this, 'my_account_subscription_message'], 10, 1 );
This code is added to the __construct function of my class and calls the my_account_subscription_message function when triggered. The class needs instantiating to fire the add_action hook so somewhere in the code there needs to be a call to create an instance of the class eg $class = new class_name();
Code C
public function my_account_subscription_message($subscription) {
echo '<tr>
<td>
Custom
</td>
<tr>
<td>
Value
</td>
</tr>';
}
Anything can be printed from the hook but it is most likely something can be derived from the $subscription object sent to the hook.
This site provides an excellent full listing of methods available from the WC_Subscription object which should be somewhere on the Woocommerce site.

