async def METHOD_NAME(self, checking_id: str) -> PaymentStatus:
    try:
        r: dict = self.ln.listinvoices(payment_hash=checking_id)  # type: ignore
    except RpcError:
        return PaymentStatus(None)
    if not r["invoices"]:
        return PaymentStatus(None)
    invoice_resp = r["invoices"][-1]
    if invoice_resp["payment_hash"] == checking_id:
        if invoice_resp["status"] == "paid":
            return PaymentStatus(True)
        elif invoice_resp["status"] == "unpaid":
            return PaymentStatus(None)
        elif invoice_resp["status"] == "expired":
            return PaymentStatus(False)
    else:
        logger.warning(f"supplied an invalid checking_id: {checking_id}")
    return PaymentStatus(None)