Kesinlikle güvenlik açığı var hocam $orderId ve $paymentId gibi değerler POST verilerinden alınarak doğrudan işlem yapılıyor. Bu durum, sahte POST istekleriyle manipülasyona açık.
evet hocam sadece $paymentId yi post değerinden alıp apiden dönen orderId ile işlem yapılmalı veya dönen değerle $orderId karşılaştırılsa eşleşmezse işlem sonlandırılır ama burada direkt paymentId ile apiden ödeme bilgisi alınıyor ödenmişse postla gelen orderId yi woocommerce de ödendi işaretliyor, belki benim gözden kaçırdığım veya bilmediğim bir şey vardır diye paylaştım ama yüksek ihtimalle açık var