NAME
   PagSeguro::API - UOL PagSeguro Payment Gateway API Module

SYNOPSIS
       use PagSeguro::API;

       # new instance
       my $ps = PagSeguro::API->new(
           debug   => 1,                   # enable debug
           sandbox => 1,                   # enable sandbox
           email   => '[email protected]',
           token   =>'95112EE828D94278BD394E91C4388F20'
       );


       # load transaction by code
       my $transaction = $ps->transaction
           ->load('TRANSACTION_CODE_HERE');

       # api xml response to perl hash
       say $transaction->{sender}->{name}; # Foo Bar

VARS
   Enviroment variables that you can define to configure your access, debug
   mode, sandbox use, etc...

 email
   Configure email to access api.

       my $ps = PagSeguro::API->new( email => '[email protected]' );

   or you can use env var

       $ENV{PAGSEGURO_API_EMAIL} = '[email protected]';

 token
   Configure token to access api.

       my $ps = PagSeguro::API->new( token => '95112EE828D94278BD394E91C4388F20' );

   or you can use env var

       $ENV{PAGSEGURO_API_TOKEN} = '95112EE828D94278BD394E91C4388F20';

 sandbox
   Configure module to use sandbox mode (default is 0).

       my $ps = PagSeguro::API->new( sandbox => 1 );

   or you can use env var

       $ENV{PAGSEGURO_API_SANDBOX} = 1;

 debug
   Configure module to use debug mode (default is 0).

       my $ps = PagSeguro::API->new( debug => 1 );

   or you can use env var

       $ENV{PAGSEGURO_API_DEBUG} = 1;

ACCESSORS
   Public properties and their accessors

 email
   This is the user registered email that you need to use PagSeguro payment
   API.

       # get or set email property
       $ps->email('[email protected]');
       say $ps->email;

   *email is a required properties to access HTTP GET based API urls.

 token
   This is a key that you need to use PagSeguro payment API.

       # get or set token property
       $ps->token('95112EE828D94278BD394E91C4388F20');
       say $ps->token;

   *token is a required properties to access HTTP GET based API urls.

METHODS
 new
       my $ps = PagSeguro::API->new;

   or pass paramethers...

       my $ps = PagSeguro::API->new(
           email => '[email protected]', token => '95112EE828D94278BD394E91C4388F20'
       );

 checkout
       # getting product checkout class instance
       my $c = $ps->checkout;

       $ps->checkout( PagSeguro::API::Checkout->new );

 transaction
       # getting transaction class instance
       my $t = $ps->transaction;

       $ps->transaction( PagSeguro::API::Transaction->new );

   PagSeguro::API::Transaction is a class that will provide access to
   transaction methods for API.

   See more informations about at PagSeguro::API::Transaction.

 notification
       # getting notification class instance
       my $n = $ps->notification;

       $ps->notification( PagSeguro::API::Notification->new );

   PagSeguro::API::Notification is a class that will provide access to
   notification methods for API.

   See more informations about at PagSeguro::API::Notification.

BUG
   Please, send bug reports to my CPAN user email at [email protected].

   git-repository:

   <https://github.com/dvinciguerra/p5-pagseguro-api>

AUTHOR
   Daniel Vinciguerra <[email protected]>

   2013 (c) Bivee <http://bivee.com.br>

COPYRIGHT AND LICENSE
   This software is copyright (c) 2013 by Bivee.

   This is a free software; you can redistribute it and/or modify it under
   the same terms of Perl 5 programming languagem system itself.