Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [XML][PHP] Obsługa komunikatu zwrotnego
Forum PHP.pl > Forum > Przedszkole
max_mcee
Czołem.
Przymierzam się do nauki integrowania systemu płatności.
O ile sam proces MOJA STRONA --> PARTNER PŁATNOŚCI udało mi się zaimplementować, to mam problem z obsługą komunikatu zwrotnego ze statusem PARTNER PŁATNOŚCI --> MOJA STRONA.
W dokumentacji otrzymałem informacje, że partner zwraca w postaci XML status na konkretny adres w postaci zmiennej POST.
Czy możecie wskazać mi kierunek jak ten POST odebrać i przetworzyć?
Może jakiś przykład?

Dzięki za pomoc.
leonpro778
Jaki to jest partner tych płatności? Raczej każdy partner ma swoje sposoby komunikowania się ze stronami użytkownika i tutaj będziesz musiał poszukać w dokumentacji. Co do odpierania danych metodą post to chyba $_POST Tobie wystarczy smile.gif

Ok. Źle przeczytałem... mój błąd.

O ile dobrze pamiętam (przynajmniej tak u swojego operatora płatności miałem), to po zrealizowaniu płatności SERWER operatora WYSYŁA na wskazany przez Ciebie adres odpowiedź. Czyli ustawiasz sobie taką lokalizację sieciową (przykładowo http://twoja-strona.pl/payment-success.php) i w pliku payment-success.php $_POST'em wyłapujesz to co zwrócił Tobie serwer operatora smile.gif
max_mcee
Cytat(leonpro778 @ 19.07.2017, 14:57:54 ) *
Jaki to jest partner tych płatności? Raczej każdy partner ma swoje sposoby komunikowania się ze stronami użytkownika i tutaj będziesz musiał poszukać w dokumentacji. Co do odpierania danych metodą post to chyba $_POST Tobie wystarczy smile.gif

https://platnosci.bm.pl/

Wysyłany jest paramter
  1. $_POST['transactions']


  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <transactionList>
  3. <serviceID>ServiceID</serviceID>
  4. <transactions>
  5. <transaction>
  6. <productID>ProductID</productID>
  7. <orderID>OrderID</orderID>
  8. <orderOutID>OrderOutID</orderOutID>
  9. <remoteID>RemoteID</remoteID>
  10. <remoteOutID>RemoteOutID</remoteOutID>
  11. <amount>999999.99</amount>
  12. <currency>PLN</currency>
  13. <transferDate>YYYYMMDDhhmmss</transferDate>
  14. <transferStatus>TransferStatus</transferStatus>
  15. <transferStatusDetails>TranasferStatusDetails</transferStatusDetails>
  16. <title>Title</title>
  17. <receiverBank>ReceiverBank</receiverBank>
  18. <receiverNRB>ReceiverNRB</receiverNRB>
  19. <receiverName>ReceiverName</receiverName>
  20. <receiverAddress>ReceiverAddress</receiverAddress>
  21. <senderBank>SenderBank</senderBank>
  22. <senderNRB>SenderNRB</senderNRB>
  23. </transaction>
  24. </transactions>
  25. <hash>Hash</hash>
  26. </transactionList>


Jak mogę to odebrać? Nie wiem jak mogę to podejrzeć, więc ciężko mi to zrozumieć smile.gif
Tak jak poniżej?
  1. if(isset($_POST['transactions'])) {
  2. $decode = base64_decode($_POST['transactions']);
  3. $xml = simplexml_load_string($decode);
  4. }

leonpro778
Widzisz, już dobrze kombinujesz smile.gif Dokładnie, musisz tylko sobie ustawić gdzie dany komunikat zwrotny ma być wysłany od operatora płatności. Tak jak pisałem wcześniej, kod ten wrzucasz do pliku jaki ustawiłeś sobie u operatora.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.