I will try and give as much detail as possible. I have a new Shopify store, my payment settings are set to Shopify Payments and I have enabled only the Visa and Mastercard payment methods. I have created a custom app. I interact with the Admin API to create a new customer when my customers register with my servers. Shopify emails the customer to continue the verification process. When a customer wants to purchase products they contact my server and it creates a Checkout object using the Storefront API with the checkoutCreate GraphQL mutation. This Checkout object is not associated with any customer at this point. We take the “webUrl” field on the Checkout object and a browser opens on the customers device. Once the customer is logged in the Checkout is now associated with the customer. The customer then enters their card information and Shopify begins processing the payment. The payment fails every time though, regardless of the card being used with the message “Your payment could not be processed at this time, please try again in a few minutes”.
I first contacted Shopify and after their investigation they suggested I contact the card issuer as they couldn’t see any issue with how the store was set up or from anything on their side. After contacting the card issuer (my bank) they cannot see any attempted payments, or when I perform a live attempt while on the phone they can’t see anything at all. So that brought me back to Shopify. They investigated and still can’t see anything on their end. All the checkouts are now abandoned Checkouts and there is no other detail attached to them to indicate any history of failed payment attempts. Their payments team looked into it again and to them it is most likely an issue with how I am creating the Checkouts, and so won’t offer further support as it would be because of the custom app that I have implemented. Here is an example of the GraphQL mutation I’m using to create my Checkout:
mutation {
checkoutCreate(input: {
lineItems: [{ variantId: "gid://shopify/ProductVariant/variantid", quantity: 4 }]
}) {
checkout {
id
webUrl
lineItems(first: 5) {
edges {
node {
title
quantity
}
}
}
}
}
}
And the response:
{
"data": {
"checkoutCreate": {
"checkout": {
"id": "gid://shopify/Checkout/shopifycheckoutid",
"webUrl": "https://thebingoapp.myshopify.com/weburl",
"lineItems": {
"edges": [
{
"node": {
"title": "Bingo Card",
"quantity": 4
}
}
]
}
}
}
}
}
I take the webUrl from the above response and open a browser (I’ve tested it on mobile and on desktop with the same results). Every single attempt to pay with a real card fails with the message “Your payment could not be processed at this time, please try again in a few minutes”. Shopify are happy that the store is set up correctly and they are getting a generic error message saying something about a network problem.
Would anyone have any insight into this? Am I creating the Checkout object correctly? Could this be something to do with 3D Secure and PSD2. I’m located in Ireland. I was under the impression that Shopify handled all the 3d Secure requirements themselves once the customer landed in the checkout in the browser. They can’t help me any further with this as they said there is no issue or bug reports on their end. Any help from any experienced community members would be greatly appreciated.