How to verify that guest email is already exist as customer in system on checkout page in Shopify - shopify

We need to add feature in Shopify that guest/customer can't purchase the product more then limit defined in product meta field in CMS.
Basically, we have limited edition of product so want that single person [email verification] can purchase 1-2 quantity in life time.
For this we tried following ways:
Webhook: But not able to find solution to show error on checkout page and stop order if we found such condition.
Custom code on template itself: But we are not able to verify email from CMS that its already attached to a customer otherwise we will get all orders of that customers and then products and matched with current cart product and show error message

Don't allow guest checkouts. Force your customers to login with an email. Them you can be certain of not allowing them to checkout with more than the one or two of these products in their lifetime. Otherwise, accept their order and simply cancel/refund the cheaters.

Related

Issue in My Shopify Store - Sample products are disappear from order summary

My shopify store have a problem in checkout. When user login on checkout page and after login redirect back to checkout page sample product are disappear from order summary (cart).
This should be session issue or another issue ?
More Description
In our site we are giving one sample product free for 1 product purchase. For this we make one collection for sample product and set price 0 and show them at cart page. after user add one product to cart and proceed for checkout they have a option for choose available sample product for free , after selection of sample product next step is checkout page. at checkout page both product and sample product are there in order summary. now user have a two option either they can proceed order as a guest user or they can login and place a order. and issue occurred when user select login option and after succesfully login user redirect to checkout page but then sample product disapeered from order summary , product that user purchased are there in order summary but sample product are disappear. we didn't use any app for this. doing this by code. due to we don't have a access of checkout. Any help will be appreciated.
If you fill a cart and go to checkout as an anonymous customer, and then choose to login, you are correct. Your anonymous cart is lost since you are now logged in, known as a customer and hence you have a clean slate.
You can set your shop to not allow anonymous (guest) checkouts, or else, just go with it. This is not a bug you are seeing. It totally makes sense.

How do you associate a user with an order-id in google console or developer api

I have just published an app, and so far my purchase rate is below 1 per month, so dealing with refund requests, and refunding the correct purchase would be easy.
I am concerned when the rate increases, I may have no way of telling from a "contact the developer" email, which user request is associated with an order-id, and thus be able to refund the correct account.
The android Google Play does not seem to give an order-id so the user can help associate themselves, and the console does not seem to allow association with an email address.
I received this reply from google...
Sign in to your Play Console.
On the left menu, select Order management. Search full order with order id or email address of user.
Check the boxes next to the orders you'd like to refund. To refund multiple orders at the same time, make sure you select orders placed
by the same user.
Select the appropriate refund reason.
Select Submit.
So given I knew the email address of one of the customers, I was able to search for exactly that customer, and it highlighted the transactions made by that user.
It didn't seem to cope with wildcards, or partial matches (makes sense given privacy).

How do I use shopify to sell third party product which need to be shown in the customers account page

Some of the products we sell in our Shopify shop are third party downloads, which we resell.
So when a customer buys such a product in our shop, it activate a webhook once the order is paid. This webhook then order the product from the third party. This third party gives us a download link which we then email to the customer.
This works fine, but we would also like to show the download link at the customers account page, so they can log in, and then re-download any file they have previously bought. And here is the problem: How do we store the download links for each product, in a way we can show at the users account page?
The obvious solution would be to store the unique download link in the orders line_item but that is not supported by shopify(How do I update properties on a shopify line_item).
I'd use a meta field on the order. You could create a set of metafields from the order webhook to handle all the download links and then modify your theme to show them.

How to get custom fields like Invoice number to show on Paypal receipts

We are using PayPal website payment pro and we can send money live and all is well.
Our issues are:
when we view the recent payment, it should say "payment from John Smith"...but ours just say "payment from". the name of the person does not show up. well our accounting section wants it back. :-) not sure why its not or which parameter of the DoDirectPayment request I need for this.
The user submission form has an invoice number field. I also need the invoice number to show on the details page of the PayPal payment receipt. I was able to get stuff like shipping address to show up by using its parameter, but no idea to have Invoice Number show up.
I know it can be done because the old website had these and they used website payments pro API to send payments. I just am not sure of how to do this. thee is no mention of this in the API references that I see, especially for DoDirectPayments method. Any help appreciated
Norman

Dwolla Custom Payment Buttons: Where does the data go?

I'm currently integrating a Dwolla payment method hack on a Shopify store using a Dwolla button. The explanation of the hack is posted on the Shopify forums here:
http://ecommerce.shopify.com/c/shopify-discussion/t/has-shopify-and-you-abandoned-dwolla-133714
(The hack is being used because Shopify doesn't currently support a viable Dwolla gateway option)
I finally did a live test in both guest checkout mode and checked out with an account signed in to Dwolla.
I don't see any of the transaction details when viewing the payment in my Dwolla account(the detail field is empty) despite having included the following button parameters:
data-amount
data-shipping
data-tax
data-name (populated with the Shopify order #)
data-desc (populated with the Shopify Customer Name from Checkout)
data-orderid (populated with the Shopify order #)
data-notes (populated with the customer's checkout note from the Shopify checkout)
data-guest-checkout (true)
I had incorrectly assumed that data-name, data-desc, and/or data-orderid would populate information in the Dwolla transaction information in my Dwolla account's Payment Activity under Options:Details for the transaction.
My question is this: What happens to the data-name, data-desc, data-orderid information?
Is it retrievable on the Dwolla side?
Is there some way to populate the transaction details with any of the above identifiers?
Clarification: When the customer arrives on the Dwolla secure payment page the identifiers do populate the fields properly. My concern is that as the merchant, when I view the transaction in my business Dwolla account, there is no information that links the transaction to the Shopify order by either the order# or a matching customer name (if the name entered in the Dwolla payment process was different than the name entered in the Shopify checkout process).
The only field that is viewable in the Transaction Details page of Dwolla.com is the data-notes. So, if you'd like to be able to correlate transactions, I would suggest adding the Shopify order ID to the data-notes. The data-orderId field is viewable in the Transactions/ById() API call.
The data-name and data-desc, as you've already discovered, are only used at the time of checkout to list the products purchased.