The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

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   => 'sandbox@bar.com', 
        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 => 'joe@doe.com' );

or you can use env var

    $ENV{PAGSEGURO_API_EMAIL} = 'joe@doe.com';

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('foo@bar.com');
    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 => 'foo@bar.com', 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 dvinci@cpan.org.

git-repository:

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

AUTHOR

Daniel Vinciguerra <daniel.vinciguerra@bivee.com.br>

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.