Calculating the area under two overlapping distribution I have two overlapping frequency distribution, one of the buyers' demand or willingness to pay and the other one is seller's reservation price frequency distribution.
The two distributions overlap and I'd like to estimate the overlapping area.

What statistical properties / methods can I use to estimate this area?
 A: The distributions $X\sim\mathsf{Norm}(100, 15)$ and $Y\sim\mathsf{Norm}(110,15)$ overlap, as in your figure.
The total overlap probability is
$$P(Y \le 125)+P(X> 125)\\ = P(Y \le 125) + 1 - P(X \le 125)\\
\approx 0.048 + 0.048 = 0.096.$$

R code for figure:
hdr="Densities of NORM(100,15) and NORM(150,15)"
curve(dnorm(x,100,15), 50, 200, ylab="PDF", main=hdr)
curve(dnorm(x,150,15), add=T)
abline(h=0, col = "green2")
abline(v=125, col = "red", lty="dotted")

R code for probability computation, where pnorm is a normal CDF:
pnorm(125, 150, 15)
[1] 0.04779035
1 - pnorm(125, 100, 15)
[1] 0.04779035
pnorm(125, 150, 15) +  1 - pnorm(125, 100, 15)
[1] 0.0955807

Note: The two probabilities might be Type I and Type II
error for a test of a hypothesis.
A: Perhaps this is a more general solution than @BruceET's which doesn't assume normality or a preset reference point P. The OP says s/he has the PDF of the two distributions, so for example these may be:
pdf1 <- function(x, mean= 100, sd= 15) {
    pdf <- (1 / (sd * sqrt(2 * pi))) * exp(-0.5 * ((x - mean)/sd)^2)
    return(pdf)
}

pdf2 <- function(x, mean= 150, sd= 15) {
    pdf <- (1 / (sd * sqrt(2 * pi))) * exp(-0.5 * ((x - mean)/sd)^2)
    return(pdf)
}

(These are Gaussian but they may be any PDF)
At a grid of data points on the x-axis calculate each PDF, take the smallest of the two densities, weight it for the step size of the grid and sum across to get the intersection (this is a very crude integration - I'd like to see a better solution...):
step <- 0.1
at <- seq(20, 250, by= step)
x1 <- pdf1(at, 100, 15)
x2 <- pdf2(at, 150, 15)

area <- 0
for(i in 1:length(at)) {
    area <- area + ifelse(x1[i] > x2[i], x2[i], x1[i]) * step
}
print(area)
0.09558193

