public function create_bill($params) {

    if ( ! isset($params['pre_authorization_id'])) {
      throw new GoCardless_ArgumentsException('pre_authorization_id missing');
    }

    $pre_auth = new GoCardless_PreAuthorization($this, array(
      'id' => $params['pre_authorization_id']
    ));

    return $pre_auth->create_bill(array('amount' => $params['amount']));

  }