BP_STAMP Validation

This code is intended to be used to validate the value of the BP_STAMP that's returned after a transaction. This value is used as a security check to ensure that the response received from a transaction is authentic and has not been altered in any way.

The following sample code calls a routine from our Code Library.
Download BluePay.php
Or, download via GitHub


# BluePay Perl Sample code.
# This code sample reads the values from a BP10emu redirect
# and authenticates the message using the the BP_STAMP
# provided in the response. Point the REDIRECT_URL of your
# BP10emu request to the location of this script on your server.

print "Content-type:text/html\r\n\r\n";
print "<html><head></head><body>";

use strict;
use CGI;
use lib '..';
use bluepay;

my $account_id = "Merchant's Account ID Here";
my $secret_key = "Merchant's Secret Key Here";
my $mode = "TEST";

my $response = new CGI;
my $response_params = $response->Vars;

if (defined $response_params->{BP_STAMP}){ # Check whether BP_STAMP is provided

my $bp = BluePay->new(

my $bp_stamp_string = '';
foreach my $field (split(' ', $response_params->{BP_STAMP_DEF})){ # Split BP_STAMP_DEF on whitespace
$bp_stamp_string .= $response_params->{$field}; # Concatenate values used to calculate expected BP_STAMP

    my $expected_stamp = uc($bp->generate_tps($bp_stamp_string, $response_params->{TPS_HASH_TYPE})); # Calculate expected BP_STAMP using hash function specified in response

    if ($expected_stamp eq  $response_params->{BP_STAMP}){ # Compare expected BP_STAMP with received BP_STAMP
    # Validate BP_STAMP and reads the response results
        print "VALID BP_STAMP: TRUE<br/>";
    foreach my $key (keys $response_params){
    print $key . ': ' . $response_params->{$key} . "<br/>";
        print "ERROR: BP_STAMP VALUES DO NOT MATCH<br/>";
} else{

print "</body></html>";

Can’t find what you’re
looking for? We can help.

Contact 800-350-2684 for Integration Support.

  • Microsoft Gold Partner Badge
  • Susan G. Komen for the Cure Supporter
  • 2018 American Business Awards Gold Stevie® Winner Badge for Best Payment and Electronic Commerce Solution
  • 2018 CNP Awards Customer Choice Winner Badge for Best E-Commerce Platform/Gateway
  • Best in Biz Awards 2018 Silver Winner Badge for Business Development Department of the Year
  • TSG Gateway Awards 2019 BluePay
BluePay Processing, LLC is a registered ISO of Wells Fargo Bank, N.A., Concord, CA, 94524 U.S.A.
BluePay Canada ULC, is a Registered ISO/MSP of Peoples Trust Company, Vancouver, Canada.