Authorize.net 'checkDupe' blocks incomplete transactions as 'duplicate'
I seem to have a problem with, CiviCRM 5.50.3, webform_civicrm 7.x-5.8 and this extension. See
https://civicrm.stackexchange.com/questions/42236/payment-forms-fail-with-unknown-api-version/42238
https://www.drupal.org/project/webform_civicrm/issues/3294171
With this extension on, all transactions end in
It appears that this transaction is a duplicate.
I am using Authorize.net, so the error likely comes from
civicrm/CRM/Core/Payment/AuthorizeNet.php:172
// Authorize.Net will not refuse duplicates, so we should check if the user already submitted this transaction
if ($this->checkDupe($authorizeNetFields['x_invoice_num'], $params['contributionID'] ?? NULL)) {
throw new PaymentProcessorException('It appears that this transaction is a duplicate.
the data there looks fine when vardumped.
checkDupe (civicrm/CRM/Core/Payment.php:1702) checks for a CRM_Contribute_DAO_Contribution
with the same $invoiceId and $contributionID and when checking manually, that contribution indeed does exist in the table. It looks ok and has contribution_status_id 4 (after the error occured).
I notice in release 1.5 you fixed a bug mentioning
Check the payment completed before creating payment record.
Is this related ?