File Coverage

lib/Net/API/Stripe/Connect/Account/Company.pm
Criterion Covered Total %
statement 19 37 51.3
branch n/a
condition n/a
subroutine 7 25 28.0
pod 18 18 100.0
total 44 80 55.0


line stmt bran cond sub pod time code
1             ##----------------------------------------------------------------------------
2             ## Stripe API - ~/lib/Net/API/Stripe/Connect/Account/Company.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             package Net::API::Stripe::Connect::Account::Company;
11             BEGIN
12             {
13 2     2   21197185 use strict;
  2         13  
  2         62  
14 2     2   10 use warnings;
  2         5  
  2         58  
15 2     2   9 use parent qw( Net::API::Stripe::Generic );
  2         4  
  2         11  
16 2     2   157 use vars qw( $VERSION );
  2         6  
  2         120  
17 2     2   40 our( $VERSION ) = 'v0.101.0';
18             };
19              
20 2     2   14 use strict;
  2         3  
  2         38  
21 2     2   13 use warnings;
  2         3  
  2         753  
22              
23 0     0 1   sub additional { return( shift->_set_get_array( 'additional', @_ ) ); }
24              
25 0     0 1   sub address { return( shift->_set_get_object( 'address', 'Net::API::Stripe::Address', @_ ) ); }
26              
27 0     0 1   sub address_kana { return( shift->_set_get_object( 'address_kana', 'Net::API::Stripe::AddressKana', @_ ) ); }
28              
29 0     0 1   sub address_kanji { return( shift->_set_get_object( 'address_kanji', 'Net::API::Stripe::AddressKanji', @_ ) ); }
30              
31 0     0 1   sub directors_provided { return( shift->_set_get_scalar( 'directors_provided', @_ ) ); }
32              
33 0     0 1   sub executives_provided { return( shift->_set_get_boolean( 'executives_provided', @_ ) ); }
34              
35 0     0 1   sub minimum { return( shift->_set_get_array( 'minimum', @_ ) ); }
36              
37 0     0 1   sub name { return( shift->_set_get_scalar( 'name', @_ ) ); }
38              
39 0     0 1   sub name_kana { return( shift->_set_get_scalar( 'name_kana', @_ ) ); }
40              
41 0     0 1   sub name_kanji { return( shift->_set_get_scalar( 'name_kanji', @_ ) ); }
42              
43 0     0 1   sub owners_provided { return( shift->_set_get_scalar( 'owners_provided', @_ ) ); }
44              
45 0     0 1   sub ownership_declaration { return( shift->_set_get_object( 'ownership_declaration', 'Net::API::Stripe::Connect::Account::TosAcceptance', @_ ) ); }
46              
47 0     0 1   sub phone { return( shift->_set_get_scalar( 'phone', @_ ) ); }
48              
49 0     0 1   sub structure { return( shift->_set_get_scalar( 'structure', @_ ) ); }
50              
51 0     0 1   sub tax_id_provided { return( shift->_set_get_scalar( 'tax_id_provided', @_ ) ); }
52              
53 0     0 1   sub tax_id_registrar { return( shift->_set_get_scalar( 'tax_id_registrar', @_ ) ); }
54              
55 0     0 1   sub vat_id_provided { return( shift->_set_get_scalar( 'owners_provided', @_ ) ); }
56              
57 0     0 1   sub verification { return( shift->_set_get_object( 'verification', 'Net::API::Stripe::Connect::Account::Verification', @_ ) ); }
58              
59             1;
60              
61             __END__
62              
63             =encoding utf8
64              
65             =head1 NAME
66              
67             Net::API::Stripe::Connect::Account::Company - A Stripe Company Object
68              
69             =head1 SYNOPSIS
70              
71             my $cie = $stripe->account->company({
72             address => $stripe->address({
73             line1 => '1-2-3 Kudan-Minami, Chiyoda-ku',
74             line2 => 'Big Bldg 12F',
75             city => 'Tokyo',
76             postal_code => '123-4567',
77             country => 'jp',
78             }),
79             address_kana => $stripe->address({
80             line1 => 'ちよだくくだんみなみ1-2-3',
81             line2 => 'だいびる12かい',
82             city => 'とうきょうと',
83             postal_code => '123-4567',
84             country => 'jp',
85             }),
86             address_kanji => $stripe->address({
87             line1 => '千代田区九段南1-2-3',
88             line2 => '大ビル12階',
89             city => '東京都',
90             postal_code => '123-4567',
91             country => 'jp',
92             }),
93             name => 'Yamato Nadehiko, Inc',
94             name_kana => 'やまとなでひこかぶしきがいしゃ',
95             name_kanji => '大和撫子株式会社',
96             phone => '+81-(0)3-1234-5678',
97             structure => 'private_corporation',
98             });
99              
100             =head1 VERSION
101              
102             v0.101.0
103              
104             =head1 DESCRIPTION
105              
106             Settings used to apply the account’s branding to email receipts, invoices, Checkout, and other products.
107              
108             This is called from method B<company> in modules L<Net::API::Stripe::Connect::Account> and L<Net::API::Stripe::Issuing::Card::Holder>
109              
110             =head1 CONSTRUCTOR
111              
112             =head2 new( %ARG )
113              
114             Creates a new L<Net::API::Stripe::Connect::Account::Company> object.
115             It may also take an hash like arguments, that also are method of the same name.
116              
117             =head1 METHODS
118              
119             =head2 additional string_array
120              
121             Additional fields which are only required for some users.
122              
123             =head2 address hash
124              
125             The company’s primary address.
126              
127             This is a L<Net::API::Stripe::Address> object.
128              
129             =head2 address_kana hash
130              
131             The Kana variation of the company’s primary address (Japan only).
132              
133             This is a L<Net::API::Stripe::Address> object.
134              
135             =head2 address_kanji hash
136              
137             The Kanji variation of the company’s primary address (Japan only).
138              
139             This is a L<Net::API::Stripe::Address> object.
140              
141             =head2 directors_provided boolean
142              
143             Whether the company’s directors have been provided. This Boolean will be true if you’ve manually indicated that all directors are provided via the directors_provided parameter.
144              
145             =head2 executives_provided boolean
146              
147             Whether the company’s executives have been provided. This Boolean will be true if you’ve manually indicated that all executives are provided via the executives_provided parameter, or if Stripe determined that sufficient executives were provided.
148              
149             =head2 minimum string_array
150              
151             Fields which every account must eventually provide.
152              
153             =head2 name string
154              
155             The company’s legal name.
156              
157             =head2 name_kana string
158              
159             The Kana variation of the company’s legal name (Japan only).
160              
161             =head2 name_kanji string
162              
163             The Kanji variation of the company’s legal name (Japan only).
164              
165             =head2 owners_provided boolean
166              
167             Whether the company’s owners have been provided. This Boolean will be true if you’ve manually indicated that all owners are provided via the owners_provided parameter, or if Stripe determined that all owners were provided. Stripe determines ownership requirements using both the number of owners provided and their total percent ownership (calculated by adding the percent_ownership of each owner together).
168              
169             =head2 ownership_declaration object
170              
171             This hash is used to attest that the beneficial owner information provided to Stripe is both current and correct.
172              
173             This is a L<Net::API::Stripe::Connect::Account::TosAcceptance> object.
174              
175             =head2 phone string
176              
177             The company’s phone number (used for verification).
178              
179             =head2 structure string
180              
181             The category identifying the legal structure of the company or legal entity. See Business structure for more details (L<https://stripe.com/docs/connect/identity-verification#business-structure>).
182              
183             Possible enum values
184              
185             =over 4
186              
187             =item government_instrumentality
188              
189             =item governmental_unit
190              
191             =item incorporated_non_profit
192              
193             =item multi_member_llc
194              
195             =item private_corporation
196              
197             =item private_partnership
198              
199             =item public_corporation
200              
201             =item public_partnership
202              
203             =item tax_exempt_government_instrumentality
204              
205             =item unincorporated_association
206              
207             =item unincorporated_non_profit
208              
209             =back
210              
211             =head2 tax_id_provided boolean
212              
213             Whether the company’s business ID number was provided.
214              
215             =head2 tax_id_registrar string
216              
217             The jurisdiction in which the tax_id is registered (Germany-based companies only).
218              
219             =head2 vat_id_provided boolean
220              
221             Whether the company’s business VAT number was provided.
222              
223             =head2 verification hash
224              
225             Information on the verification state of the company. This is a L<Net::API::Stripe::Connect::Account::Verification> object.
226              
227             =head1 API SAMPLE
228              
229             {
230             "id": "acct_fake123456789",
231             "object": "account",
232             "business_profile": {
233             "mcc": null,
234             "name": "My Shop, Inc",
235             "product_description": "Great products shipping all over the world",
236             "support_address": {
237             "city": "Tokyo",
238             "country": "JP",
239             "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
240             "line2": "",
241             "postal_code": "100-0012",
242             "state": ""
243             },
244             "support_email": "billing@example.com",
245             "support_phone": "+81312345678",
246             "support_url": "",
247             "url": "https://www.example.com"
248             },
249             "business_type": "company",
250             "capabilities": {
251             "card_payments": "active"
252             },
253             "charges_enabled": true,
254             "country": "JP",
255             "default_currency": "jpy",
256             "details_submitted": true,
257             "email": "tech@example.com",
258             "metadata": {},
259             "payouts_enabled": true,
260             "settings": {
261             "branding": {
262             "icon": "file_fake123456789",
263             "logo": null,
264             "primary_color": "#0e77ca"
265             },
266             "card_payments": {
267             "decline_on": {
268             "avs_failure": false,
269             "cvc_failure": false
270             },
271             "statement_descriptor_prefix": null
272             },
273             "dashboard": {
274             "display_name": "myshop-inc",
275             "timezone": "Asia/Tokyo"
276             },
277             "payments": {
278             "statement_descriptor": "MYSHOP, INC",
279             "statement_descriptor_kana": "マイショップインク",
280             "statement_descriptor_kanji": "マイショップインク"
281             },
282             "payouts": {
283             "debit_negative_balances": true,
284             "schedule": {
285             "delay_days": 4,
286             "interval": "weekly",
287             "weekly_anchor": "thursday"
288             },
289             "statement_descriptor": null
290             }
291             },
292             "type": "standard"
293             }
294              
295             =head1 HISTORY
296              
297             =head2 v0.1
298              
299             Initial version
300              
301             =head1 STRIPE HISTORY
302              
303             =head2 2019-12-24
304              
305             Stripe added the B<executives_provided> property.
306              
307             =head1 AUTHOR
308              
309             Jacques Deguest E<lt>F<jack@deguest.jp>E<gt>
310              
311             =head1 SEE ALSO
312              
313             Stripe API documentation:
314              
315             L<https://stripe.com/docs/api/accounts/object>
316              
317             =head1 COPYRIGHT & LICENSE
318              
319             Copyright (c) 2019-2020 DEGUEST Pte. Ltd.
320              
321             You can use, copy, modify and redistribute this package and associated
322             files under the same terms as Perl itself.
323              
324             =cut