Recurly - Changing invoice date

We're moving one of our clients to Recurly to handle all their subscription billing and so far it's been a great service to work with. Customer service is excellent and the PHP client library is easy-to-use and full-featured. One issue I ran into that I couldn't find a clear answer to in the documentation was how to permanently change the billing/invoice date of a customer after they were setup in the system. After some discussion with Recurly technical support I found out this wasn't difficult at all: 1) Terminate the account's subscription (refund with the amount to "none"), 2) Setup the customer on a new subscription with the trial_period_ends_at value set to one day after your desired invoice date (pass this value in Y-m-d format).

A terminate function didn't exist in the client lib at the time I was integrating, but it's an easy addition (inside recurlysubscription.php):

public static function terminateSubscription($accountCode)
{
        $uri = RecurlyClient::PATH_ACCOUNTS . urlencode($accountCode) . RecurlyClient::PATH_ACCOUNT_SUBSCRIPTION;
        $uri .= '?refund=none';
        $result = RecurlyClient::__sendRequest($uri, 'DELETE');
        if (preg_match("/^2..$/", $result->code)) {
                return true;
        } else if (strpos($result->response, '') > 0 && $result->code == 422) {
                throw new RecurlyValidationException($result->code, $result->response);
        } else {
                throw new RecurlyException("Could not terminate the subscription for {$accountCode}: {$result->response} ({$result->code})");
        }
}