since a longer time we get a lot of error messages in the API connection from digistore24 to infusionsoft.
Many calls are running fine but a lot of calls breaks with an error.
“Failed to invoke method addOrderItem in class com.infusionsoft.api.xmlrpc.XmlRpcInvoiceService: Couldn’t find the record with primary key ###### in Invoice”
Who can help, please?
Digistore24 is the developer of the connection but says that they cannot look into infusionsoft and why the infusionsoft server bings this error back.
They only can say that the server seems to cannot find the order IDs in the table invoice.
Infusionsoft support says that is behind our scope.
Very nice. And how can we fix the problem???
Thanks a lot!
A few possibilities here.
(1). Do Digitstore24 realise that the Order and Invoice Ids do not necessary match up with the same numbers. It is possible to have differing Id Numbers, and that the wrong Id is being used? When an Order is created via the “blankOrder” function, you get back the Invoice Id. Then you use the Invoice Id to assign the Order Items via the “addOrderItem” function. Although if the numbers have drifted, you would get this more often.
(2). Do Orders get deleted from your Account?
(3). The Invoice has not been fully created in Infusionsoft by the time the “addOrderItem” API function. I have seen delays with particular API calls. It is possible that you are being caught by that scenario. Do you have a large database with contacts and orders? One suggestion would be to put in a 1 second delay after the order is created, and see if that reduces the issue. Another would be to query Infusionsoft after the Order is created to see if it is available prior to adding the order items.
Thanks for reply. Is there something from your ideas that i can check in my infusionsoft dashboard without the digistore24 support? So i can validate the possible reason?
Not really. I would rather know how DigiStore24 are creating the Orders.
My guess is that if they put in a Sleep call for 1 Second, after they have created the Blank Order (prior to adding the Order Item), then you could monitor to see if the problems have been reduced.
If not, then there is something wrong with their code, or you have a large database and is taking time to get the Order and Invoice created, which would fall back to Infusionsoft to resolve.
The real problem is, that Digistore24 is a bigger company from that we are only one of thousands customers. They will not make experiments for us to debug the API. Only if there are problems with more users…
By the way. You describe orders where the order is a new one it think. If i am wrong, correct me, please.
If i have a look into the API messages, then i can see that many (new) orders are working correctly.
A lot of the error messages are from older subscriptions where the main order exists for a longer time.
Is there a way to have a look, if the ID the API searches for is really a order or invoice ID oder what ID this means?
Maybe it is possible that the error comes from contacts that was brought together from duplicated contacts in infusionsoft. I know that some collegues are doing this when the see duplicates in the infusionsoft dashboard.
How can i check if the ID is really existing. Digistore24 says that the ID the API is searching for, is the order ID. But how can i check it?
Thanks for help!!!
Ah okay, that explains things a bit better. When I have used the “addOrderItem” function, it was during the creating of new orders, and charging them straight away.
As you are dealing with Subscriptions, that is something I let Infusionsoft deal with.
It is a bit hard to work out what they are doing here.
You can search for the Order Id, via the Orders page. Then you can see if it matches to what your AP Log says.
Maybe they have some sort of sync table, and if you merge / remove contacts it cannot match them up correctly. That is a guess on what they are doing.
I have no experience with Digistore24, I never heard of them until you mentioned them yesterday. @John_Borelli, have you dealt with Digistore24 before?
Ok, i understand. The subscription is completely handled by Digistore24. We use infusionsoft only for mailing, tagging and as a “control central station”. We do not really use the crm in it…
FYI, the order ID the API cannot find i can find in the infusionsoft search at my dashboard. Why the API cannot find it, is the big question.
Then you need to get Digistore24 to investigate the problem. You have enough evidence to prove something is wrong.