My yoga studio system uses Square for subscriptions and some product purchases. The studio also uses Square POS for some purchases.
The studio offers online-only livestreams, providing access through a database “person” record that includes username and password. The studio offers some “trial” and “guest” online subscriptions at no cost. These often become the source for paid subscriptions.
When a trial or guest subscription is saved to the person database table, I also create a square customerid for the person and save that to the record.
Let’s explore this problem as an example: I hope you can explain what happened and how I can prevent or correct confusion from merged customers.
Consider Mary Doe (not her real name)
She became a ‘guest’ subscriber. I saved her username ‘Marydoe’, password, email, and square id.
Rather than asking us to help her upgrade to a paid subscription, she tried to create a new paid subscription from our subscription page. But that page told her desired username ‘Marydoe’ was already in use. A teacher changed her username to ‘Marydoexxx’ and changed her first and lastname to Maryxxx Doexxx’. With these changes, Mary Doe registered as a paid subscriber with a DIFFERENT squareid. (Please note that Mary Doe never provided a credit card for the first ‘guest’ subscription.)
Mary Doe emailed me saying that her Square invoices for her paid subscription were calling her MaryXXX DoeXXX.
I used the API to check her customer record for the paid subscription, and found that it had been automatically merged.
The response showed:
"given_name": "Maryxxx",
"family_name": "Doexxx",
"email_address": "marydoe@xxxxx",
"note": " Merged on 09/14/2023. Following fields were not transferred to the current customer:First Name: Mary Last Name: Doe",
"preferences": {
"email_unsubscribed": false
},
"creation_source": "MERGE",
(Again, please note that Mary Doe never provided a credit card for the first ‘guest’ subscription. The CURRENT merged record retains her NEWER square id, but uses the OLD first and last names)
- I don’t understand why this merge was done (?? same email ??)
- I don’t know why the merge decided that unwanted OLD squareid names should supercede the NEW squareid record.
- Is there an API call I can use to find all “merged” customers, and verify the information?
Can you please help me undstand steps to take to identify and stop this confusion.
I explored whether a merge event can be included in webhook subscription, but I can’t find a “merge” event?