Cypher query syntax

that explains it. the 'id' in your match statement is a user defined property of 'id.' It's not the same as the node id. If you want to search based on the node's id, then you need to reference it with 'id(n)', where n is the node.

MATCH (u:User where id(u) = $senderId), (v:User where id(v) = $receiverId)

or

MATCH (u:User), (v:User)
where where id(u) = $senderId and id(v) = $receiverId

Thanks all for all the help.