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 a common API which will work for both protocols, although currently only the SOAP version is realized. The REST interface offers more.
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 id (semi-secret registration number) and key (secret which is used to sign the replies).
-Option --Default merchant_id <required> merchant_key <required> test <false>
Accessors
Calls
- $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->startTransaction(OPTIONS)
-
Returns a transaction id and an url where the user needs to get redirected to.
-Option --Default amount <required> bank_id <undef> callback_url <return_url> cancel_url <return_url> description undef notify_url <return_url> payment 'ideal' purchase_id <required> return_url <required>
- amount => FLOAT_EURO
- bank_id => ISSUERID
-
Required when
payment
isideal
- 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
- payment => PROVIDER
- purchase_id => STRING
- return_url => URL
example:
my ($trxid, $redirect) = try { $sisow->startTransation(%args) }; die $@->wasFatal if $@;
- $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
, "Open", "Success", "Expired", "Cancelled", "Failure", "Pending", "Credited", or "Reversed".example:
my $status = $sisow->transactionStatus($trxid) || 'MISSING'; if($status eq 'Expired') ...
Helpers
- $obj->isValidDescription(STRING)
- $obj->isValidPurchaseId(STRING)
- $obj->securedPayment(QS|PAIRS)
-
Check whether the payment response was created by Sisow. QS is a HASH with the URI parameters, or the same parameters as LIST of PAIRS
DETAILS
About Sisow
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:
ideal; iDEAL for about 12 Dutch banks (NL)
sofort; SofortBanking/DIRECTebanking (DE)
mistercash; Bancontact/MisterCash (BE)
paypalec; PayPal Express Checkout
webshop; Webshop Gift Card (NL)
fijncadeau; Fijn Cadeaukaart (NL)
podium; Podium Cadeaukaart (NL)
Sisow also offers payment services:
ecare; pay after delivery
ebill; digital accept giro
overboeking; pay received accept giro
SEE ALSO
This module is part of Payment-Sisow distribution version 0.13, built on January 08, 2014. Website: http://perl.overmeer.net/
LICENSE
Copyrights 2013-2014 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