close ad
Databridge V2 with MySQLi support IS Now Available!
open ad
View Menu

Technical Support Forums

Free, outstanding support from WebAssist and your colleagues


Worldpay confirmation emails

Thread began 4/23/2012 10:40 am by bill3786 | Last modified 5/11/2012 1:49 pm by Airfox | 9764 views | 25 replies |


Worldpay confirmation emails

Currently carrying out worldpay test transactions and the details being returned about the products purchased on the worldpay confirmation emails are quantity, product name and productID

The client needs to show more details such as order no.,product description, price each, delivery address etc.

1. Is this extra information sent to worldpay by the confirm page? If not can it be configured to send extra information?

2. Also, if it can be sent, can the worldpay confirmation emails be configured to display these extra details?

3. Also, in the early days of testing we didnt have the worldpay installation ID, this was left blank. When test orders were done a worldpay error page would display after submitting the confirm page. This was OK because this was testing and the order details were being entered correctly in the database and would eventually be deleted before going live.

We have now entered the worldpay installation ID and on completing a test order the confirmation emails are sent to the merchant and the customer (albeit with too few details as detailed above) but no order details are stored in the database.

Is this because it is a test transaction or should the details be entered in the database. It would be beneficial to demonstrate the whole process to the client.

Sign in to reply to this post

Jason ByrnesWebAssist

the world pay email receipts cannot be modified, they are generated by the world pay service and world pay does not offer a way to add additional information to them. this is a limitation to the world pay service.

The order information should store in the database regardless of it being a test transaction or live. on the confirm page, the store order details and store order summary behaviors should have the trigger set to any form post so that the order can be stored when the checkout page posts to the confirm page.

Sign in to reply to this post


Thanks Jason.

Do you know if there is a document showing comparisons of gateways showing their pros and cons, would be useful for future sites.

Sign in to reply to this post


Jason, just done some searching on worldpay emails and found this


Is this relevant to my post?

Sign in to reply to this post

Jason ByrnesWebAssist

huh, i did not know that World Pay had an email template system like that, it looks like that would allow you to change some basic information in the email, but it wont allow for showing the product specific info in the email since that information is never sent to world pay.

that page also talks about payment notifications which is a post made to a page on your site:

you could use that to trigger a universal email receipt to be sent that included the cart information and the order number.

Sign in to reply to this post


Just looking into this a bit deeper. On this page from worldpay custa.html

there is a line

"To insert merchant-defined text into the Shopper Confirmation Email with the Payment Page Editor, you will need to include a custom parameter, with its value, in the order details submission and then enable its display via the Payment Page Editor, as described below."

1. What parameters are sent to worldpay from the confirm page?

2. I think I could pacify the client by just adding as an extra, the product description from the ProductLongDesc column. Is this parmeter sent, or if not, as stated in the line from worldpay, can it be sent as a "custom parameter, with its value, in the order details submission and then enable its display via the Payment Page Editor"

Fingers crossed!

Sign in to reply to this post

Jason ByrnesWebAssist

all of the parameters sent to world pay are in the hidden form elements on the confirm page:

<form name="checkout_WP_CmpHid"  action="" method="post">

        <div class="eC_PurchaserInfoWrapper">
                <div class="eC_CheckoutFormBody">
            <table class="eC_ButtonWrapper" border="0" cellpadding="0" cellspacing="0">
                    <td><input type="hidden" name="instId" id="instId" value="dgshsdgh" />
