Interfejs API koszyka na zakupy dla dowolnej bramki płatności? (PayPal jest wymagany przynajmniej)

Próbuję znaleźć interfejs API oparty na języku java, który zamyka szczegóły przetwarzania transakcji kartą kredytową lub zakupu za pośrednictwem systemu PayPal co najmniej, a inne bramy jako plus w modzie IPN (tj. Nie są wymagane żadne produkty, tylko kwota faktury)

Jako uproszczenie myślę, że powinienem być w stanie zrobić coś w rodzaju następującego pseudokodu:

<code>shoppingApi.postTransaction("paypal", amount, currency, invoiceId, purchaseDescription)
</code>

a później podczas zaplanowanego zadania lub powiadomienia z adresu IPN:

<code>completedPayments = shoppingApi.getUnprocessedCompletedPayments();
for (Payment payment: completedPayments)
{
  // my code to process a successful payment.
}
</code>

a następnie będę przetwarzać zakupy.

Wiem, że jest tam mnóstwo koszyków, które to robią, ale z tego, co widziałem, wszyscy chcą, żebyś umieścił swoje produkty w swoim systemie, co nie działa dla mnie. Moje produkty są w systemie innej firmy i chcę tylko przetworzyć płatność. To wszystko.

I żaden koszyk, który znam, nie ujawnia prostego API, takiego jak ten, który sugeruję powyżej. Nie obchodzi mnie, jakiego rodzaju płatności używają moi użytkownicy, chcę tylko wiedzieć, czy go ukończyli. Wiem, że Shopify.com ma aplet REST, który robi coś takiego, ale nie jest podobny do IPN (chce twoich produktów w swoim systemie).

Z góry dziękuję za wszelkie sugestie!

EDYTOWAĆ: Wiem oczywiście, że byłyby inne statusy, które musiałbym sprawdzić, np. „Oczekujące” itp., Ale to byłoby po prostu inne proste wywołanie API, jak shoppingApi.getPendingPayments (). Gdyby API wykonało powyższe 2 wywołania, byłbym bardzo szczęśliwy ;-)

EDYCJA 2: Wolę open source, ale jestem całkowicie otwarty na reklamę, jeśli jest to opłata ryczałtowa, może być wypróbowana do pewnego stopnia i jest dość dojrzała / godna szacunku

EDYCJA 3 - GŁÓWNA UWAGA: Jestem przekonany, że taka biblioteka powinna istnieć. Czy tak, czy nie, to kolejne pytanie. Żeby było jasne, naprawdę chciałbym zobaczyć odpowiedzi „tak, używaj tej biblioteki”, nie „NIE”, nie można tego zrobić, ponieważ jestem% 99.999 pewien, że można to zrobić ;-) Z góry dziękuję !

questionAnswers(6)

yourAnswerToTheQuestion