Ich habe in den letzten Jahren mehrere Überwachungsberichte für meine saas-Apps geschrieben. Der Großteil der Logik verwendet die PayPal-API, um die vollständige Transaktionsliste abzurufen (mithilfe von TransactionSearch) und dann für jede Transaktion die Details abzurufen (mithilfe von GetTransactionDetails).PayPal API NVP-Antwort für GetTransactionDetails fehlende Abonnement-ID
Die Absicht ist es, meine Datenbank Datensätze von wiederkehrenden Zahlungen mit den neuesten PayPal-Daten übereinzustimmen, um sicherzustellen, dass ich kein IPN oder irgendetwas vermisse.
Dies funktionierte gut bis vor etwa einem Monat.
Kürzlich fehlt die Abonnement-ID bei den meisten Transaktionen.
In der Vergangenheit war die Subskriptions-ID im NVP-Feld "SUBSCRIPTIONID" enthalten. Dies ist nicht mehr für alle Transaktionen vorhanden, und ich sehe keine anderen Felder zurückgegeben, die eine Abonnement-ID enthalten. Alle anderen Felder scheinen dort zu sein, also weiß ich, dass meine Anrufe funktionieren. Es ist nur die NVP-Antwort fehlt die Abonnement-ID. Ich habe auch überprüft, dass die Abonnement-ID mit dem IPN für die gleichen Transaktionen enthalten ist.
Mein Code verwendet eine ältere API-Version (108.0). Theoretisch wird PayPal die Funktionsweise einer API nicht ändern, weshalb ich nicht weiß, warum die Ergebnisse vor einem Monat nicht mehr mit der gleichen Codebasis übereinstimmen.
Ich habe versucht, die neueste API-Version (124.0), und es bietet Abonnement-IDs für mehr Transaktionen als 108, aber auch nicht alle von ihnen.
Ich bin total ratlos hier. Hat jemand irgendwelche Hinweise?
Ich will nicht PayPal Unterstützung bitten, weil es 3 Wochen wird überhaupt :-) keine Hilfe bekommen
Ich habe diese Frage an Paypal-Support gesendet, werde versuchen, mich daran zu erinnern, hier eine Antwort zu posten, wenn ich zurück höre. – Bemmu
Hier ist eine Problemumgehung, die ich untersuche. Wenn Sie eine Liste von profileids in Ihrer eigenen Datenbank haben, könnten Sie eine TransactionSearch für jede durchführen und das Argument PROFILEID bei der Suche übergeben. Dann würden Sie eine Liste aller Zahlungen für diese PROFILEID erhalten, die es Ihnen ermöglichen würde, sie mit Transaktions-IDs zu korrelieren. – Bemmu
Ich habe dies mit PayPal-Support zur gleichen Zeit wie hier gefragt. Wie erwartet, gibt es keine definitive Antwort, aber ich sehe, dass mein Ticket im Status "Pending Fix" ist, was hoffnungsvoll ist. –