Skip to main content
Utwórz lub odśwież sesję płatności dla zamówienia Pending. Działanie płatnicze uzyska dostęp do kanału płatności i może zmienić status zamówienia, przed wywołaniem należy potwierdzić ID zamówienia, kwotę i metodę płatności.

Przegląd interfejsu

Granice płatności anonimowych

Dostęp anonimowy służy do scenariusza, w którym sesja logowania zostaje utracona po otwarciu skopiowanego linku płatności, nie wymaga ani nie powinien zawierać długoterminowego Account Token. Wywołania anonimowe:
  • zezwalają wyłącznie na skonfigurowane po stronie serwera metody płatności z hostowanym przekierowaniem;
  • zawsze używają strony płatności dla komputerów stacjonarnych;
  • nie mogą odebrać zamówień o zerowej cenie;
  • podlegają limitowaniu według IP i pojedynczego zamówienia;
  • zwracają minimalną projekcję zamówienia, bez konta, Application ani wewnętrznych metadata.
Uwierzytelniony wywołujący musi być właścicielem zamówienia lub superadministratorem. Metody wymagające kontekstu użytkownika, takie jak X402 i wymiana nagród, nie mogą być wywoływane anonimowo.

Przykład żądania

Metody płatności wymagające uwierzytelnienia:
pay_way używa rzeczywistych wartości obsługiwanych przez model zamówienia, na przykład WechatPay, AliPay, Stripe, Card, Airwallex, X402, PayPal, AppleIAP, Reward, BankTransfer. Nie każda wartość jest dostępna dla żądań anonimowych ani w każdej witrynie.

Opis odpowiedzi

Pomyślna odpowiedź jest zaktualizowanym obiektem zamówienia, zwykle udostępniającym punkt wejścia do następnego kroku przez pay_url; różne metody płatności mogą również zwracać w kontrolowanych polach informacje potrzebne klientowi do kontynuowania płatności. Odpowiedzi anonimowe używają minimalnej białej listy pól, uwierzytelniony właściciel otrzymuje pełne szczegóły. Nie polegaj na starych nazwach pól, takich jak payment_url, qr_code_url lub payment_method; obecny kontrakt Order używa pay_url i pay_way.

Zakupy wewnątrz aplikacji iOS

Zalogowany właściciel zamówienia może przekazać pay_way: "AppleIAP". To żądanie aktualizuje oczekujące na płatność zamówienie zgodnie z metadata.apple_price wybranego pakietu i usuwa rabat, nie powoduje obciążenia, nie przyznaje punktów ani nie zwraca linku płatności. Starsze oczekujące na płatność zamówienia powinny najpierw wykonać ten krok, a następnie zainicjować natywną płatność Apple. Obsługiwany jest tylko jeden pakiet Usage ze skonfigurowanym produktem i ceną Apple; nieobsługiwane pakiety lub zamówienia zbiorcze zwracają 400. Po natywnej płatności Apple należy przesłać transaction_id przez /api/v1/orders/{id}/apple-verify/, aby zakończyć weryfikację po stronie serwera i przyznanie punktów. Liczba punktów pochodzi z pakietu; kwota używa niezależnej, wstępnie ustawionej ceny Apple w USD, bez nakładania rabatów członkowskich ani marż witryny, a kwota obciążenia w lokalnej walucie w innych regionach zależy od strony potwierdzenia Apple.

Błędy i ponawianie prób

  • Zamówienie nie jest Pending: zwraca 400; nie twórz ponownie sesji płatności.
  • Nie podano pay_way: zamówienia o kwocie niezerowej zwracają 400.
  • Wywołanie anonimowe użyło niedozwolonej metody lub zamówienia o zerowej cenie: zwraca 403, zaloguj się i ponów próbę jako właściciel.
  • Uwierzytelniony użytkownik nie jest właścicielem zamówienia: zwraca 403.
  • Kanał płatności nie powiódł się: nie przesyłaj ponownie bezmyślnie; najpierw sprawdź szczegóły zamówienia, a następnie ponów próbę po potwierdzeniu, że nadal ma status Pending.

Powiązane interfejsy