Wpis z mikrobloga

ktoś tu aplikował na BE przelewy24 przez REST API do której nie mają dokumentacji opublikowanej XD? bo helpdesku coś nie ogarnięci są. jak to autentyfikować? muszę załączać Basic auth z merchantId i czym? kodem do raportów z panelu?

chętnie przyjmę help na priv.

#programowanie #backend #nodejs
  • 14
  • Odpowiedz
Właśnie zetknąłem się z tym samym problemem :( dokumentacja już jest, ale nigdzie nie mogę znaleźć posId i secretId, które według dokumentacji są potrzebne do basic auth. Znalazłeś rozwiązanie przez te 8 miesięcy? :D
  • Odpowiedz
jakieś postępy chłopaki? :) bo utknąłem na tym samym...i nie wiem czy to ja czegoś oczywistego tutaj nie ogarniam czy też dokumentacja jest "z du$%"? :D
  • Odpowiedz
@mDeo: to masz basic auth:
Authorization: 'Basic ' + Buffer.from(${POS_ID}:${API_KEY}).toString('base64');

gdzie PosId = MerchantId
  • Odpowiedz
Ta ich dokumentacja API to miejscami jest jakiś jeden wielki badziew. Szczególnie, jeżeli chodzi o uwierzytelnianie i generowanie hasha. Pisałem z ich supportem, gdzie uzyskałem pomoc z tym nieszczęsnym logowaniem, ale już prośby o normalne opisanie tego w dokumentacji nie uwzględnili jak widać.
Ich odpowiedź dotycząca tego co jest czym przy logowaniu:
"PosID jest to login do panelu, a secret key - klucz do raportów (klucz API)."
  • Odpowiedz
Powyższe dane działają przy wysyłaniu zapytania na secure.przelewy24, ale nie działają w przypadku sandboxa. Ktoś zbadał tę zagadkę? posId i klucz do raportów są takie same w obu przypadkach.
  • Odpowiedz
Ja musiałem zadzwonić do nich do pomocy technicznej i odblokowali mi API (defaultowo jest wyłączone). Potem to co napisał @spyro89 zadziałało.
  • Odpowiedz
@hom_tanks: gdy już się uporałem z ich helpdeskiem i wiedziałem co jest do czego to u mnie bez problemu działało to potem i na secure i na sandbox.
Dodatkowo jak napisał @galli musieli mi jak to nazwali "zrestartować API", bo mimo, że wysyłałem już poprawne dane to nadal ich API krzyczało że jest coś nie tak z uwierzytelnieniem.
  • Odpowiedz
Właśnie rozwiązałem ten problem u siebie to zostawiam info dla potomnych:

Basic Auth:
Jako user: podajesz login do panelu (5 cyfr)
Jako password podajesz "Klucz do raportów" z panelu.

Po tym prawdopodobnie dostaniesz 401 Unauthorized. Dzwonisz, mówisz że dostajesz 401. Pan musi "odblokować webserwisy". Po tym wszystko działa jak należy.

Przykładowa implementacja w js + axios: dla sandboxa

var username = "12345";
var password = "adqweasdqwe123435dfgdfgd";
var basicAuth = "Basic " +
  • Odpowiedz
W moim przypadku problem z autoryzacją polegał na tym, że nie dodałem adresu IP z którego łączyłem się z API (pole 'Adres IP' pod kluczem do raportów). Możemy tam wpisać '%' aby przelewy24 akceptowały wszystkie adresy.
  • Odpowiedz