Clase PHP para Authorize.net Automated Recurring Billing Payments API

John Conde fue el primero en escribir una clase PHP para la reciente API de Authorize.net Automated Recurring Payments (ARB), él también fue quien me dijo que la tan esperada API estaba a punto de llegar hace algunas semanas.

El código de John era solo para PHP 5 así que cambié algunas cositas y he terminado una primera versión que funciona tanto en PHP 5 como PHP 4.

Descarga arb2.zip y cuéntame como te funciona.

Aún estoy probando la clase y si encuentro algún problema actualizaré este artículo y el código.

Necesitarás una cuenta Authorize.net con ARB activo.

Puedes usar código como el siguiente para utilizar la clase:

<?php
  require_once("AuthnetARB.class.php");

  $login = 'cnpdev4289';
  $transkey = 'SR2P8g4jdEn7vFLQ';
  $test = TRUE;

  $arb = new AuthnetARB($login, $transkey, $test);

  $arb->setParameter('interval_length', 1);
  $arb->setParameter('interval_unit', 'months');
  $arb->setParameter('startDate', date("Y-m-d"));
  $arb->setParameter('totalOccurrences', 12);
  $arb->setParameter('trialOccurrences', 0);
  $arb->setParameter('trialAmount', 0.00);

  $arb->setParameter('amount', 1.00);
  $arb->setParameter('refId', 15);
  $arb->setParameter('cardNumber', '5424000000000015');
  $arb->setParameter('expirationDate', '2009-05');

  $arb->setParameter('firstName', 'Joe');
  $arb->setParameter('lastName', 'Doe');
  $arb->setParameter('address', 'Casa 1872');
  $arb->setParameter('city', 'City');
  $arb->setParameter('state', 'FL');
  $arb->setParameter('zip', '33619');
  $arb->setParameter('country', 'us');

  $arb->setParameter('subscrName', 'The Test Account');
  $arb->createAccount();

  echo 'isSuccessful: ' .$arb->isSuccessful() . '<br />';

  if ($arb->isSuccessful()) {
    echo 'cool, it worked! <br />';
  } else {
    echo 'error in payment <br />';
  }

  echo 'isError: ' .$arb->isError() . '<br />';
  echo 'getSubscriberID: ' .$arb->getSubscriberID() . '<br />';
  echo 'getResponse: ' .$arb->getResponse() . '<br />';
  echo 'getResultCode:' .$arb->getResultCode() . '<br />';
  echo 'getString: ' .$arb->getString() . '<br />';
  echo 'getRawResponse: ' .$arb->getRawResponse() . '<br />';
?>

Suerte.

Trackback URL for this post:

http://www.ventanazul.com/trackback/74

Pruebas mas complejas

Alguien ha hecho pruebas mas complejas de AuthnetARB.class.php quisiera elaborar una guia para usuarios de esta clase, comenzando por un sistema sencillo para donaciones.

Saludos

Cesar

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <h1> <h2> <h3> <h4>
  • Saltos automáticos de líneas y de párrafos.

Más información sobre opciones de formato