<input type="hidden" name="cartId" id="cartId" value="<?php echo session_id() ?>" />
<input type="hidden" name="amount" id="amount" value="<?php echo $eCart1->GrandTotal() ?>" />
<input type="hidden" name="currency" id="currency" value="USD" />
<input type="hidden" name="desc" id="desc" value="<?php echo $eCart1->TotalColumn("FullDetails"?>" />
<input type="hidden" name="name" id="name" value="<?php echo((isset($_POST["firstname"]))?$_POST["firstname"]:""?> <?php echo((isset($_POST["lastname"]))?$_POST["lastname"]:""?>" />
<input type="hidden" name="address" id="address" value="<?php echo((isset($_POST["street1"]))?$_POST["street1"]:""?>" />
<input type="hidden" name="postcode" id="postcode" value="<?php echo((isset($_POST["postcode"]))?$_POST["postcode"]:""?>" />
<input type="hidden" name="country" id="country" value="<?php echo((isset($_POST["country"]))?$_POST["country"]:""?>" />
<input type="hidden" name="tel" id="tel" value="<?php echo((isset($_POST["phone"]))?$_POST["phone"]:""?>" />
<input type="hidden" name="fax" id="fax" value="<?php echo((isset($_POST["fax"]))?$_POST["fax"]:""?>" />
<input type="hidden" name="email" id="email" value="<?php echo((isset($_POST["email"]))?$_POST["email"]:""?>" />
<input type="hidden" name="M_CustomVar1" id="M_CustomVar1" value="<?php echo((isset($_POST["shipping_firstname"]))?$_POST["shipping_firstname"]:""?> <?php echo((isset($_POST["shipping_lastname"]))?$_POST["shipping_lastname"]:""?>" />
<input type="hidden" name="M_CustomVar2" id="M_CustomVar2" value="<?php echo((isset($_POST["shipping_street1"]))?$_POST["shipping_street1"]:""?> <?php echo((isset($_POST["shipping_street2"]))?$_POST["shipping_street2"]:""?>" />
<input type="hidden" name="M_CustomVar3" id="M_CustomVar3" value="<?php echo((isset($_POST["shipping_city"]))?$_POST["shipping_city"]:""?>" />
<input type="hidden" name="M_CustomVar4" id="M_CustomVar4" value="<?php echo((isset($_POST["shipping_postcode"]))?$_POST["shipping_postcode"]:""?>" />
<input type="hidden" name="M_CustomVar5" id="M_CustomVar5" value="<?php echo((isset($_POST["shipping_country"]))?$_POST["shipping_country"]:""?>" />
<input type="hidden" name="testMode" id="testMode" value="100" />
                        <input type="button" value="Modify information" class="eC_FormButton" onclick="history.back();return false;"/><input type="submit" name="Submit_order" id="Submit_order" value="Checkout"  class="eC_FormButton" />

2) to send the product long description, you would need to add the custom parameter as a hidden element and set the value to the use the log description from the cart, however, you will need to add a loop to loop through the cart to include the long description of all items in the cart.

Sign in to reply to this post


Thanks, just need some more help before trying it out.

1. What parameters are transferred by this hidden element

<input type="hidden" name="desc" id="desc" value="<?php echo $eCart1->TotalColumn("FullDetails") ?>" />

2. Would this be correct for the custom parameter for the ProductLongDesc

<input type="hidden" name="M_CustomVar6" id="M_CustomVar6" value="<?php echo((isset($_POST["ProductLongDesc"]))?$_POST["ProductLongDesc"]:"") ?>" />

The worldpay help documents describe a custom parameter as MC_ or CM_ whereas the confirm page uses M_C, does this matter and what is the difference between MC_ and CM_?

3. How do you add the loop that you describe?

Sign in to reply to this post

Jason ByrnesWebAssist

1) change the hidden element to a text element and you can see what it outputs:

<input type="text" name="desc" id="desc" value="<?php echo $eCart1->TotalColumn("FullDetails") ?>" />

2) World pay offers 5 custom variables by default M_CustomVar1 - 6, these are usually used for passing shipping information

you can create your own custom variable using whatever name you like, but prefacing it with MC_ or CM_:

<input type="hidden" name="MC_LongDescription" id="MC_LongDescription" value="" />

you would not use a post value for the long description, but a cart value.

3) add a cart repeat region to the page by going to the server behaviors panel, clicking the plus button and selecting eCart -> Cart Display -> Repeat Cart region.

Sign in to reply to this post


Just a suggestion...

From experience, I would suggest best practice would be to send your own order confirmation email and leave the official WorldPay email as is.

Maintaining the separation between merchant and processing gateway makes it easier when stuff goes wrong, its easier to see where the problem is. "I ordered apples, but the WorldPay email said I ordered a stack overflow" where do you start?

WorldPay do card processing, the email they send does the job but it aint exactly pretty. If you do your own email it can have the look and feel of your site.

Using universal email is so much easier than forcing WorldPay to do stuff its not good at. Its got wizzards!

Sign in to reply to this post

Build websites with a little help from your friends

Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.

Build websites from already-built web applications

These out-of-the-box solutions provide you proven, tested applications that can be up and running now.  Build a store, a gallery, or a web-based email solution.

Want your website pre-built and hosted?

Close Windowclose

Rate your experience or provide feedback on this page

Account or customer service questions?
Please user our contact form.

Need technical support?
Please visit support to ask a question





Ease of use


security code refresh image

We do not respond to comments submitted from this page directly, but we do read and analyze any feedback and will use it to help make your experience better in the future.

Close Windowclose

We were unable to retrieve the attached file

Close Windowclose

Attach and remove files

add attachmentAdd attachment
Close Windowclose

Enter the URL you would like to link to in your post

Close Windowclose

This is how you use right click RTF editing

Enable right click RTF editing option allows you to add html markup into your tutorial such as images, bulleted lists, files and more...

-- click to close --

Uploading file...