cancel
Showing results for 
Search instead for 
Did you mean: 

CIM SOAP API - ValidateCustomerPaymentProfile optional customerShippingAddressId parameter

I'm using the CIM SOAP API with a C# proxy which provides a ValidateCustomerPaymentProfile method that accepts the following parameters:

 

MerchantAuthenticationType merchantAuthentication

long customerProfileId

long customerPaymentProfileId

long customerShippingAddressId

string cardCode

ValidationModeEnum validationMode

 

The CIM docs specify that customerShippingAddressId is optional - do I specify zero for this parameter in this case?

 

Thanks.

lukes92000
Member
3 REPLIES 3

 


@lukes92000 wrote:

I'm using the CIM SOAP API with a C# proxy which provides a ValidateCustomerPaymentProfile method that accepts the following parameters:

 

MerchantAuthenticationType merchantAuthentication

long customerProfileId

long customerPaymentProfileId

long customerShippingAddressId

string cardCode

ValidationModeEnum validationMode

 

The CIM docs specify that customerShippingAddressId is optional - do I specify zero for this parameter in this case?

 

Thanks.


 

 

Greetings,

 

You can set this parameter to zero within you method and simply omit the "customerShippingAddressId" element within your SOAP request. Passing a zero as the "customerShippingAddressId" will throw an exception on the gateway end.

 

Thank You!

soundcommerce
Trusted Contributor
Trusted Contributor

Hi,

 

I am trying to call ValidateCustomerPaymentProfile to validate payment profile for my customer.

 

I dont have customerShippingAddressID in my system. But even if i try to pass 0 as a value for this field it's giving me E00013 error.

 

And I cannot leave it blank as I am directly calling api's webmethod which is expecting long value in it. 

 

Is there another way to call this webmethod with some other value and validatepayment profile as well?

 

Please help.

 

Thanks,

Aparikh

According to the spec, that value is supposed to be optional, so I'd think the easiest way out of this situation would be to trace how that value passes through the code and disable whatever's blocking it from being left out.

 

EDIT: As mentioned in the other thread, have you printed out all the values to make sure it's this that's missing?