How to Replace Approve/Reject Images

Make the following modifications to the site’s alternate CSS:

.form-approval .approve-reason img, .form-approval .reject-reason img{
 .form-approval .reject-reason{
 background: url('Your Image URL') no-repeat;
 .form-approval  approve-reason{
 background: url('Your Image URL') no-repeat;

Source Doc ID 1905719.1

How to invoke creation of a new quote by invoking a URL without calling createTransaction() SOAP API

The conventional known approach to create a transaction is to call the createTransaction() web services. If you use version 1, you will need to additionally call the login() API to generate the session id and pass it in the create transaction API. For version2() you can directly call the createTransaction() API by passing credentials.

There might be a need for a third party custom system to integrate with CPQ and directly invoke quote creation without calling the create transaction API and land the user to the quote screen where he can go ahead and start making changes on the quote right away. This can be achieved by  simply invoking a URL. Note that it will still be required to invoke the login API() to get the session ID token which is passsed in this URL. So highlight. You can use the below URL to invoke quote creation:

Make sure to replace your_session_id_value with the session ID generated by the login call and oraclecpqo with the actual value of the process variable name.

How to create a new version attribute in commerce?

  1. Create a new commerce action of type version.  Creating it will create an internal commerce attribute of type string which will maintain version when clicked. The name of this variable is dynamic and will depend on the name of the commerce action. Typical name of the attribute is ‘version_number_versionTransaction_t. Note that this attribute is not visible in the commerce attribute listing but would be visible when you create a commerce util function. Try to search for version_ in the util to find this newly created internal attribute. The Default value of this attribute is  blank and increments to 2 when clicked for the first time. When we click on it next it will become 3 and then 4 and then so on.
  2. Write a commerce function with name say version() which gets the value of this variable in integer as follows
if(version_number_versionTransaction_t <> "") {

                return atoi(version_number_versionTransaction_t);

                } else {

                return 1;


3. Create a new attribute to capture version with name say version_t of type integer. Default it to the following BML snippet

return commerce.version();

4. You would like this attribute to get evaluated again when you click on version action everytime so that this attribute always shows the correct value on the UI