def METHOD_NAME(self, paymentrequest_id: int,
        cb: Optional[CompletionCallbackType]=None) -> bool:
    row = self.get_request_for_id(paymentrequest_id)
    if row is None:
        return False
    wallet = self._account.get_wallet()
    account_id = self._account.get_id()
    # Update the key instance flags, both in acccount cache and the database.
    key = self._account.get_keyinstance(row.keyinstance_id)
    flags = key.flags & ~KeyInstanceFlag.IS_PAYMENT_REQUEST
    new_key = key._replace(flags=flags)
    self._account.set_keyinstance(row.keyinstance_id, new_key)
    wallet.update_keyinstance_flags([ (new_key.flags, row.keyinstance_id) ])
    with wallet.get_payment_request_table() as table:
        table.delete([ (paymentrequest_id,) ], cb)
    # TODO: Too soon, the delete event is non-blocking.
    wallet.trigger_callback('on_keys_updated', account_id, [ new_key ])
    return True