NAME
Payment::Sisow - payments via Sisow
INHERITANCE
Payment::Sisow is extended by
Payment::Sisow::SOAP
SYNOPSIS
my $sisow = Payment::Sisow::SOAP->new(%opts);
foreach my $bank ($sisow->listIdealBanks)
{ print "$bank->{id}\t$bank->{name}\n";
}
my ($trxid, $redirect) = $sisow->startTransaction(%opts);
my $status = $sisow->transactionStatus($trxid);
my $info = $sisow->transactionInfo($trxid);
DESCRIPTION
Sisow (http://sisow.nl) is a Dutch payment broker, which offers a SOAP and a REST interface for communication. This implementation tries to offer an API which will work for both protocols, although currently only the SOAP version is realized.
Originally, Sisow focussed on the Dutch cheap and easy iDEAL payment system --offered by most Dutch banks-- but later it added other types of payments.
You can test this module using the script in the examples/ directory contained in the CPAN distribution of Payment-Sisow
. It is an extensive demo.
Please support my development work by submitting bug-reports, patches and (if available) a donation.
METHODS
Constructors
- Payment::Sisow->new(OPTIONS)
-
Inside Sisow's customer website, you can find the generated merchant <b>id</b> (semi-secret registration number) and <b>key (secret which is used to sign the replies).
-Option --Default merchant_id <required> merchant_key <required> test <false>
Accessors
Calls
- $obj->isValidDescription(STRING)
- $obj->isValidPurchaseId(STRING)
- $obj->listIdealBanks(OPTIONS)
-
List the banks which offer iDEAL. With iDEAL, the webshop lists the customer banks, which each have their own landing page. Returned is a (reference to an) ARRAY of HASHes, each with a bank and id field.
example:
foreach my $bank ($sisow->listIdealBanks) { print "$bank->{name}\n"; }
- $obj->securedPayment(QS)
-
Check whether the payment response was created by Sisow. QS is a HASH with the URI parameters.
- $obj->startTransaction(OPTIONS)
-
Returns a transaction id and an url where the user needs to get redirected to.
-Option --Default amount <required> bank_id <required> callback_url <return_url> cancel_url <return_url> description undef notify_url <return_url> provider 'ideal' purchase_id <required> return_url <required>
- amount => FLOAT_EURO
- bank_id => ISSUERID
- callback_url => URL
- cancel_url => URL
- description => STRING
- notify_url => URL
-
Pick from:
ideal iDEAL (The Netherlands) mistercash BanContact/MisterCash (Belgium) sofort DIRECTebanking (Germany) webshop WebShop GiftCard (The Netherlands) podium Podium Cadeaukaart (The Netherlands) ebill indirect payments
- provider => PROVIDER
- purchase_id => STRING
- return_url => URL
- $obj->transactionInfo(TRANSACTION_ID)
-
Returns a HASH with complex information.
example:
my $info = $sisow->transactionStatus($trxid) or die "cannot retrieve info for $trxid\n";
- $obj->transactionStatus(TRANSACTION_ID)
-
Returns
undef
, "Success", "Expired", "Cancelled", or "Failure".example:
my $status = $sisow->transactionStatus($trxid) || 'MISSING'; if($status eq 'Expired') ...
SEE ALSO
This module is part of Payment-Sisow distribution version 0.10, built on July 09, 2013. Website: http://perl.overmeer.net/
LICENSE
Copyrights 2013 by [Mark Overmeer]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html