The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Business::CPI::Gateway::Base - Father of all gateways

VERSION

version 0.901

ATTRIBUTES

receiver_email

E-mail of the business owner.

currency

Currency code, such as BRL, EUR, USD, etc.

log

Provide a logger to the gateway. It's the user's responsibility to configure the logger. By default, nothing is logged.

notification_url

The url for the gateway to postback, notifying payment changes.

return_url

The url for the customer to return to, after they finished the payment.

checkout_url

The url the application will post the form to. Defined by the gateway.

checkout_form_http_method

Defaults to post.

checkout_form_submit_name

Defaults to submit.

checkout_form_submit_value

Defaults to ''.

form_encoding

Defaults to UTF-8.

METHODS

new_cart

Creates a new Business::CPI::Cart connected to this gateway.

get_form

Get the form to checkout. Use the method in Business::CPI::Cart, don't use this method directly.

get_notification_details

Get the payment notification (such as PayPal's IPN), and return a hashref with the details.

query_transactions

Search past transactions.

get_transaction_details

Get more details about a given transaction.

get_hidden_inputs

This method is called when building the checkout form. It will return a hashref with the field names and field values for the form. This way the gateway will implement only this method, while the rest of the form will be built by this class.

notify

This is supposed to be called when the gateway sends a notification about a payment status change to the application. Receives the request as a parameter (in a CGI-compatible format), and returns data about the payment. The format is still under discussion, and is soon to be documented.

AUTHOR

André Walker <andre@andrewalker.net>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by André Walker.

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