как правильно написал
Павел - использовать запрос состояния заказа
1) опрашивать состояние раз в какой-то период(крон) и выставлять соотвествующий статус оплаты у себя
2) при переходе пользователя обратно на сайт мерчанта тоже опрашивать статус и менять статус у себя
1ый пункт гарантирует, что мы всегда будем знать актуальный статус платежа, даже, если по какой-то причине пользователь не вернулся на страницу мерчанта(например, пропало соединение)
2ой пункт дает узнать сразу статус после оплаты не ожидая выполнения крона.