File Coverage

lib/Net/API/Stripe/Connect/Account.pm
Criterion Covered Total %
statement 19 60 31.6
branch n/a
condition n/a
subroutine 7 48 14.5
pod 41 41 100.0
total 67 149 44.9


line stmt bran cond sub pod time code
1             ##----------------------------------------------------------------------------
2             ## Stripe API - ~/lib/Net/API/Stripe/Connect/Account.pm
3             ## Version v0.101.0
4             ## Copyright(c) 2019 DEGUEST Pte. Ltd.
5             ## Author: Jacques Deguest <jack@deguest.jp>
6             ## Created 2019/11/02
7             ## Modified 2022/10/29
8             ##
9             ##----------------------------------------------------------------------------
10             ## https://stripe.com/docs/api/account/object
11             package Net::API::Stripe::Connect::Account;
12             BEGIN
13             {
14 2     2   21052220 use strict;
  2         13  
  2         62  
15 2     2   10 use warnings;
  2         4  
  2         57  
16 2     2   11 use parent qw( Net::API::Stripe::Generic );
  2         2  
  2         11  
17 2     2   142 use vars qw( $VERSION );
  2         4  
  2         118  
18 2     2   38 our( $VERSION ) = 'v0.101.0';
19             };
20              
21 2     2   12 use strict;
  2         4  
  2         40  
22 2     2   11 use warnings;
  2         5  
  2         1870  
