integrating pay u money payment gateway with php

Sunday 24 Feb 2019


Complete Guide to integrate pay u money payment gateway with php


So, before someone pay you , these are the required information we need to collection : Amount, Product info, Name, Mobile Number, Email and  Address

<form method="post"   action="check-payment.php"  style="max-width:500px; margin:auto; padding:20px;">                                                                  
                        <div class="form-group">                      
                          <input type="text" placeholder="Amount"  name="payble_amount" id="payble_amount" class="form-control"    required />
                        </div>
                        <div class="form-group">
                            <input type="text" placeholder="Product info" name="product_info" id="product_info" class="form-control"  Placehosder="Product info" placeholder="product info"  required />
                        </div>
                       <div class="form-group">                      
                          <input type="text" placeholder="Name"  name="customer_name" id="customer_name" class="form-control" readonly=""  required   />
                        </div>
                        <div class="form-group">                                   
                          <input type="number" placeholder="Mobile Number"  name="mobile_number" id="mobile_number" class="form-control"  required/>
                        </div>
                        <div class="form-group">                                   
                          <input type="email" placeholder="Email"  name="customer_email" id="customer_email" class="form-control" placeholder="Email" required />
                        </div>
                        <div class="form-group">
                          <input type="text" placeholder="Address" class="form-control" name="customer_address" id="customer_address"   required>
                        </div>
                        <div class="form-group text-right">
                          <button type="submit" class="btn btn-primary">Pay</button>                         
                        </div>
                    </form> 





check-payment.php file 



   <h1>
     Redirecting to payment gateway...
   </h1>


 <?php
           // all values are required
    $amount =  $_POST['payble_amount'];
      $_SESSION['amount']  = $amount; // changes
    $product_info =  $_POST['product_info'];
    $customer_name =  $_POST['customer_name'];
    $customer_emial =  $_POST['customer_email'];
    $customer_mobile =  $_POST['mobile_number'];
    $customer_address =  $_POST['customer_address'];
    
        $MERCHANT_KEY = "OcasZnYJ"; //change  merchant with yours
        $SALT = "sXP1jKuXHV";  //change salt with yours 
    
    
     $txnid = substr(hash('sha256', mt_rand() . microtime()), 0, 20);
        //optional udf values 
        $udf1 = '';
        $udf2 = '';
        $udf3 = '';
        $udf4 = '';
        $udf5 = '';
        
         $hashstring = $MERCHANT_KEY . '|' . $txnid . '|' . $amount . '|' . $product_info . '|' . $customer_name . '|' . $customer_emial . '|' . $udf1 . '|' . $udf2 . '|' . $udf3 . '|' . $udf4 . '|' . $udf5 . '||||||' . $SALT;
         $hash = strtolower(hash('sha512', $hashstring));
      
        
        $success = $base_url.'payment-success.php';  
        $fail = $base_url.'payment-failed.php';  
        $cancel = $base_url.'payment-canceled.php';
        
    
    
    
            $mkey  = $MERCHANT_KEY;
            $tid = $txnid;
            $hash  =  $hash;
            $amount =  $amount;      
             $name = $customer_name;
            $productinfo = $product_info;
            $mailid =  $customer_emial;
            $phoneno = $customer_mobile;
            $address = $customer_address;
            $action = "https://secure.payu.in"; //for live change action  https://secure.payu.in
            $sucess  = $success;
            $failure = $fail;
            $cancel = $cancel;            


    
        ?>
 <form action="<?php echo $action; ?>/_payment" method="post" id="payuForm" name="payuForm" style="display:none;">
                        <input type="hidden" name="key" value="<?php echo $mkey ?>" />
                        <input type="hidden" name="hash" value="<?php echo $hash ?>"/>
                        <input type="hidden" name="txnid" value="<?php echo  $tid ?>" />
                        <div class="form-group">
                            <label class="control-label">Total Payable Amount</label>
                            <input class="form-control" name="amount" value="<?php echo $amount ?>"  readonly/>
                        </div>
                        <div class="form-group">
                            <label class="control-label">Your Name</label>
                            <input class="form-control" name="firstname" id="firstname" value="<?php echo  $name ?>" readonly/>
                        </div>
                        <div class="form-group">
                            <label class="control-label">Email</label>
                            <input class="form-control" name="email" id="email" value="<?php echo  $mailid ?>" readonly/>
                        </div>
                        <div class="form-group">
                            <label class="control-label">Phone</label>
                            <input class="form-control" name="phone" value="<?php echo  $phoneno ?>" readonly />
                        </div>
                        <div class="form-group">
                            <label class="control-label"> Booking Info</label>
                            <textarea class="form-control" name="productinfo" readonly><?php echo  $productinfo; ?></textarea>
                        </div>
                        




                     
                        


                        <div class="form-group">
                            <label class="control-label">Address</label>
                            <input class="form-control" name="address1" value="<?php echo  $address ?>" readonly/>     
                        </div>
                        <div class="form-group">
                            <input name="surl" value="<?php echo $sucess ?>" size="64" type="hidden" />
                            <input name="furl" value="<?php echo $failure ?>" size="64" type="hidden" />                             
                            <input type="hidden" name="service_provider" value="payu_paisa" size="64" /> 
                            <input name="curl" value="<?php echo  $cancel ?> " type="hidden" />
                        </div>
                        <div class="form-group text-center">
                        <input type="submit" value="Pay Now" class="btn btn-success" /></td>
                        </div>
                    </form>  
<script>
      $(document).ready(function(e) {
              $("#payuForm").submit();
        });
   </script>




it's done :) , now simply create payment-success.php, payment-failed.php and payment-canceled.php to redirect the user based on transaction !