Уникальный идентификатор IPN PayPal

Я всегда предполагал, что txn_id отправленное с IPN сообщение уникально. Руководство PayPal, похоже, поддерживает эту идею - https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_admin_IPNIntro

Избегайте дублирования сообщений IPN. Убедитесь, что вы еще не обработали транзакцию, идентифицированную идентификатором транзакции, возвращенным в сообщении IPN. Вам может потребоваться сохранить идентификаторы транзакций, возвращаемые сообщениями IPN, в файле или базе данных, чтобы вы могли проверить наличие дубликатов. Если идентификатор транзакции, отправленный PayPal, является дубликатом, вам не следует обрабатывать его повторно.

Однако я обнаружил, что платежный IPN PayPal eCheck отправляется дважды с одним и тем же идентификатором транзакции. Один раз во время первоначального платежа с payment_status как «Ожидание» и еще раз через пару дней, когда eCheck фактически обрабатывает с payment_status как «Завершено».

Я хочу сохранить обе транзакции, но все же не хочу хранить дубликаты.В IPN есть еще одно поле, называемое ipn_track_id , оно отличается для обеих транзакций, но я не могу найти для него документацию, кроме этого расплывчатого описания:

Internal; только для использования MTS и DTS

Кто-нибудь еще использует ipn_track_id для однозначной идентификации сообщений IPN?

25
задан arnaslu 11 February 2012 в 12:33
поделиться