Price not updating on target instance

Jimmy45
Giga Guru

I have a catalog item, let's call it "iPhone" in both instances, Source and Target instances.

The price for this item is $700.00

In that catalog item I have a variable: Add a case?
2 Choices:

Yes - This increases the price by $35.00.

No - (The price does not change)

 

So when I order this item from the Portal in the Catalog, I add a case. This increases the price to $735.00
I submit it.

 

In the RITM the price is correct, the variables show up on the RITM and I approve it.

This is when it sends it to the target instance. (also ServiceNow)

 

This same catalog item, variable and choices exist in the target instance. (matching sys_ids between the 2 instances)

However, my problem is that when the target instance receives the request from the Source, the RITM shows up in the target instance with the catalog item price without the case. $700.00.

What exactly could be the issue? Literally everything is the same in both instances. Your help is much appreciated. I am active on here, so yes I will make sure you get the credit.

1 ACCEPTED SOLUTION

@Jimmy45 Thanks for the background. It merely depends upon how the API is implemented.

 

What data flows from Source to Target instance. From the background you provided, I assume that you are transmitting Catalog sys_id and Variables data only. If that's the case in the target instance the Scripted REST API might be using the Cart API to order the same item.

 

If this is the case, we should check the Scripted REST API implementation.

 

If this is not the case, we should check both Outbound and Inbound scripts.

Thanks,
Anvesh

View solution in original post

4 REPLIES 4

AnveshKumar M
Tera Sage
Tera Sage

Hi @Jimmy45

Which API are you using a custom one or OOTB SN SC Service Catalog Cart API?

 

 

Thanks,
Anvesh

Jimmy45
Giga Guru

We are using a custom API.

A little background here, 1 year ago, the price for the catalog item was $900.00. With a case it added $35.00. Making the total cost $935.00 in the Source Instance. I updated the price in the target instance to the same.
The Catalog Items in Source and Target instances have the same sys_id

The Variable in Source and Target instances have the same sys_id.

 

@AnveshKumar M  -  Choices for that Variable are the same in the Source and Target instance (same sys_id)

All of this worked just fine and updated the price correctly back then.

 

Literally, the only thing that changed was the price. Now, for some reason, the target instance doesn't want to add that additional $35.00 to the total cost. Any ideas?

@Jimmy45 Thanks for the background. It merely depends upon how the API is implemented.

 

What data flows from Source to Target instance. From the background you provided, I assume that you are transmitting Catalog sys_id and Variables data only. If that's the case in the target instance the Scripted REST API might be using the Cart API to order the same item.

 

If this is the case, we should check the Scripted REST API implementation.

 

If this is not the case, we should check both Outbound and Inbound scripts.

Thanks,
Anvesh

Jimmy45
Giga Guru

Turns out it was in the target instance workflow through a script. Your answer helped me recheck the APIs. Thank you.