In that Scenario - In your plugin before create Record check the duplicate record using Organization service.
You can programmatically check whether an entity is a duplicate or will be a duplicate before creating or updating it by using the RetrieveDuplicatesRequest class.
var account = new Account();
account.Name = "Sample Account";
var request = new RetrieveDuplicatesRequest()
{
BusinessEntity = account,
MatchingEntityName = account.LogicalName,
PagingInfo = new PagingInfo() { PageNumber = 1, Count = 50 }
};
var response = (RetrieveDuplicatesResponse)svc.Execute(request);
if (response.DuplicateCollection.Entities.Count >= 1)
{
Console.WriteLine("{0} Duplicate records found.", response.DuplicateCollection.Entities.Count);
}
For More Details Please check below url.
docs.microsoft.com/.../detect-duplicate-data