If I receive a PAYMENT_UPDATED v1 webhook and then call RetrievePayment (https://docs.connect.squareup.com/api/connect/v2#endpoint-v1transactions-retrievepayment) then I understand that I could receive a payment with is_partial set to true.
In this case, according to the documentation: "... this payment will have the tenders collected so far, but the itemizations will be empty until the payment is completed."
My questions are:
When I call RetrievePayment after the payment is completed, will the payment returned have all the tenders for the payment? Or must I collect the tenders from each RetrievePayment call in order to get all of them?
How can I make Square send me a PAYMENT_UPDATED webhook following which I can send RetrievePayment to receive a payment with is_partial set to true?
A webhook notification will only be sent from Square when a payment/transaction has been fully paid for and the transaction has been closed. This means that you will only receive the one final webhook notification regardless of how many tenders got split into paying for the transaction. Unfortunately, there's no way to receive extra webhooks for when the payment is_partial=true
.