Con le API di WHMCS possiamo ottenere le fatture non pagate di un cliente.

Possiamo implementare la seguente soluzione.


function get_client_unpaid_invoices($client_id) {
    $invoices = [];

    if(!ctype_digit($client_id) || !filter_var($client_id, FILTER_VALIDATE_INT)) {
        return $invoices;
    }
    $command = 'GetInvoices';
    $data = [
        'userid' => $client_id,
        'limitnum' => 10000,
        'status' => 'Unpaid'
    ];
    $results = localAPI($command, $data);
    if($results['result'] !== 'success') {
        return $invoices;
    }
    $client_invoices = $results['invoices']['invoice'];
    if(count($client_invoices) > 0) {
        $invoices = $client_invoices;
    }
    return $invoices;
}