Intermittent Duplicate Payments

Created on 8 August 2018, over 6 years ago
Updated 7 November 2024, about 2 months ago

I have been receiving reports of duplicate payments going through with Braintree Hosted Fields.

I have been unable to recreate the issue locally. However, the issue is intermittent so I am trying to source what might be causing the issue.

Looking into the data we have multiple orders that have more than one payment:
These payments are usually made within 5 seconds of each other, all for the exact same amount.
The only thing that differs between payment is the remote ID.

Response from Braintree:

Taking a look at these transactions, it looks as though they were submitted to Braintree at separate requests. Although your gateway is currently set to reject duplicate transactions submitted within 30 seconds of one another, these transactions were passed with unique order IDs, meaning our system saw them as separate transactions.

This confuses me somewhat as if they were made with unique order IDs how are they being attached to the same order when we track the payment?

πŸ› Bug report
Status

Needs work

Version

1.0

Component

Code

Created by

πŸ‡¬πŸ‡§United Kingdom jafacakes2011

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • πŸ‡ΊπŸ‡ΈUnited States andyg5000 North Carolina, USA

    We're still having this issue with multiple submits (see logs below)

    I'm going forward with a patch to disable the submit button when the form is submitted (attached) and will report back if we're still experiencing this.

    xxx.xxx.xxx - - [01/Nov/2024:20:43:11 +0000] "POST /checkout/21117/review HTTP/1.1" 303 422 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    xxx.xxx.xxx - - [01/Nov/2024:20:43:15 +0000] "GET /checkout/21117/payment HTTP/1.1" 302 342 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    xxx.xxx.xxx - - [01/Nov/2024:20:43:16 +0000] "POST /checkout/21117/review HTTP/1.1" 303 422 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    xxx.xxx.xxx - - [01/Nov/2024:20:43:18 +0000] "GET /checkout/21117/payment HTTP/1.1" 302 342 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    xxx.xxx.xxx - - [01/Nov/2024:20:43:19 +0000] "POST /checkout/21117/review HTTP/1.1" 303 422 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    xxx.xxx.xxx - - [01/Nov/2024:20:43:21 +0000] "GET /checkout/21117/payment HTTP/1.1" 302 342 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    xxx.xxx.xxx - - [01/Nov/2024:20:43:21 +0000] "GET /checkout/21117/complete HTTP/1.1" 200 81607 "https://site.net/checkout/21117/review" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0"
    
  • πŸ‡¬πŸ‡§United Kingdom chrisscrumping

    I am getting these as well - I have duplicate payments detection in Braintree turned on but need to remove the timestamp from the order ID for this to work.

    I also have the patch in #15 applied.

    Will try dig out some logs and gather some more info when I have time.

Production build 0.71.5 2024