From be06e5076c0552251f72d8b59cadd6067e16c377 Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Tue, 13 Jan 2015 12:31:53 -0500 Subject: [PATCH] Add invoice_id as default param to api.contribution.transact https://www.drupal.org/node/2402251 --- api/v3/Contribution.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/api/v3/Contribution.php b/api/v3/Contribution.php index 42712ee6df..d574017e23 100644 --- a/api/v3/Contribution.php +++ b/api/v3/Contribution.php @@ -304,6 +304,9 @@ function civicrm_api3_contribution_transact($params) { $params['invoiceID'] = $params['invoice_id']; } + // Some payment processors expect a unique invoice_id - generate one if not supplied + $params['invoice_id'] = CRM_Utils_Array::value('invoice_id', $params, md5(uniqid(rand(), TRUE))); + $paymentProcessor = CRM_Financial_BAO_PaymentProcessor::getPayment($params['payment_processor'], $params['payment_processor_mode']); if (civicrm_error($paymentProcessor)) { return $paymentProcessor; -- 2.25.1