23              
24 0     0 1   sub id { return( shift->_set_get_scalar( 'id', @_ ) ); }
25              
26 0     0 1   sub object { return( shift->_set_get_scalar( 'object', @_ ) ); }
27              
28             ## Moved as of 2019-02-19
29             # sub business_logo { return( shift->_set_get_scalar_or_object( 'business_logo', 'Net::API::Stripe::File', @_ ) ); }
30             # Thanks to Module::Generic _set_get_object feature, even if settings is not set this will not crash
31              
32 0     0 1   sub business_logo { return( shift->settings->branding->icon( @_ ) ); }
33              
34             ## Moved as of 2019-02-19
35             ## sub business_logo_large { return( shift->_set_get_scalar( 'business_logo_large', @_ ) ); }
36              
37 0     0 1   sub business_logo_large { return( shift->settings->branding->logo( @_ ) ); }
38              
39             ## Moved as of 2019-02-19
40             ## sub business_name { return( shift->_set_get_scalar( 'business_name', @_ ) ); }
41              
42 0     0 1   sub business_name { return( shift->business_profile->name( @_ ) ); }
43              
44             ## Moved as of 2019-02-19
45             ## sub business_primary_color { return( shift->_set_get_scalar( 'business_primary_color', @_ ) ); }
46              
47 0     0 1   sub business_primary_color { return( shift->settings->branding->primary_color( @_ ) ); }
48              
49 0     0 1   sub business_profile { return( shift->_set_get_object( 'business_profile', 'Net::API::Stripe::Connect::Business::Profile', @_ ) ); }
50              
51 0     0 1   sub business_type { return( shift->_set_get_scalar( 'business_type', @_ ) ); }
52              
53             ## Moved as of 2019-02-19
54             ## sub business_url { return( shift->_set_get_uri( 'business_url', @_ ) ); }
55              
56 0     0 1   sub business_url { return( shift->business_profile->url( @_ ) ); }
57              
58             ## This is a fake module (Net::API::Stripe::Connect::Account::Capabilities), but will allow the user to call the property as method of that module
59             ## sub capabilities { return( shift->_set_get_hash_as_object( 'capabilities', 'Net::API::Stripe::Connect::Account::Capabilities', @_ ) ); }
60              
61 0     0 1   sub capabilities { return( shift->_set_get_class( 'capabilities',
62             {
63             acss_debit_payments => { type => "scalar" },
64             affirm_payments => { type => "scalar" },
65             afterpay_clearpay_payments => { type => "scalar" },
66             au_becs_debit_payments => { type => "scalar" },
67             bacs_debit_payments => { type => "scalar" },
68             bancontact_payments => { type => "scalar" },
69             bank_transfer_payments => { type => "scalar" },
70             blik_payments => { type => "scalar" },
71             boleto_payments => { type => "scalar" },
72             card_issuing => { type => "scalar" },
73             card_payments => { type => "scalar" },
74             cartes_bancaires_payments => { type => "scalar" },
75             eps_payments => { type => "scalar" },
76             fpx_payments => { type => "scalar" },
77             giropay_payments => { type => "scalar" },
78             grabpay_payments => { type => "scalar" },
79             ideal_payments => { type => "scalar" },
80             jcb_payments => { type => "scalar" },
81             klarna_payments => { type => "scalar" },
82             konbini_payments => { type => "scalar" },
83             legacy_payments => { type => "scalar" },
84             link_payments => { type => "scalar" },
85             oxxo_payments => { type => "scalar" },
86             p24_payments => { type => "scalar" },
87             paynow_payments => { type => "scalar" },
88             promptpay_payments => { type => "scalar" },
89             sepa_debit_payments => { type => "scalar" },
90             sofort_payments => { type => "scalar" },
91             tax_reporting_us_1099_k => { type => "scalar" },
92             tax_reporting_us_1099_misc => { type => "scalar" },
93             transfers => { type => "scalar" },
94             us_bank_account_ach_payments => { type => "scalar" },
95             }, @_ ) ); }
96              
97 0     0 1   sub charges_enabled { return( shift->_set_get_boolean( 'charges_enabled', @_ ) ); }
98              
99 0     0 1   sub company { return( shift->_set_get_object( 'company', 'Net::API::Stripe::Connect::Account::Company', @_ ) ); }
100              
101 0     0 1   sub controller { return( shift->_set_get_class( 'controller',
102             {
103             is_controller => { type => "boolean" },
104             type => { type => "scalar" },
105             }, @_ ) ); }
106              
107 0     0 1   sub country { return( shift->_set_get_scalar( 'country', @_ ) ); }
108              
109 0     0 1   sub created { return( shift->_set_get_datetime( 'created', @_ ) ); }
110              
111             ## Moved as of 2019-02-19
112             # sub debit_negative_balances { return( shift->_set_get_scalar( 'debit_negative_balances', @_ ) ); }
113              
114 0     0 1   sub debit_negative_balances { return( shift->settings->payouts->debit_negative_balances( @_ ) ); }
115              
116             ## Moved as of 2019-02-19
117             # sub decline_charge_on { return( shift->_set_get_object( 'decline_charge_on', 'Net::API::Stripe::Connect::Account::DeclineChargeOn', @_ ) ); }
118              
119 0     0 1   sub decline_charge_on { return( shift->settings->card_payments->decline_on( @_ ) ); }
120              
121 0     0 1   sub default_currency { return( shift->_set_get_scalar( 'default_currency', @_ ) ); }
122              
123 0     0 1   sub details_submitted { return( shift->_set_get_boolean( 'details_submitted', @_ ) ); }
124              
125             ## Moved as of 2019-02-19
126             ## sub display_name { return( shift->_set_get_scalar( 'display_name', @_ ) ); }
127              
128 0     0 1   sub display_name { return( shift->settings->dashboard->display_name( @_ ) ); }
129              
130 0     0 1   sub email { return( shift->_set_get_scalar( 'email', @_ ) ); }
131              
132 0     0 1   sub external_accounts { return( shift->_set_get_object( 'external_accounts', 'Net::API::Stripe::Connect::Account::ExternalAccounts', @_ ) ); }
133              
134 0     0 1   sub future_requirements { return( shift->_set_get_object( 'future_requirements', 'Net::API::Stripe::Connect::Account::Requirements', @_ ) ); }
135              
136 0     0 1   sub individual { return( shift->_set_get_object( 'individual', 'Net::API::Stripe::Connect::Person', @_ ) ); }
137              
138 0     0 1   sub legal_entity { return( shift->_set_get_object( 'legal_entity', 'Net::API::Stripe::Connect::Account::LegalEntity', @_ ) ); }
139              
140 0     0 1   sub metadata { return( shift->_set_get_hash( 'metadata', @_ ) ); }
141              
142 0     0 1   sub payout_schedule { return( shift->settings->payouts->schedule( @_ ) ); }
143              
144             ## Moved as of 2019-02-19
145             ## sub payout_statement_descriptor { return( shift->_set_get_scalar( 'payout_statement_descriptor', @_ ) ); }
146              
147 0     0 1   sub payout_statement_descriptor { return( shift->settings->payouts->statement_descriptor( @_ ) ); }
148              
149             ## Moved as of 2019-02-19
150             ## sub product_description { return( shift->_set_get_scalar( 'product_description', @_ ) ); }
151              
152 0     0 1   sub payouts_enabled { return( shift->_set_get_boolean( 'payouts_enabled', @_ ) ); }
153              
154             ## Moved as of 2019-02-19
155             ## sub payout_schedule { return( shift->_set_get_object( 'payout_schedule', 'Net::API::Stripe::Connect::Account::PaymentSchedule', @_ ) ); }
156              
157 0     0 1   sub product_description { return( shift->business_profile->product_description( @_ ) ); }
158              
159 0     0 1   sub requirements { return( shift->_set_get_object( 'requirements', 'Net::API::Stripe::Connect::Account::Requirements', @_ ) ); }
160              
161 0     0 1   sub settings { return( shift->_set_get_object( 'settings', 'Net::API::Stripe::Connect::Account::Settings', @_ ) ); }
162              
163             ## Moved as of 2019-02-19
164             ## sub statement_descriptor { return( shift->_set_get_scalar( 'statement_descriptor', @_ ) ); }
165              
166 0     0 1   sub statement_descriptor { return( shift->settings->payments->statement_descriptor( @_ ) ); }
167              
168             ## Moved as of 2019-02-19
169             ## sub support_address { return( shift->_set_get_object( 'support_address', 'Net::API::Stripe::Address', @_ ) ); }
170              
171 0     0 1   sub support_address { return( shift->business_profile->support_address( @_ ) ); }
172              
173             ## Moved as of 2019-02-19
174             ## sub support_email { return( shift->_set_get_scalar( 'support_email', @_ ) ); }
175              
176 0     0 1   sub support_email { return( shift->business_profile->support_email( @_ ) ); }
177              
178             ## Moved as of 2019-02-19
179             ## sub support_phone { return( shift->_set_get_scalar( 'support_phone', @_ ) ); }
180              
181 0     0 1   sub support_phone { return( shift->business_profile->support_phone( @_ ) ); }
182              
183             ## Moved as of 2019-02-19
184             ## sub support_url { return( shift->_set_get_uri( 'support_url', @_ ) ); }
185              
186 0     0 1   sub support_url { return( shift->business_profile->support_url( @_ ) ); }
187              
188             ## Moved as of 2019-02-19
189             ## sub timezone { return( shift->_set_get_scalar( 'timezone', @_ ) ); }
190              
191 0     0 1   sub timezone { return( shift->settings->dashboard->timezone( @_ ) ); }
192              
193 0     0 1   sub tos_acceptance { return( shift->_set_get_object( 'tos_acceptance', 'Net::API::Stripe::Connect::Account::TosAcceptance', @_ ) ); }
194              
195             ## standard, express, or custom
196              
197 0     0 1   sub type { return( shift->_set_get_scalar( 'type', @_ ) ); }
198              
199             ## Not used anymore as of 2019-02-19
200              
201 0     0 1   sub verification { return( shift->_set_get_object( 'verification', 'Net::API::Stripe::Connect::Account::Verification', @_ ) ); }
202              
203             1;
204              
205             __END__
206              
207             =encoding utf8
208              
209             =head1 NAME
210              
211             Net::API::Stripe::Connect::Account - A Stripe Account Object
212              
213             =head1 SYNOPSIS
214              
215             my $acct = $stripe->account({
216             business_profile =>
217             {
218             logo => '/some/file/path/logo.jpg',
219             name => 'Big Corp, Inc',
220             },
221             settings =>
222             {
223             primary_color => 'blue',
224             dashboard => { display_name => 'Big Corp, Inc' },
225             },
226             business_type => 'company',
227             business_url => 'https://example.com',
228             charges_enabled => $stripe->true,
229             company => $company_object,
230             country => 'jp',
231             default_currency => 'jpy',
232             email => 'hello@example.com',
233             metadata => { transaction_id => 1212, customer_id => 123 },
234             });
235              
236             =head1 VERSION
237              
238             v0.101.0
239              
240             =head1 DESCRIPTION
241              
242             This is an object representing a Stripe account. You can retrieve it to see properties on the account like its current e-mail address or if the account is enabled yet to make live charges.
243              
244             Some properties, marked below, are available only to platforms that want to create and manage Express or Custom accounts (L<https://stripe.com/docs/connect/accounts>).
245              
246             =head1 CONSTRUCTOR
247              
248             =head2 new( %ARG )
249              
250             Creates a new L<Net::API::Stripe::Connect::Account> object.
251             It may also take an hash like arguments, that also are method of the same name.
252              
253             =head1 METHODS
254              
255             =head2 id string
256              
257             Unique identifier for the object.
258              
259             =head2 object string, value is "account"
260              
261             String representing the object’s type. Objects of the same type share the same value.
262              
263             =head2 business_logo
264              
265             This is outdated. It now points to B<business_profile>->B<icon>
266              
267             =head2 business_logo_large
268              
269             This is outdated. It now points to B<business_profile>->B<logo>
270              
271             =head2 business_name
272              
273             This is outdated. It now points to B<business_name>->B<name>
274              
275             =head2 business_primary_color
276              
277             This is outdated. It now points to B<settings>->B<primary_color>
278              
279             =head2 business_profile hash
280              
281             Optional information related to the business.
282              
283             This is a L<Net::API::Stripe::Business::Profile> object.
284              
285             =head2 business_type string
286              
287             The business type. Can be individual or company.
288              
289             =head2 business_url
290              
291             This is outdated. It now points to B<business_profile>->B<url>
292              
293             =head2 capabilities hash
294              
295             A hash containing the set of capabilities that was requested for this account and their associated states. Keys are names of capabilities. You can see the full list L<here|https://stripe.com/docs/api/capabilities/list>. Values may be C<active>, C<inactive>, or C<pending>.
296              
297             It has the following properties:
298              
299             =over 4
300              
301             =item C<acss_debit_payments> string
302              
303             The status of the Canadian pre-authorized debits payments capability of the account, or whether the account can directly process Canadian pre-authorized debits charges.
304              
305             =item C<affirm_payments> string
306              
307             The status of the Affirm capability of the account, or whether the account can directly process Affirm charges.
308              
309             =item C<afterpay_clearpay_payments> string
310              
311             The status of the Afterpay Clearpay capability of the account, or whether the account can directly process Afterpay Clearpay charges.
312              
313             =item C<au_becs_debit_payments> string
314              
315             The status of the BECS Direct Debit (AU) payments capability of the account, or whether the account can directly process BECS Direct Debit (AU) charges.
316              
317             =item C<bacs_debit_payments> string
318              
319             The status of the Bacs Direct Debits payments capability of the account, or whether the account can directly process Bacs Direct Debits charges.
320              
321             =item C<bancontact_payments> string
322              
323             The status of the Bancontact payments capability of the account, or whether the account can directly process Bancontact charges.
324              
325             =item C<bank_transfer_payments> string
326              
327             The status of the customerI<balance payments capability of the account, or whether the account can directly process customer>balance charges.
328              
329             =item C<blik_payments> string
330              
331             The status of the blik payments capability of the account, or whether the account can directly process blik charges.
332              
333             =item C<boleto_payments> string
334              
335             The status of the boleto payments capability of the account, or whether the account can directly process boleto charges.
336              
337             =item C<card_issuing> string
338              
339             The status of the card issuing capability of the account, or whether you can use Issuing to distribute funds on cards
340              
341             =item C<card_payments> string
342              
343             The status of the card payments capability of the account, or whether the account can directly process credit and debit card charges.
344              
345             =item C<cartes_bancaires_payments> string
346              
347             The status of the Cartes Bancaires payments capability of the account, or whether the account can directly process Cartes Bancaires card charges in EUR currency.
348              
349             =item C<eps_payments> string
350              
351             The status of the EPS payments capability of the account, or whether the account can directly process EPS charges.
352              
353             =item C<fpx_payments> string
354              
355             The status of the FPX payments capability of the account, or whether the account can directly process FPX charges.
356              
357             =item C<giropay_payments> string
358              
359             The status of the giropay payments capability of the account, or whether the account can directly process giropay charges.
360              
361             =item C<grabpay_payments> string
362              
363             The status of the GrabPay payments capability of the account, or whether the account can directly process GrabPay charges.
364              
365             =item C<ideal_payments> string
366              
367             The status of the iDEAL payments capability of the account, or whether the account can directly process iDEAL charges.
368              
369             =item C<jcb_payments> string
370              
371             The status of the JCB payments capability of the account, or whether the account (Japan only) can directly process JCB credit card charges in JPY currency.
372              
373             =item C<klarna_payments> string
374              
375             The status of the Klarna payments capability of the account, or whether the account can directly process Klarna charges.
376              
377             =item C<konbini_payments> string
378              
379             The status of the konbini payments capability of the account, or whether the account can directly process konbini charges.
380              
381             =item C<legacy_payments> string
382              
383             The status of the legacy payments capability of the account.
384              
385             =item C<link_payments> string
386              
387             The status of the link_payments capability of the account, or whether the account can directly process Link charges.
388              
389             =item C<oxxo_payments> string
390              
391             The status of the OXXO payments capability of the account, or whether the account can directly process OXXO charges.
392              
393             =item C<p24_payments> string
394              
395             The status of the P24 payments capability of the account, or whether the account can directly process P24 charges.
396              
397             =item C<paynow_payments> string
398              
399             The status of the paynow payments capability of the account, or whether the account can directly process paynow charges.
400              
401             =item C<promptpay_payments> string
402              
403             The status of the promptpay payments capability of the account, or whether the account can directly process promptpay charges.
404              
405             =item C<sepa_debit_payments> string
406              
407             The status of the SEPA Direct Debits payments capability of the account, or whether the account can directly process SEPA Direct Debits charges.
408              
409             =item C<sofort_payments> string
410              
411             The status of the Sofort payments capability of the account, or whether the account can directly process Sofort charges.
412              
413             =item C<tax_reporting_us_1099_k> string
414              
415             The status of the tax reporting 1099-K (US) capability of the account.
416              
417             =item C<tax_reporting_us_1099_misc> string
418              
419             The status of the tax reporting 1099-MISC (US) capability of the account.
420              
421             =item C<transfers> string
422              
423             The status of the transfers capability of the account, or whether your platform can transfer funds to the account.
424              
425             =item C<us_bank_account_ach_payments> string
426              
427             The status of the US bank account ACH payments capability of the account, or whether the account can directly process US bank account charges.
428              
429             =back
430              
431             =head2 charges_enabled boolean
432              
433             Whether the account can create live charges.
434              
435             =head2 company custom only hash
436              
437             Information about the company or business. This field is null unless business_type is set to company.
438              
439             This is a L<Net::API::Stripe::Connect::Account::Company> object.
440              
441             =head2 controller hash
442              
443             The controller of the account.
444              
445             It has the following properties:
446              
447             =over 4
448              
449             =item C<is_controller> boolean
450              
451             C<true> if the Connect application retrieving the resource controls the account and can therefore exercise L<platform controls|https://stripe.com/docs/connect/platform-controls-for-standard-accounts>. Otherwise, this field is null.
452              
453             =item C<type> string
454              
455             The controller type. Can be C<application>, if a Connect application controls the account, or C<account>, if the account controls itself.
456              
457             =back
458              
459             =head2 country string
460              
461             The account’s country.
462              
463             =head2 created custom and express timestamp
464              
465             Time at which the object was created. Measured in seconds since the Unix epoch. This is a C<DateTime> object.
466              
467             =head2 debit_negative_balances
468              
469             This is outdated. It now points to B<settings>->B<payouts>->B<debit_negative_balances>
470              
471             =head2 decline_charge_on
472              
473             This is outdated. It now points to B<settings>->B<card_payments>->B<decline_on>
474              
475             =head2 default_currency string
476              
477             Three-letter ISO currency code representing the default currency for the account. This must be a currency that Stripe supports in the account’s country.
478              
479             =head2 details_submitted boolean
480              
481             Whether account details have been submitted. Standard accounts cannot receive payouts before this is true.
482              
483             =head2 display_name
484              
485             This is outdated. It now points to B<settings>->B<dashboard>->B<display_name>
486              
487             =head2 email string
488              
489             The primary user’s email address.
490              
491             =head2 external_accounts custom and express list
492              
493             External accounts (bank accounts and debit cards) currently attached to this account
494              
495             This is a L<Net::API::Stripe::Connect::Account::ExternalAccounts> object.
496              
497             =head2 future_requirements object
498              
499             Information about the upcoming new requirements for the account, including what information needs to be collected, and by when.
500              
501             This is a L<Net::API::Stripe::Connect::Account::Requirements> object.
502              
503             =head2 individual custom only hash
504              
505             Information about the person represented by the account. This field is null unless business_type is set to individual.
506              
507             This is a L<Net::API::Stripe::Connect::Person> object.
508              
509             =head2 legal_entity
510              
511             This is outdated. Stripe now uses a L<Net::API::Stripe::Connect::Account::Company> object and a L<Net::API::Stripe::Connect::Person> object.
512              
513             =head2 metadata hash
514              
515             Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
516              
517             =head2 payout_schedule
518              
519             This is outdated. It now points to B<settings>->B<payouts>->B<schedule>
520              
521             =head2 payout_statement_descriptor
522              
523             This is outdated. It now points to B<settings>->B<payouts>->B<statement_descriptor>
524              
525             =head2 payouts_enabled boolean
526              
527             Whether Stripe can send payouts to this account.
528              
529             =head2 product_description
530              
531             This is outdated. It now points to B<business_profile>->B<product_description>
532              
533             =head2 requirements custom and express hash
534              
535             Information about the requirements for the account, including what information needs to be collected, and by when.
536              
537             This is a L<Net::API::Stripe::Connect::Account::Requirements> object.
538              
539             =head2 settings hash
540              
541             Options for customizing how the account functions within Stripe.
542              
543             This is a L<Net::API::Stripe::Connect::Account::Settings> object.
544              
545             =head2 statement_descriptor
546              
547             This is outdated. It now points to B<settings>->B<payments>->B<statement_descriptor>
548              
549             =head2 support_address
550              
551             This is outdated. It now points to B<business_profile>->B<support_address>
552              
553             =head2 support_email
554              
555             This is outdated. It now points to B<business_profile>->B<support_email>
556              
557             =head2 support_phone
558              
559             This is outdated. It now points to B<business_profile>->B<support_phone>
560              
561             =head2 support_url
562              
563             This is outdated. It now points to B<business_profile>->B<support_url>
564              
565             =head2 timezone
566              
567             This is outdated. It is a C<DateTime> object.
568              
569             =head2 tos_acceptance custom only hash
570              
571             Details on the acceptance of the Stripe Services Agreement
572              
573             This is a L<Net::API::Stripe::Connect::Account::TosAcceptance> object.
574              
575             =head2 type string
576              
577             The Stripe account type. Can be standard, express, or custom.
578              
579             =head2 verification
580              
581             This is outdated. It is a L<Net::API::Stripe::Connect::Account::Verification> object.
582              
583             =head1 API SAMPLE
584              
585             =head2 Response Standard
586              
587             {
588             "id": "acct_fake123456789",
589             "object": "account",
590             "business_profile": {
591             "mcc": null,
592             "name": "My Shop, Inc",
593             "product_description": "Great products shipping all over the world",
594             "support_address": {
595             "city": "Tokyo",
596             "country": "JP",
597             "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
598             "line2": "",
599             "postal_code": "100-0012",
600             "state": ""
601             },
602             "support_email": "billing@example.com",
603             "support_phone": "+81312345678",
604             "support_url": "",
605             "url": "https://www.example.com"
606             },
607             "business_type": "company",
608             "capabilities": {
609             "card_payments": "active"
610             },
611             "charges_enabled": true,
612             "country": "JP",
613             "default_currency": "jpy",
614             "details_submitted": true,
615             "email": "tech@example.com",
616             "metadata": {},
617             "payouts_enabled": true,
618             "settings": {
619             "branding": {
620             "icon": "file_fake123456789",
621             "logo": null,
622             "primary_color": "#0e77ca"
623             },
624             "card_payments": {
625             "decline_on": {
626             "avs_failure": false,
627             "cvc_failure": false
628             },
629             "statement_descriptor_prefix": null
630             },
631             "dashboard": {
632             "display_name": "myshop-inc",
633             "timezone": "Asia/Tokyo"
634             },
635             "payments": {
636             "statement_descriptor": "MYSHOP, INC",
637             "statement_descriptor_kana": "マイショップインク",
638             "statement_descriptor_kanji": "マイショップインク"
639             },
640             "payouts": {
641             "debit_negative_balances": true,
642             "schedule": {
643             "delay_days": 4,
644             "interval": "weekly",
645             "weekly_anchor": "thursday"
646             },
647             "statement_descriptor": null
648             }
649             },
650             "type": "standard"
651             }
652              
653             =head2 Response Express
654              
655             {
656             "id": "acct_19eGgRCeyNCl6xYZ",
657             "object": "account",
658             "business_profile": {
659             "mcc": null,
660             "name": "MyShop, Inc",
661             "product_description": "Great products shipping all over the world",
662             "support_address": {
663             "city": "Tokyo",
664             "country": "JP",
665             "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
666             "line2": "",
667             "postal_code": "100-0012",
668             "state": ""
669             },
670             "support_email": "billing@example.com",
671             "support_phone": "+81312345678",
672             "support_url": "",
673             "url": "https://www.example.com"
674             },
675             "business_type": "company",
676             "capabilities": {
677             "card_payments": "active"
678             },
679             "charges_enabled": true,
680             "country": "JP",
681             "created": 1484973659,
682             "default_currency": "jpy",
683             "details_submitted": true,
684             "email": "tech@example.com",
685             "external_accounts": {
686             "object": "list",
687             "data": [
688             {
689             "id": "ba_19eGy1CeyNCl6fY2R3ACmqG4",
690             "object": "bank_account",
691             "account": "acct_19eGgRCeyNCl6xYZ",
692             "account_holder_name": "カ)マイショップインク",
693             "account_holder_type": null,
694             "bank_name": "三井住友銀行",
695             "country": "JP",
696             "currency": "jpy",
697             "default_for_currency": true,
698             "fingerprint": "VWINqgzE0zu5x1ab",
699             "last4": "1234",
700             "metadata": {},
701             "routing_number": "0009218",
702             "status": "new"
703             }
704             ],
705             "has_more": false,
706             "url": "/v1/accounts/acct_19eGgRCeyNCl6xYZ/external_accounts"
707             },
708             "metadata": {},
709             "payouts_enabled": true,
710             "requirements": {
711             "current_deadline": null,
712             "currently_due": [],
713             "disabled_reason": null,
714             "eventually_due": [],
715             "past_due": [],
716             "pending_verification": []
717             },
718             "settings": {
719             "branding": {
720             "icon": "file_1DLf5rCeyNCl6fY2kS4e1xyz",
721             "logo": null,
722             "primary_color": "#0e77ca"
723             },
724             "card_payments": {
725             "decline_on": {
726             "avs_failure": false,
727             "cvc_failure": false
728             },
729             "statement_descriptor_prefix": null
730             },
731             "dashboard": {
732             "display_name": "myshop-inc",
733             "timezone": "Asia/Tokyo"
734             },
735             "payments": {
736             "statement_descriptor": "MYSHOP, INC",
737             "statement_descriptor_kana": "マイショップインク",
738             "statement_descriptor_kanji": "マイショップインク"
739             },
740             "payouts": {
741             "debit_negative_balances": true,
742             "schedule": {
743             "delay_days": 4,
744             "interval": "weekly",
745             "weekly_anchor": "thursday"
746             },
747             "statement_descriptor": null
748             }
749             },
750             "type": "express"
751             }
752              
753             =head2 Response Custom
754              
755             {
756             "id": "acct_19eGgRCeyNCl6xYZ",
757             "object": "account",
758             "business_profile": {
759             "mcc": null,
760             "name": "MyShop, Inc",
761             "product_description": "Great products shipping all over the world",
762             "support_address": {
763             "city": "Tokyo",
764             "country": "JP",
765             "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
766             "line2": "",
767             "postal_code": "100-0012",
768             "state": ""
769             },
770             "support_email": "billing@example.com",
771             "support_phone": "+81312345678",
772             "support_url": "",
773             "url": "https://www.example.com"
774             },
775             "business_type": "company",
776             "capabilities": {
777             "card_payments": "active"
778             },
779             "charges_enabled": true,
780             "company": {
781             "address_kana": {
782             "city": "チヨダク",
783             "country": "JP",
784             "line1": "2-3",
785             "line2": "ナシ",
786             "postal_code": null,
787             "state": null,
788             "town": "クダンミナミ1"
789             },
790             "address_kanji": {
791             "city": "千代田区",
792             "country": "JP",
793             "line1": "",
794             "line2": "",
795             "postal_code": null,
796             "state": null,
797             "town": "九段南1-2-3"
798             },
799             "directors_provided": false,
800             "name": "MyShop, Inc",
801             "name_kana": "カブシキカイシャマイショップインク",
802             "name_kanji": "株式会社マイショップインク",
803             "owners_provided": true,
804             "phone": null,
805             "tax_id_provided": true,
806             "verification": {
807             "document": {
808             "back": null,
809             "details": null,
810             "details_code": null,
811             "front": null
812             }
813             }
814             },
815             "country": "JP",
816             "created": 1484973659,
817             "default_currency": "jpy",
818             "details_submitted": true,
819             "email": "tech@example.com",
820             "external_accounts": {
821             "object": "list",
822             "data": [
823             {
824             "id": "ba_19eGy1CeyNCl6fY2R3ACmqG4",
825             "object": "bank_account",
826             "account": "acct_19eGgRCeyNCl6xYZ",
827             "account_holder_name": "カ)マイショップインク",
828             "account_holder_type": null,
829             "bank_name": "三井住友銀行",
830             "country": "JP",
831             "currency": "jpy",
832             "default_for_currency": true,
833             "fingerprint": "VkINqgzE0zu5x1xw",
834             "last4": "2235",
835             "metadata": {},
836             "routing_number": "0009218",
837             "status": "new"
838             }
839             ],
840             "has_more": false,
841             "url": "/v1/accounts/acct_19eGgRCeyNCl6xYZ/external_accounts"
842             },
843             "metadata": {},
844             "payouts_enabled": true,
845             "requirements": {
846             "current_deadline": null,
847             "currently_due": [],
848             "disabled_reason": null,
849             "eventually_due": [],
850             "past_due": [],
851             "pending_verification": []
852             },
853             "settings": {
854             "branding": {
855             "icon": "file_1DLf5rCeyabl6fY2kS4e5xyz",
856             "logo": null,
857             "primary_color": "#0e77ca"
858             },
859             "card_payments": {
860             "decline_on": {
861             "avs_failure": false,
862             "cvc_failure": false
863             },
864             "statement_descriptor_prefix": null
865             },
866             "dashboard": {
867             "display_name": "myshop-inc",
868             "timezone": "Asia/Tokyo"
869             },
870             "payments": {
871             "statement_descriptor": "MYSHOP, IN",
872             "statement_descriptor_kana": "マイショップインク",
873             "statement_descriptor_kanji": "マイショップインク"
874             },
875             "payouts": {
876             "debit_negative_balances": true,
877             "schedule": {
878             "delay_days": 4,
879             "interval": "weekly",
880             "weekly_anchor": "thursday"
881             },
882             "statement_descriptor": null
883             }
884             },
885             "tos_acceptance": {
886             "date": 1484979187,
887             "ip": "114.17.230.189",
888             "user_agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36"
889             },
890             "type": "custom"
891             }
892              
893             =head1 HISTORY
894              
895             =head2 v0.1
896              
897             Initial version
898              
899             =head1 STRIPE HISTORY
900              
901             =head2 2019-02-19
902              
903             Statement descriptor behaviors for card payments created via /v1/charges have changed. See L<Stripe statement descriptor guide|https://stripe.com/docs/statement-descriptors> for details.
904              
905             =over 4
906              
907             =item * Instead of using the platform's statement descriptor, charges created with on_behalf_of or destination will now use the descriptor of the connected account.
908              
909             ~item * The full statement descriptor for a card payment may no longer be provided at charge creation. Dynamic descriptors provided at charge time will now be prefixed by the descriptor prefix set in the dashboard or via the new settings[card_payments][statement_descriptor_prefix] parameter in the Accounts API.
910              
911             =item * If an account has no statement_descriptor set, the account's business or legal name will be used as statement descriptor.
912              
913             =item * Statement descriptors may no longer contain *, ', and ".
914              
915             =back
916              
917             =head2 2019-02-19
918              
919             Many properties on the Account API object have been reworked. To see a mapping of the old argument names to the new ones, see Accounts API Argument Changes.
920              
921             =over 4
922              
923             =item * The legal_entity property on the Account API resource has been replaced with individual, company, and business_type.
924              
925             =item * The verification hash has been replaced with a requirements hash.
926              
927             =over 4
928              
929             =item * The verification[fields_needed] array has been replaced with three arrays to better represent when info is required: requirements[eventually_due], requirements[currently_due], and requirements[past_due].
930              
931             =item * verification[due_by] has been renamed to requirements[current_deadline].
932              
933             =item * The disabled_reason enum value of fields_needed has been renamed to requirements.past_due.
934              
935             =back
936              
937             =item * Properties on the Account API object that configure behavior within Stripe have been moved into the new settings hash.
938              
939             =over 4
940              
941             =item * The payout_schedule, payout_statement_descriptor and debit_negative_balances fields have been moved to settings[payouts] and renamed to schedule, statement_descriptor and debit_negative_balances.
942              
943             =item * The statement_descriptor field has been moved to settings[payments][statement_descriptor].
944              
945             =item * The decline_charge_on fields have been moved to settings[card_payments] and renamed to decline_on.
946              
947             =item * The business_logo, business_logo_large and business_primary_color fields have been moved to settings[branding] and renamed to icon, logo and primary_color. The icon field additionally requires the uploaded image file to be square.
948              
949             =item * The display_name and timezone fields have been moved to settings[dashboard].
950              
951             =back
952              
953             =item * business_name, business_url, product_description, support_address, support_email, support_phone and support_url have been moved to the business_profile subhash.
954              
955             =item * The legal_entity[verification][document] property (now located at individual[verification] and at verification in the Person API object) has been changed to a hash.
956              
957             =over 4
958              
959             =item * The front and back fields support uploading both sides of documents.
960              
961             =item * The details_code field has new error types: document_corrupt, document_failed_copy, document_failed_greyscale, document_failed_other, document_failed_test_mode, document_fraudulent, document_id_country_not_supported, document_id_type_not_supported, document_invalid, document_manipulated, document_missing_back, document_missing_front, document_not_readable, document_not_uploaded, document_photo_mismatch, and document_too_large.
962              
963             =item * The keys property on Account creation has been removed. Platforms should now authenticate as their connected accounts with their own key via the Stripe-Account header.
964              
965             =item * Starting with the 2019-02-19 API, the requested_capabilities property is now required at creation time for accounts in the U.S. See the Capabilities Overview for more information.
966              
967             =back
968              
969             =back
970              
971             =head2 2017-05-25
972              
973             Replaces the managed Boolean property on Account objects with type, whose possible values are: standard, express, and custom. A managed value is required when creating accounts.
974              
975             =head1 AUTHOR
976              
977             Jacques Deguest E<lt>F<jack@deguest.jp>E<gt>
978              
979             =head1 SEE ALSO
980              
981             Stripe API documentation:
982              
983             L<https://stripe.com/docs/api>
984              
985             =head1 COPYRIGHT & LICENSE
986              
987             Copyright (c) 2019-2020 DEGUEST Pte. Ltd.
988              
989             You can use, copy, modify and redistribute this package and associated
990             files under the same terms as Perl itself.
991              
992             =cut