PHP Classes

File: sdk/doc/SIM.markdown

Recommend this page to a friend!
  Classes of Samuel Adeshina   PHP Authorize.net SIM   sdk/doc/SIM.markdown   Download  
File: sdk/doc/SIM.markdown
Role: Auxiliary data
Content type: text/markdown
Description: First Commit
Class: PHP Authorize.net SIM
Generate payment forms for Authorize.net SIM API
Author: By
Last change:
Date: 8 years ago
Size: 2,361 bytes
 

Contents

Class file image Download

Server Integration Method

Basic Overview

The Authorize.Net PHP SDK includes classes that can speed up implementing a Server Integration Method solution.

Hosted Order/Receipt Page

The AuthorizeNetSIM_Form class aims to make it easier to setup the hidden fields necessary for creating a SIM experience. While it is not necessary to use the AuthorizeNetSIM_Form class to implement SIM, it may be handy for reference.

The code below will generate a buy now button that leads to a hosted order page:

<form method="post" action="https://test.authorize.net/gateway/transact.dll">
<?php
$amount = "9.99";
$fp_sequence = "123";
$time = time();

$fingerprint = AuthorizeNetSIM_Form::getFingerprint($api_login_id, $transaction_key, $amount, $fp_sequence, $time);
$sim = new AuthorizeNetSIM_Form(
    array(
    'x_amount'        => $amount,
    'x_fp_sequence'   => $fp_sequence,
    'x_fp_hash'       => $fingerprint,
    'x_fp_timestamp'  => $time,
    'x_relay_response'=> "FALSE",
    'x_login'         => $api_login_id,
    )
);
echo $sim->getHiddenFieldString();?>
<input type="submit" value="Buy Now">
</form>

Fingerprint Generation

To generate the fingerprint needed for a SIM transaction call the getFingerprint method:

$fingerprint = AuthorizeNetSIM_Form::getFingerprint($api_login_id, $transaction_key, $amount, $fp_sequence, $fp_timestamp);

Relay Response

The PHP SDK includes a AuthorizeNetSIM class for handling a relay response from Authorize.Net.

To receive a relay response from Authorize.Net you can either configure the url in the Merchant Interface or specify the url when submitting a transaction with SIM using the "x_relay_url" field.

When a transaction occurs, Authorize.Net will post the transaction details to this url. You can then craete a page on your server at a url such as http://yourdomain.com/response_handler.php and execute any logic you want when a transaction occurs. The AuthorizeNetSIM class makes it easy to verify the transaction came from Authorize.Net and parse the response:

$response = new AuthorizeNetSIM;
if ($response->isAuthorizeNet())
{
  if ($response->approved)
  {
    // Activate magazine subscription
    magazine_subscription_activate($response->cust_id);
  }
}