Często przelew może dojść nawet na następny dzień, więc czekanie i trzymanie klienta na stronie do czasu pojawienia się wpłaty na Twoim koncie to raczej zły pomysł.
Dostawcy usług płatniczych posiadają API, przez które można korzystać z ich usług (płatności online, kartą itp.). I korzystanie z ich płatności polega na tym, że ze swojej strony/sklepu/czegokolwiek innego przekierowujesz klienta na stronę płatności. Tam następuje przetwarzanie wpłaty i po chwili dostajesz wiadomość zwrotną od operatora. Jeśli udało się zapłacić, to masz info, że płatność została przetworzona pozytywnie. Z taką informacją możesz iść dalej i przyjąć, że kasa się pojawi na Twoim koncie. Ale nie będzie to raczej natychmiast, tylko po jakimś czasie - najczęściej pomiędzy kilkoma godzinami a 2-3 dniami. Niemniej, mimo że fizycznie kasy jeszcze nie masz, możesz być praktycznie pewien, że się pojawi.
To trochę jak z płaceniem kartą w sklepie. Sprzedawca ściąga Ci kasę z karty i drukuje potwierdzenie. Dla niego jest to sygnał, że płatność została dokonana. Klientowi natychmiast środki znikają z konta, ale rozliczenie pomiędzy sprzedawcą a operatorem terminala następuje za pewien czas - na ogół paczki są co ok. 2 dni puszczane.
W każdym razie - podsumowując: nie czekasz na fizyczny wpływ kasy na konto, bo po pierwsze to by za długo trwało, a po drugie - musiałbyś mieć jakiś system integracji Twojej aplikacji z systemem banku. Działasz w oparciu o powiadomienie wygenerowane przez operatora płatności. Jeśli da Ci znać, że płatność poszła OK to Ty mu wierzysz i czekasz na pieniądze, które mogą wpłynąć max. kilka dni później.
Przykładowy link do poczytania: http://developers.payu.com/pl/restapi.html#update_notification_for_order_status