NAME Net-Flotum - use Flotum as your payment gateway SYNOPSIS use Net::Flotum; $flotum = Net::Flotum->new( merchant_api_key => 'foobar', ); # returns a Net::Flotum::Object::Customer $customer = $flotum->new_customer( name => 'name here', remote_id => 'your id here', legal_document => '...', default_address_neighbourhood => '...' ); # returns a Net::Flotum::Object::Customer $customer = $flotum->load_customer( # via remote_id remote_id => 'foobar', # or via id id => '0b912879-7c7b-42a1-8f49-722f13b67ae6' ); # returns a hash reference containing details for creating an credit card. $http_description = $customer->new_credit_card(); # something like that { accept : "application/json", fields : { address_city : "?Str", address_inputed_at : "?GmtDateTime", address_name : "?Str", address_neighbourhood: "?Str", address_number : "?Str", address_observation : "?Str", address_state : "?Str", address_street : "?Str", address_zip : "?Str", brand : "*Brand", csc : "*CSC", legal_document : "*Str", name_on_card : "*Str", number : "*CreditCard", validity : "*YYYYDD" }, href : "https://default.flotum.com/customers/9baa2e37-2cb0-4c5c-9fe0-b2d91fdd53fe/credit-cards/?api_key=xxxx", method : "POST", valid_until: 1448902516 } # ? means not required # * means required. # Str = Any String, CreditCard = credit card number, YYYYMD = Year+Month (2 pad) # Brands acceptance may vary, but may be one or more of bellow: # visa|mastercard|discover|americanexpress|jcb|enroute|bankcard|solo|chinaunionpay|laser|isracard|aura|elo # returns a list of Net::Flotum::Object::CreditCard @credit_cards = $customer->list_credit_cards(); # Creating a charge. my $charge = $customer->new_charge( amount => 100, currency => 'bra', metadata => { 'Please use' => 'The way you need', 'but' => 'Do not use more than 10000 bytes after encoded in JSON', } ); # Doing payment. my $payment = $charge->payment( customer_credit_card_id => $customer_credit_card_id, csc_check => '000', ); # Capture. my $capture = $charge->capture(description => "is optional"); print $capture->{transaction_status} . "\n"; # authorized # Refund. my $refund = $charge->refund(); print $refund->{status} . "\n"; # aborted print $refund->{transaction_status} . "\n"; # in-cancellation DESCRIPTION this is WIP work, please check this page later! Flotum is currently only being used on eokoe.com startups. Flotum is a solution for storing credit card information and creating charges against it. It allow you to change between operators (Stripe, Paypal, etc) while keeping your customer credit cards in one place. AUTHOR Renato CRON COPYRIGHT Copyright 2015-2016 Renato CRON Owing to http://eokoe.com LICENSE This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO Business::Payment Business::OnlinePayment