cancel
Showing results for 
Search instead for 
Did you mean: 

Why can't I create multiple subscriptions for a customer profile with the same amount and interval?

I am using the PHP SDK to create Subscriptions for customers in the following flow.

 

Create customer -> add payment profile -> create subscription.

 

The first subscription is created perfectly. After that if I try to create a subscription that on my side is a different subscription but has the same amount, interval, and occurrences I get the following error.

 

Error Code E00012

"You have submitted a duplicate of Subscription 4362497. A duplicate subscription will not be created."

 

The issue I have with this is that I'm passing a different refId and a different subscription name.

 

Is there anyway to create multiple subscriptions that have the same amount, interval and occurrences? There must be some way to define a different subscription that has those other fields the same.

erichie
Member
1 REPLY 1

It is not possible to create an identical subscription.  We use the following fields to check for duplicates:

 

subscription.article.merchantID
subscription.article.customerInfo.payment.creditCard.cardNumber
subscription.article.customerInfo.payment.eCheck.routingNumber
subscription.article.customerInfo.payment.eCheck.accountNumber
subscription.article.customerInfo.customerID
subscription.article.customerInfo.billingInfo.billToAddress.firstName
subscription.article.customerInfo.billingInfo.billToAddress.lastName
subscription.article.customerInfo.billingInfo.billToAddress.company
subscription.article.customerInfo.billingInfo.billToAddress.streetAddress
subscription.article.customerInfo.billingInfo.billToAddress.city
subscription.article.customerInfo.billingInfo.billToAddress.stateProv
subscription.article.customerInfo.billingInfo.billToAddress.zip
subscription.orderInfo.amount
subscription.orderInfo.invoice
subscription.recurrence.startDate
subscription.recurrence.interval
subscription.recurrence.unit

 

If all of these fields are duplicated in an existing subscription, E00012 will result. Modifying any of these fields should result in a unique subscription.

 

We typically see developers changing the value for subscription.orderInfo.invoice to avoid duplicates.

RichardH
Administrator Administrator
Administrator