0

我正在使用braintree java sdk進行訂閱。如何檢測帳單是否被跳過?

我有一個訂閱對象,我想獲得此訂閱的所有交易列表。

我知道有一個名爲getTransactions()的方法,但是這不會返回出現在我的braintree庫中的所有事務。

任何人都可以告訴我如何獲得交易清單,包括金額爲0.0的跳過交易嗎?

當在braintree庫中查看子腳本時,您可以看到狀態「Billing Skipped」,如何在我自己的應用程序中使用java產生像這樣的列表? braintree如何做到這一點?

Transactions List Produced In Braintree Vault

感謝您的幫助。

回答

0

完全披露:我在布倫特裏工作。如果您有任何其他問題,請隨時聯繫support

如果您想通過Braintree的API跟蹤跳過的結算事件,您將無法直接爲它查詢訂閱對象。訂閱對象確實包含關聯事務的數組,但是這不會報告跳過的計費事件。您在控制面板中看到的結算跳過事件是僅存在於控制面板中的工件,並且無法直接通過API訪問。 Braintree的API不允許zero amount transaction,所以沒有辦法通過API中的事務對象傳遞此事件。

如果您希望實施一種方法來檢測訂閱是否在API中完全創建了跳過的結算事件,我們建議您使用Braintree webhooks,並專門設置解析來檢測subscription_charged_successfully webhook。這個webhook將被髮送到您的服務器的URL,以便成功的交易以及計費跳過的事件。這個webhook本身將包含一個時間戳,種類和它被髮送的訂閱對象。使用這種方法檢測結算跳過事件的最好方法是比較webhook的時間戳和訂閱對象的事務數組中的第一個事務的時間戳(數組中的第一個事務將始終是最新事務),然後查看事務的created_at時間戳。如果日期不匹配,那麼您就會知道該webhook是由於結算跳過事件而發送的。