line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
##---------------------------------------------------------------------------- |
2
|
|
|
|
|
|
|
## Stripe API - ~/lib/Net/API/Stripe/Payment/Source.pm |
3
|
|
|
|
|
|
|
## Version v0.100.0 |
4
|
|
|
|
|
|
|
## Copyright(c) 2019 DEGUEST Pte. Ltd. |
5
|
|
|
|
|
|
|
## Author: Jacques Deguest <@sitael.tokyo.deguest.jp> |
6
|
|
|
|
|
|
|
## Created 2019/11/02 |
7
|
|
|
|
|
|
|
## Modified 2020/05/15 |
8
|
|
|
|
|
|
|
## |
9
|
|
|
|
|
|
|
##---------------------------------------------------------------------------- |
10
|
|
|
|
|
|
|
## https://stripe.com/docs/api/sources/object |
11
|
|
|
|
|
|
|
package Net::API::Stripe::Payment::Source; |
12
|
|
|
|
|
|
|
BEGIN |
13
|
|
|
|
|
|
|
{ |
14
|
1
|
|
|
1
|
|
887
|
use strict; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
27
|
|
15
|
1
|
|
|
1
|
|
5
|
use parent qw( Net::API::Stripe::Generic ); |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
4
|
|
16
|
1
|
|
|
1
|
|
1610
|
our( $VERSION ) = 'v0.100.0'; |
17
|
|
|
|
|
|
|
}; |
18
|
|
|
|
|
|
|
|
19
|
0
|
|
|
0
|
1
|
|
sub id { return( shift->_set_get_scalar( 'id', @_ ) ); } |
20
|
|
|
|
|
|
|
|
21
|
0
|
|
|
0
|
1
|
|
sub object { return( shift->_set_get_scalar( 'object', @_ ) ); } |
22
|
|
|
|
|
|
|
|
23
|
0
|
|
|
0
|
1
|
|
sub ach_credit_transfer { return( shift->_set_get_object( 'ach_credit_transfer', 'Net::API::Stripe::Payment::Source::ACHCreditTransfer', @_ ) ); } |
24
|
|
|
|
|
|
|
|
25
|
0
|
|
|
0
|
1
|
|
sub ach_debit { return( shift->_set_get_object( 'ach_debit', 'Net::API::Stripe::Payment::Source::ACHDebit', @_ ) ); } |
26
|
|
|
|
|
|
|
|
27
|
0
|
|
|
0
|
1
|
|
sub account { return( shift->_set_get_scalar_or_object( 'account', 'Net::API::Stripe::Connect::Account', @_ ) ); } |
28
|
|
|
|
|
|
|
|
29
|
0
|
|
|
0
|
1
|
|
sub account_holder_name { return( shift->_set_get_scalar( 'account_holder_name', @_ ) ); } |
30
|
|
|
|
|
|
|
|
31
|
0
|
|
|
0
|
1
|
|
sub account_holder_type { return( shift->_set_get_scalar( 'account_holder_type', @_ ) ); } |
32
|
|
|
|
|
|
|
|
33
|
0
|
|
|
0
|
1
|
|
sub active { return( shift->_set_get_scalar( 'active', @_ ) ); } |
34
|
|
|
|
|
|
|
|
35
|
0
|
|
|
0
|
1
|
|
sub address { return( shift->_address_populate( @_ ) ); } |
36
|
|
|
|
|
|
|
|
37
|
0
|
|
|
0
|
1
|
|
sub address_city { return( shift->_set_get_scalar( 'address_city', @_ ) ); } |
38
|
|
|
|
|
|
|
|
39
|
0
|
|
|
0
|
1
|
|
sub address_country { return( shift->_set_get_scalar( 'address_country', @_ ) ); } |
40
|
|
|
|
|
|
|
|
41
|
0
|
|
|
0
|
1
|
|
sub address_line1 { return( shift->_set_get_scalar( 'address_line1', @_ ) ); } |
42
|
|
|
|
|
|
|
|
43
|
0
|
|
|
0
|
1
|
|
sub address_line1_check { return( shift->_set_get_scalar( 'address_line1_check', @_ ) ); } |
44
|
|
|
|
|
|
|
|
45
|
0
|
|
|
0
|
1
|
|
sub address_line2 { return( shift->_set_get_scalar( 'address_line2', @_ ) ); } |
46
|
|
|
|
|
|
|
|
47
|
0
|
|
|
0
|
1
|
|
sub address_state { return( shift->_set_get_scalar( 'address_state', @_ ) ); } |
48
|
|
|
|
|
|
|
|
49
|
0
|
|
|
0
|
1
|
|
sub address_zip { return( shift->_set_get_scalar( 'address_zip', @_ ) ); } |
50
|
|
|
|
|
|
|
|
51
|
0
|
|
|
0
|
1
|
|
sub address_zip_check { return( shift->_set_get_scalar( 'address_zip_check', @_ ) ); } |
52
|
|
|
|
|
|
|
|
53
|
0
|
|
|
0
|
1
|
|
sub alipay { return( shift->_set_get_hash_as_object( 'alipay', 'Net::API::Stripe::Payment::Method::Details::Alipay', @_ ) ); } |
54
|
|
|
|
|
|
|
|
55
|
0
|
|
|
0
|
1
|
|
sub amount { return( shift->_set_get_number( 'amount', @_ ) ); } |
56
|
|
|
|
|
|
|
|
57
|
0
|
|
|
0
|
1
|
|
sub amount_received { return( shift->_set_get_number( 'amount_received', @_ ) ); } |
58
|
|
|
|
|
|
|
|
59
|
0
|
|
|
0
|
1
|
|
sub available_payout_methods { return( shift->_set_get_array( 'available_payout_methods', @_ ) ); } |
60
|
|
|
|
|
|
|
|
61
|
0
|
|
|
0
|
1
|
|
sub bancontact { return( shift->_set_get_hash_as_object( 'bancontact', 'Net::API::Stripe::Payment::Method::Details::BanContact', @_ ) ); } |
62
|
|
|
|
|
|
|
|
63
|
0
|
|
|
0
|
1
|
|
sub bank_name { return( shift->_set_get_scalar( 'bank_name', @_ ) ); } |
64
|
|
|
|
|
|
|
|
65
|
0
|
|
|
0
|
1
|
|
sub bitcoin_amount { return( shift->_set_get_number( 'bitcoin_amount', @_ ) ); } |
66
|
|
|
|
|
|
|
|
67
|
0
|
|
|
0
|
1
|
|
sub bitcoin_amount_received { return( shift->_set_get_number( 'bitcoin_amount_received', @_ ) ); } |
68
|
|
|
|
|
|
|
|
69
|
0
|
|
|
0
|
1
|
|
sub bitcoin_uri { return( shift->_set_get_uri( 'bitcoin_uri', @_ ) ); } |
70
|
|
|
|
|
|
|
|
71
|
0
|
|
|
0
|
1
|
|
sub brand { return( shift->_set_get_scalar( 'brand', @_ ) ); } |
72
|
|
|
|
|
|
|
|
73
|
|
|
|
|
|
|
## If type is set to "card" |
74
|
0
|
|
|
0
|
1
|
|
sub card { return( shift->_set_get_object( 'card', 'Net::API::Stripe::Connect::ExternalAccount::Card', @_ ) ); } |
75
|
|
|
|
|
|
|
|
76
|
0
|
|
|
0
|
1
|
|
sub card_present { return( shift->_set_get_hash_as_object( 'card_present', 'Net::API::Stripe::Payment::Method::Details::CardPresent', @_ ) ); } |
77
|
|
|
|
|
|
|
|
78
|
0
|
|
|
0
|
1
|
|
sub client_secret { return( shift->_set_get_scalar( 'client_secret', @_ ) ); } |
79
|
|
|
|
|
|
|
|
80
|
0
|
|
|
0
|
1
|
|
sub code_verification { return( shift->_set_get_object( 'code_verification', 'Net::API::Stripe::Payment::Source::CodeVerification', @_ ) ); } |
81
|
|
|
|
|
|
|
|
82
|
0
|
|
|
0
|
1
|
|
sub country { return( shift->_set_get_scalar( 'country', @_ ) ); } |
83
|
|
|
|
|
|
|
|
84
|
0
|
|
|
0
|
1
|
|
sub created { return( shift->_set_get_datetime( 'created', @_ ) ); } |
85
|
|
|
|
|
|
|
|
86
|
0
|
|
|
0
|
1
|
|
sub currency { return( shift->_set_get_scalar( 'currency', @_ ) ); } |
87
|
|
|
|
|
|
|
|
88
|
0
|
|
|
0
|
1
|
|
sub customer { return( shift->_set_get_scalar_or_object( 'customer', 'Net::API::Stripe::Customer', @_ ) ); } |
89
|
|
|
|
|
|
|
|
90
|
0
|
|
|
0
|
1
|
|
sub cvc_check { return( shift->_set_get_scalar( 'cvc_check', @_ ) ); } |
91
|
|
|
|
|
|
|
|
92
|
0
|
|
|
0
|
1
|
|
sub description { return( shift->_set_get_scalar( 'description', @_ ) ); } |
93
|
|
|
|
|
|
|
|
94
|
0
|
|
|
0
|
1
|
|
sub dynamic_last4 { return( shift->_set_get_scalar( 'dynamic_last4', @_ ) ); } |
95
|
|
|
|
|
|
|
|
96
|
0
|
|
|
0
|
1
|
|
sub email { return( shift->_set_get_scalar( 'email', @_ ) ); } |
97
|
|
|
|
|
|
|
|
98
|
0
|
|
|
0
|
1
|
|
sub eps { return( shift->_set_get_hash_as_object( 'eps', 'Net::API::Stripe::Payment::Method::Details::EPS', @_ ) ); } |
99
|
|
|
|
|
|
|
|
100
|
0
|
|
|
0
|
1
|
|
sub exp_month { return( shift->_set_get_number( 'exp_month', @_ ) ); } |
101
|
|
|
|
|
|
|
|
102
|
0
|
|
|
0
|
1
|
|
sub exp_year { return( shift->_set_get_number( 'exp_year', @_ ) ); } |
103
|
|
|
|
|
|
|
|
104
|
0
|
|
|
0
|
1
|
|
sub filled { return( shift->_set_get_scalar( 'filled', @_ ) ); } |
105
|
|
|
|
|
|
|
|
106
|
0
|
|
|
0
|
1
|
|
sub fingerprint { return( shift->_set_get_scalar( 'fingerprint', @_ ) ); } |
107
|
|
|
|
|
|
|
|
108
|
0
|
|
|
0
|
1
|
|
sub flow { return( shift->_set_get_scalar( 'flow', @_ ) ); } |
109
|
|
|
|
|
|
|
|
110
|
0
|
|
|
0
|
1
|
|
sub funding { return( shift->_set_get_scalar( 'funding', @_ ) ); } |
111
|
|
|
|
|
|
|
|
112
|
0
|
|
|
0
|
1
|
|
sub giropay { return( shift->_set_get_hash_as_object( 'giropay', 'Net::API::Stripe::Payment::Method::Details::Giropay', @_ ) ); } |
113
|
|
|
|
|
|
|
|
114
|
0
|
|
|
0
|
1
|
|
sub ideal { return( shift->_set_get_hash_as_object( 'ideal', 'Net::API::Stripe::Payment::Method::Details::Ideal', @_ ) ); } |
115
|
|
|
|
|
|
|
|
116
|
0
|
|
|
0
|
1
|
|
sub inbound_address { return( shift->_set_get_scalar( 'inbound_address', @_ ) ); } |
117
|
|
|
|
|
|
|
|
118
|
0
|
|
|
0
|
1
|
|
sub klarna { return( shift->_set_get_hash_as_object( 'klarna', 'Net::API::Stripe::Payment::Method::Details::Klarna', @_ ) ); } |
119
|
|
|
|
|
|
|
|
120
|
0
|
|
|
0
|
1
|
|
sub last4 { return( shift->_set_get_scalar( 'last4', @_ ) ); } |
121
|
|
|
|
|
|
|
|
122
|
0
|
|
|
0
|
1
|
|
sub livemode { return( shift->_set_get_boolean( 'livemode', @_ ) ); } |
123
|
|
|
|
|
|
|
|
124
|
0
|
|
|
0
|
1
|
|
sub metadata { return( shift->_set_get_hash( 'metadata', @_ ) ); } |
125
|
|
|
|
|
|
|
|
126
|
0
|
|
|
0
|
1
|
|
sub multibanco { return( shift->_set_get_hash_as_object( 'multibanco', 'Net::API::Stripe::Payment::Method::Details::MultiBanco', @_ ) ); } |
127
|
|
|
|
|
|
|
|
128
|
0
|
|
|
0
|
1
|
|
sub name { return( shift->_set_get_scalar( 'name', @_ ) ); } |
129
|
|
|
|
|
|
|
|
130
|
0
|
|
|
0
|
1
|
|
sub owner { return( shift->_set_get_object( 'owner', 'Net::API::Stripe::Payment::Source::Owner', @_ ) ); } |
131
|
|
|
|
|
|
|
|
132
|
0
|
|
|
0
|
1
|
|
sub p24 { return( shift->_set_get_hash_as_object( 'p24', 'Net::API::Stripe::Payment::Method::Details::P24', @_ ) ); } |
133
|
|
|
|
|
|
|
|
134
|
0
|
|
|
0
|
1
|
|
sub payment { return( shift->_set_get_scalar( 'payment', @_ ) ); } |
135
|
|
|
|
|
|
|
|
136
|
0
|
|
|
0
|
1
|
|
sub payment_amount { return( shift->_set_get_number( 'payment_amount', @_ ) ); } |
137
|
|
|
|
|
|
|
|
138
|
0
|
|
|
0
|
1
|
|
sub payment_currency { return( shift->_set_get_scalar( 'payment_currency', @_ ) ); } |
139
|
|
|
|
|
|
|
|
140
|
|
|
|
|
|
|
## "Information related to the receiver flow. Present if the source is a receiver (flow is receiver)." |
141
|
0
|
|
|
0
|
1
|
|
sub receiver { return( shift->_set_get_object( 'receiver', 'Net::API::Stripe::Payment::Source::Receiver', @_ ) ); } |
142
|
|
|
|
|
|
|
|
143
|
0
|
|
|
0
|
1
|
|
sub redirect { return( shift->_set_get_object( 'redirect', 'Net::API::Stripe::Payment::Source::Redirect', @_ ) ); } |
144
|
|
|
|
|
|
|
|
145
|
0
|
|
|
0
|
1
|
|
sub refund_address { return( shift->_set_get_scalar( 'refund_address', @_ ) ); } |
146
|
|
|
|
|
|
|
|
147
|
0
|
|
|
0
|
1
|
|
sub recipient { return( shift->_set_get_scalar_or_object( 'recipient', 'Net::API::Stripe::Customer', @_ ) ); } |
148
|
|
|
|
|
|
|
|
149
|
0
|
|
|
0
|
1
|
|
sub routing_number { return( shift->_set_get_scalar( 'routing_number', @_ ) ); } |
150
|
|
|
|
|
|
|
|
151
|
0
|
|
|
0
|
1
|
|
sub reusable { return( shift->_set_get_scalar( 'reusable', @_ ) ); } |
152
|
|
|
|
|
|
|
|
153
|
0
|
|
|
0
|
1
|
|
sub sofort { return( shift->_set_get_hash_as_object( 'sofort', 'Net::API::Stripe::Payment::Method::Details::Sofort', @_ ) ); } |
154
|
|
|
|
|
|
|
|
155
|
0
|
|
|
0
|
1
|
|
sub source_order { return( shift->_set_get_object( 'source_order', 'Net::API::Stripe::Order', @_ ) ); } |
156
|
|
|
|
|
|
|
|
157
|
0
|
|
|
0
|
1
|
|
sub statement_descriptor { return( shift->_set_get_scalar( 'statement_descriptor', @_ ) ); } |
158
|
|
|
|
|
|
|
|
159
|
0
|
|
|
0
|
1
|
|
sub status { return( shift->_set_get_scalar( 'status', @_ ) ); } |
160
|
|
|
|
|
|
|
|
161
|
0
|
|
|
0
|
1
|
|
sub stripe_account { return( shift->_set_get_hash_as_object( 'stripe_account', 'Net::API::Stripe::Payment::Method::Details::StripeAccount', @_ ) ); } |
162
|
|
|
|
|
|
|
|
163
|
0
|
|
|
0
|
1
|
|
sub tokenization_method { return( shift->_set_get_scalar( 'tokenization_method', @_ ) ); } |
164
|
|
|
|
|
|
|
|
165
|
0
|
|
|
0
|
1
|
|
sub transactions { return( shift->_set_get_object( 'transactions', 'Net::API::Stripe::List', @_ ) ); } |
166
|
|
|
|
|
|
|
|
167
|
0
|
|
|
0
|
1
|
|
sub type { return( shift->_set_get_scalar( 'type', @_ ) ); } |
168
|
|
|
|
|
|
|
|
169
|
0
|
|
|
0
|
1
|
|
sub uncaptured_funds { return( shift->_set_get_scalar( 'uncaptured_funds', @_ ) ); } |
170
|
|
|
|
|
|
|
|
171
|
0
|
|
|
0
|
1
|
|
sub usage { return( shift->_set_get_scalar( 'usage', @_ ) ); } |
172
|
|
|
|
|
|
|
|
173
|
0
|
|
|
0
|
1
|
|
sub used { return( shift->_set_get_scalar( 'used', @_ ) ); } |
174
|
|
|
|
|
|
|
|
175
|
0
|
|
|
0
|
1
|
|
sub used_for_payment { return( shift->_set_get_scalar( 'used_for_payment', @_ ) ); } |
176
|
|
|
|
|
|
|
|
177
|
0
|
|
|
0
|
1
|
|
sub username { return( shift->_set_get_scalar( 'username', @_ ) ); } |
178
|
|
|
|
|
|
|
|
179
|
0
|
|
|
0
|
1
|
|
sub wechat { return( shift->_set_get_hash_as_object( 'wechat', 'Net::API::Stripe::Payment::Method::Details::WeChat', @_ ) ); } |
180
|
|
|
|
|
|
|
|
181
|
|
|
|
|
|
|
1; |
182
|
|
|
|
|
|
|
|
183
|
|
|
|
|
|
|
__END__ |
184
|
|
|
|
|
|
|
|
185
|
|
|
|
|
|
|
=encoding utf8 |
186
|
|
|
|
|
|
|
|
187
|
|
|
|
|
|
|
=head1 NAME |
188
|
|
|
|
|
|
|
|
189
|
|
|
|
|
|
|
Net::API::Stripe::Payment::Source - A Stripe Payment Source Object |
190
|
|
|
|
|
|
|
|
191
|
|
|
|
|
|
|
=head1 SYNOPSIS |
192
|
|
|
|
|
|
|
|
193
|
|
|
|
|
|
|
my $source = $stripe->source({ |
194
|
|
|
|
|
|
|
account => $account_object, |
195
|
|
|
|
|
|
|
account_holder_name => 'John Doe', |
196
|
|
|
|
|
|
|
account_holder_type => 'individual', |
197
|
|
|
|
|
|
|
active => $stripe->true, |
198
|
|
|
|
|
|
|
# Or maybe more simply you pass a Net::API::Stripe::Address object |
199
|
|
|
|
|
|
|
# address => $address_object |
200
|
|
|
|
|
|
|
address_line1 => '1-2-3 Kudan-Minami, Chiyoda-ku', |
201
|
|
|
|
|
|
|
address_line2 => 'Big Bldg 12F', |
202
|
|
|
|
|
|
|
address_city => 'Tokyo', |
203
|
|
|
|
|
|
|
address_state => undef, |
204
|
|
|
|
|
|
|
address_zip => '123-4567', |
205
|
|
|
|
|
|
|
address_country => 'jp', |
206
|
|
|
|
|
|
|
amount => 2000, |
207
|
|
|
|
|
|
|
brand => 'Visa', |
208
|
|
|
|
|
|
|
card => $card_object, |
209
|
|
|
|
|
|
|
country => 'jp', |
210
|
|
|
|
|
|
|
currency => 'jpy', |
211
|
|
|
|
|
|
|
description => 'Primary source for customer', |
212
|
|
|
|
|
|
|
email => 'john.doe@example.com', |
213
|
|
|
|
|
|
|
exp_month => 4, |
214
|
|
|
|
|
|
|
exp_year => 2030, |
215
|
|
|
|
|
|
|
funding => 'debit', |
216
|
|
|
|
|
|
|
metadata => { transaction_id => 123, customer_id => 456 }, |
217
|
|
|
|
|
|
|
name => 'John Doe', |
218
|
|
|
|
|
|
|
statement_descriptor => 'Big Corp Services', |
219
|
|
|
|
|
|
|
type => 'card', |
220
|
|
|
|
|
|
|
}); |
221
|
|
|
|
|
|
|
|
222
|
|
|
|
|
|
|
See documentation in L<Net::API::Stripe> for example to make api calls to Stripe to create those objects. |
223
|
|
|
|
|
|
|
|
224
|
|
|
|
|
|
|
=head1 VERSION |
225
|
|
|
|
|
|
|
|
226
|
|
|
|
|
|
|
v0.100.0 |
227
|
|
|
|
|
|
|
|
228
|
|
|
|
|
|
|
=head1 DESCRIPTION |
229
|
|
|
|
|
|
|
|
230
|
|
|
|
|
|
|
Source objects allow you to accept a variety of payment methods. They represent a customer's payment instrument, and can be used with the Stripe API just like a Card object: once chargeable, they can be charged, or can be attached to customers. |
231
|
|
|
|
|
|
|
|
232
|
|
|
|
|
|
|
Stripe states this approach for card is deprecated in favour or PaymentIntent: L<https://stripe.com/docs/sources/cards> |
233
|
|
|
|
|
|
|
|
234
|
|
|
|
|
|
|
=head1 CONSTRUCTOR |
235
|
|
|
|
|
|
|
|
236
|
|
|
|
|
|
|
=over 4 |
237
|
|
|
|
|
|
|
|
238
|
|
|
|
|
|
|
=item B<new>( %ARG ) |
239
|
|
|
|
|
|
|
|
240
|
|
|
|
|
|
|
Creates a new L<Net::API::Stripe::Payment::Source> object. |
241
|
|
|
|
|
|
|
|
242
|
|
|
|
|
|
|
=back |
243
|
|
|
|
|
|
|
|
244
|
|
|
|
|
|
|
=head1 METHODS |
245
|
|
|
|
|
|
|
|
246
|
|
|
|
|
|
|
=over 4 |
247
|
|
|
|
|
|
|
|
248
|
|
|
|
|
|
|
=item B<id> string |
249
|
|
|
|
|
|
|
|
250
|
|
|
|
|
|
|
Unique identifier for the object. |
251
|
|
|
|
|
|
|
|
252
|
|
|
|
|
|
|
=item B<object> string, value is "source" |
253
|
|
|
|
|
|
|
|
254
|
|
|
|
|
|
|
String representing the objectâs type. Objects of the same type share the same value. |
255
|
|
|
|
|
|
|
|
256
|
|
|
|
|
|
|
=item B<account> custom only string (expandable) |
257
|
|
|
|
|
|
|
|
258
|
|
|
|
|
|
|
The account this card belongs to. This attribute will not be in the card object if the card belongs to a customer or recipient instead. |
259
|
|
|
|
|
|
|
|
260
|
|
|
|
|
|
|
When expanded, this is a L<Net::API::Stripe::Connect::Account> |
261
|
|
|
|
|
|
|
|
262
|
|
|
|
|
|
|
=item B<account_holder_name> string |
263
|
|
|
|
|
|
|
|
264
|
|
|
|
|
|
|
The name of the person or business that owns the bank account. |
265
|
|
|
|
|
|
|
|
266
|
|
|
|
|
|
|
=item B<account_holder_type> string |
267
|
|
|
|
|
|
|
|
268
|
|
|
|
|
|
|
The type of entity that holds the account. This can be either individual or company. |
269
|
|
|
|
|
|
|
|
270
|
|
|
|
|
|
|
=item B<ach_credit_transfer> |
271
|
|
|
|
|
|
|
|
272
|
|
|
|
|
|
|
If B<type> is set to C<ach_credit_transfer>, this is a L<Net::API::Stripe::Payment::Source::ACHCreditTransfer> object. |
273
|
|
|
|
|
|
|
|
274
|
|
|
|
|
|
|
It is not very clear in the Stripe API, but in the B<type> property, they mention "An additional hash is included on the source with a name matching this value. It contains additional information specific to the payment method (L<https://stripe.com/docs/sources>) used." :/ |
275
|
|
|
|
|
|
|
|
276
|
|
|
|
|
|
|
=item B<ach_debit> |
277
|
|
|
|
|
|
|
|
278
|
|
|
|
|
|
|
If B<type> is set to C<ach_debit>, this is a L<Net::API::Stripe::Payment::Source::ACHDebit> object. |
279
|
|
|
|
|
|
|
|
280
|
|
|
|
|
|
|
It is not very clear in the Stripe API, but in the B<type> property, they mention "An additional hash is included on the source with a name matching this value. It contains additional information specific to the payment method (L<https://stripe.com/docs/sources>) used." :/ |
281
|
|
|
|
|
|
|
|
282
|
|
|
|
|
|
|
=item B<active> boolean |
283
|
|
|
|
|
|
|
|
284
|
|
|
|
|
|
|
True when this bitcoin receiver has received a non-zero amount of bitcoin. |
285
|
|
|
|
|
|
|
|
286
|
|
|
|
|
|
|
=item B<address> L<Net::API::Stripe::Address> object or hash |
287
|
|
|
|
|
|
|
|
288
|
|
|
|
|
|
|
This is a helper method. Provided with either a L<Net::API::Stripe::Address> object or a hash with same properties, this will assign all the address_* properties by calling its method. |
289
|
|
|
|
|
|
|
|
290
|
|
|
|
|
|
|
=item B<address> L<Net::API::Stripe::Address> object or hash |
291
|
|
|
|
|
|
|
|
292
|
|
|
|
|
|
|
This is a helper method. Provided with either a L<Net::API::Stripe::Address> object or a hash with same properties, this will assign all the address_* properties by calling its method. |
293
|
|
|
|
|
|
|
|
294
|
|
|
|
|
|
|
=item B<address_city> string |
295
|
|
|
|
|
|
|
|
296
|
|
|
|
|
|
|
City/District/Suburb/Town/Village. |
297
|
|
|
|
|
|
|
|
298
|
|
|
|
|
|
|
=item B<address_country> string |
299
|
|
|
|
|
|
|
|
300
|
|
|
|
|
|
|
Billing address country, if provided when creating card. |
301
|
|
|
|
|
|
|
|
302
|
|
|
|
|
|
|
=item B<address_line1> string |
303
|
|
|
|
|
|
|
|
304
|
|
|
|
|
|
|
Address line 1 (Street address/PO Box/Company name). |
305
|
|
|
|
|
|
|
|
306
|
|
|
|
|
|
|
=item B<address_line1_check> string |
307
|
|
|
|
|
|
|
|
308
|
|
|
|
|
|
|
If address_line1 was provided, results of the check: pass, fail, unavailable, or unchecked. |
309
|
|
|
|
|
|
|
|
310
|
|
|
|
|
|
|
=item B<address_line2> string |
311
|
|
|
|
|
|
|
|
312
|
|
|
|
|
|
|
Address line 2 (Apartment/Suite/Unit/Building). |
313
|
|
|
|
|
|
|
|
314
|
|
|
|
|
|
|
=item B<address_state> string |
315
|
|
|
|
|
|
|
|
316
|
|
|
|
|
|
|
State/County/Province/Region. |
317
|
|
|
|
|
|
|
|
318
|
|
|
|
|
|
|
=item B<address_zip> string |
319
|
|
|
|
|
|
|
|
320
|
|
|
|
|
|
|
ZIP or postal code. |
321
|
|
|
|
|
|
|
|
322
|
|
|
|
|
|
|
=item B<address_zip_check> string |
323
|
|
|
|
|
|
|
|
324
|
|
|
|
|
|
|
If address_zip was provided, results of the check: pass, fail, unavailable, or unchecked. |
325
|
|
|
|
|
|
|
|
326
|
|
|
|
|
|
|
=item B<alipay> |
327
|
|
|
|
|
|
|
|
328
|
|
|
|
|
|
|
If B<type> is set to C<alipay>, this is a L<Net::API::Stripe::Payment::Method::Details::Alipay> object. |
329
|
|
|
|
|
|
|
|
330
|
|
|
|
|
|
|
=item B<amount> integer |
331
|
|
|
|
|
|
|
|
332
|
|
|
|
|
|
|
A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the total amount associated with the source. This is the amount for which the source will be chargeable once ready. Required for single_use sources. |
333
|
|
|
|
|
|
|
|
334
|
|
|
|
|
|
|
=item B<amount_received> positive integer or zero |
335
|
|
|
|
|
|
|
|
336
|
|
|
|
|
|
|
The amount of currency to which bitcoin_amount_received has been converted. |
337
|
|
|
|
|
|
|
|
338
|
|
|
|
|
|
|
=item B<available_payout_methods> array |
339
|
|
|
|
|
|
|
|
340
|
|
|
|
|
|
|
A set of available payout methods for this card. Will be either ["standard"] or ["standard", "instant"]. Only values from this set should be passed as the method when creating a transfer. |
341
|
|
|
|
|
|
|
|
342
|
|
|
|
|
|
|
=item B<bancontact> |
343
|
|
|
|
|
|
|
|
344
|
|
|
|
|
|
|
If B<type> is set to C<bancontact>, this is a L<Net::API::Stripe::Payment::Method::Details::BanContact> object. |
345
|
|
|
|
|
|
|
|
346
|
|
|
|
|
|
|
=item B<bank_name> string |
347
|
|
|
|
|
|
|
|
348
|
|
|
|
|
|
|
Name of the bank associated with the routing number (e.g., WELLS FARGO). |
349
|
|
|
|
|
|
|
|
350
|
|
|
|
|
|
|
=item B<bitcoin_amount> positive integer |
351
|
|
|
|
|
|
|
|
352
|
|
|
|
|
|
|
The amount of bitcoin that the customer should send to fill the receiver. The bitcoin_amount is denominated in Satoshi: there are 10^8 Satoshi in one bitcoin. |
353
|
|
|
|
|
|
|
|
354
|
|
|
|
|
|
|
=item B<bitcoin_amount_received> positive integer or zero |
355
|
|
|
|
|
|
|
|
356
|
|
|
|
|
|
|
The amount of bitcoin that has been sent by the customer to this receiver. |
357
|
|
|
|
|
|
|
|
358
|
|
|
|
|
|
|
=item B<bitcoin_uri> string |
359
|
|
|
|
|
|
|
|
360
|
|
|
|
|
|
|
This URI can be displayed to the customer as a clickable link (to activate their bitcoin client) or as a QR code (for mobile wallets). |
361
|
|
|
|
|
|
|
|
362
|
|
|
|
|
|
|
=item B<brand> string |
363
|
|
|
|
|
|
|
|
364
|
|
|
|
|
|
|
Card brand. Can be American Express, Diners Club, Discover, JCB, MasterCard, UnionPay, Visa, or Unknown. |
365
|
|
|
|
|
|
|
|
366
|
|
|
|
|
|
|
=item B<card> object |
367
|
|
|
|
|
|
|
|
368
|
|
|
|
|
|
|
If B<type> is set to C<card>, this is a L<Net::API::Stripe::Payment::Card> object. See also L<https://stripe.com/docs/sources/cards>. |
369
|
|
|
|
|
|
|
|
370
|
|
|
|
|
|
|
=item B<card_present> |
371
|
|
|
|
|
|
|
|
372
|
|
|
|
|
|
|
If B<type> is set to C<card_present>, this is a L<Net::API::Stripe::Payment::Method::Details::CardPresent> object. |
373
|
|
|
|
|
|
|
|
374
|
|
|
|
|
|
|
=item B<client_secret> string |
375
|
|
|
|
|
|
|
|
376
|
|
|
|
|
|
|
The client secret of the source. Used for client-side retrieval using a publishable key. |
377
|
|
|
|
|
|
|
|
378
|
|
|
|
|
|
|
=item B<code_verification> hash |
379
|
|
|
|
|
|
|
|
380
|
|
|
|
|
|
|
Information related to the code verification flow. Present if the source is authenticated by a verification code (flow is code_verification). |
381
|
|
|
|
|
|
|
|
382
|
|
|
|
|
|
|
This is a L<Net::API::Stripe::Payment::Source::CodeVerification> object. |
383
|
|
|
|
|
|
|
|
384
|
|
|
|
|
|
|
=item B<country> string |
385
|
|
|
|
|
|
|
|
386
|
|
|
|
|
|
|
Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards youâve collected. |
387
|
|
|
|
|
|
|
|
388
|
|
|
|
|
|
|
=item B<created> timestamp |
389
|
|
|
|
|
|
|
|
390
|
|
|
|
|
|
|
Time at which the object was created. Measured in seconds since the Unix epoch. |
391
|
|
|
|
|
|
|
|
392
|
|
|
|
|
|
|
=item B<currency> currency |
393
|
|
|
|
|
|
|
|
394
|
|
|
|
|
|
|
Three-letter ISO code for the currency associated with the source. This is the currency for which the source will be chargeable once ready. Required for single_use sources. |
395
|
|
|
|
|
|
|
|
396
|
|
|
|
|
|
|
=item B<customer> string |
397
|
|
|
|
|
|
|
|
398
|
|
|
|
|
|
|
The ID of the customer to which this source is attached. This will not be present when the source has not been attached to a customer. If it is expanded, this would be a L<Net::API::Stripe::Customer> object. |
399
|
|
|
|
|
|
|
|
400
|
|
|
|
|
|
|
=item B<cvc_check> string |
401
|
|
|
|
|
|
|
|
402
|
|
|
|
|
|
|
If a CVC was provided, results of the check: pass, fail, unavailable, or unchecked. |
403
|
|
|
|
|
|
|
|
404
|
|
|
|
|
|
|
=item B<description> string |
405
|
|
|
|
|
|
|
|
406
|
|
|
|
|
|
|
An arbitrary string attached to the object. Often useful for displaying to users. |
407
|
|
|
|
|
|
|
|
408
|
|
|
|
|
|
|
=item B<dynamic_last4> string |
409
|
|
|
|
|
|
|
|
410
|
|
|
|
|
|
|
(For tokenized numbers only.) The last four digits of the device account number. |
411
|
|
|
|
|
|
|
|
412
|
|
|
|
|
|
|
=item B<email> string |
413
|
|
|
|
|
|
|
|
414
|
|
|
|
|
|
|
The customerâs email address, set by the API call that creates the receiver. |
415
|
|
|
|
|
|
|
|
416
|
|
|
|
|
|
|
=item B<eps> |
417
|
|
|
|
|
|
|
|
418
|
|
|
|
|
|
|
If B<type> is set to C<eps>, this is a L<Net::API::Stripe::Payment::Method::Details::EPS> object. |
419
|
|
|
|
|
|
|
|
420
|
|
|
|
|
|
|
=item B<exp_month> integer |
421
|
|
|
|
|
|
|
|
422
|
|
|
|
|
|
|
Two-digit number representing the cardâs expiration month. |
423
|
|
|
|
|
|
|
|
424
|
|
|
|
|
|
|
=item B<exp_year> integer |
425
|
|
|
|
|
|
|
|
426
|
|
|
|
|
|
|
Four-digit number representing the cardâs expiration year. |
427
|
|
|
|
|
|
|
|
428
|
|
|
|
|
|
|
=item B<filled> boolean |
429
|
|
|
|
|
|
|
|
430
|
|
|
|
|
|
|
This flag is initially false and updates to true when the customer sends the bitcoin_amount to this receiver. |
431
|
|
|
|
|
|
|
|
432
|
|
|
|
|
|
|
=item B<fingerprint> string |
433
|
|
|
|
|
|
|
|
434
|
|
|
|
|
|
|
Uniquely identifies this particular card number. You can use this attribute to check whether two customers whoâve signed up with you are using the same card number, for example. |
435
|
|
|
|
|
|
|
|
436
|
|
|
|
|
|
|
=item B<flow> string |
437
|
|
|
|
|
|
|
|
438
|
|
|
|
|
|
|
The authentication flow of the source. flow is one of redirect, receiver, code_verification, none. |
439
|
|
|
|
|
|
|
|
440
|
|
|
|
|
|
|
=item B<livemode> boolean |
441
|
|
|
|
|
|
|
|
442
|
|
|
|
|
|
|
Has the value true if the object exists in live mode or the value false if the object exists in test mode. |
443
|
|
|
|
|
|
|
|
444
|
|
|
|
|
|
|
=item B<funding> string |
445
|
|
|
|
|
|
|
|
446
|
|
|
|
|
|
|
Card funding type. Can be credit, debit, prepaid, or unknown. |
447
|
|
|
|
|
|
|
|
448
|
|
|
|
|
|
|
=item B<giropay> |
449
|
|
|
|
|
|
|
|
450
|
|
|
|
|
|
|
If B<type> is set to C<giropay>, this is a L<Net::API::Stripe::Payment::Method::Details::Giropay> object. |
451
|
|
|
|
|
|
|
|
452
|
|
|
|
|
|
|
=item B<ideal> |
453
|
|
|
|
|
|
|
|
454
|
|
|
|
|
|
|
If B<type> is set to C<ideal>, this is a L<Net::API::Stripe::Payment::Method::Details::Ideal> object. |
455
|
|
|
|
|
|
|
|
456
|
|
|
|
|
|
|
=item B<inbound_address> string |
457
|
|
|
|
|
|
|
|
458
|
|
|
|
|
|
|
A bitcoin address that is specific to this receiver. The customer can send bitcoin to this address to fill the receiver. |
459
|
|
|
|
|
|
|
|
460
|
|
|
|
|
|
|
=item B<klarna> |
461
|
|
|
|
|
|
|
|
462
|
|
|
|
|
|
|
If B<type> is set to C<klarna>, this is a L<Net::API::Stripe::Payment::Method::Details::Klarna> object. |
463
|
|
|
|
|
|
|
|
464
|
|
|
|
|
|
|
=item B<last4> string |
465
|
|
|
|
|
|
|
|
466
|
|
|
|
|
|
|
The last four digits of the card. |
467
|
|
|
|
|
|
|
|
468
|
|
|
|
|
|
|
=item B<livemode> boolean |
469
|
|
|
|
|
|
|
|
470
|
|
|
|
|
|
|
Has the value true if the object exists in live mode or the value false if the object exists in test mode. |
471
|
|
|
|
|
|
|
|
472
|
|
|
|
|
|
|
=item B<metadata> hash |
473
|
|
|
|
|
|
|
|
474
|
|
|
|
|
|
|
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. |
475
|
|
|
|
|
|
|
|
476
|
|
|
|
|
|
|
=item B<multibanco> |
477
|
|
|
|
|
|
|
|
478
|
|
|
|
|
|
|
If B<type> is set to C<multibanco>, this is a L<Net::API::Stripe::Payment::Method::Details::MultiBanco> object. |
479
|
|
|
|
|
|
|
|
480
|
|
|
|
|
|
|
=item B<name> string |
481
|
|
|
|
|
|
|
|
482
|
|
|
|
|
|
|
Cardholder name. |
483
|
|
|
|
|
|
|
|
484
|
|
|
|
|
|
|
=item B<p24> |
485
|
|
|
|
|
|
|
|
486
|
|
|
|
|
|
|
If B<type> is set to C<p24>, this is a L<Net::API::Stripe::Payment::Method::Details::P24> object. |
487
|
|
|
|
|
|
|
|
488
|
|
|
|
|
|
|
=item B<payment> string |
489
|
|
|
|
|
|
|
|
490
|
|
|
|
|
|
|
The ID of the payment created from the receiver, if any. Hidden when viewing the receiver with a publishable key. |
491
|
|
|
|
|
|
|
|
492
|
|
|
|
|
|
|
=item B<owner> hash |
493
|
|
|
|
|
|
|
|
494
|
|
|
|
|
|
|
Information about the owner of the payment instrument that may be used or required by particular source types. |
495
|
|
|
|
|
|
|
|
496
|
|
|
|
|
|
|
This is a L<Net::API::Stripe::Payment::Source::Owner> object. |
497
|
|
|
|
|
|
|
|
498
|
|
|
|
|
|
|
=item B<payment_amount> positive integer |
499
|
|
|
|
|
|
|
|
500
|
|
|
|
|
|
|
If the Alipay account object is not reusable, the exact amount that you can create a charge for. |
501
|
|
|
|
|
|
|
|
502
|
|
|
|
|
|
|
=item B<payment_currency> currency |
503
|
|
|
|
|
|
|
|
504
|
|
|
|
|
|
|
If the Alipay account object is not reusable, the exact currency that you can create a charge for. |
505
|
|
|
|
|
|
|
|
506
|
|
|
|
|
|
|
=item B<receiver> hash |
507
|
|
|
|
|
|
|
|
508
|
|
|
|
|
|
|
Information related to the receiver flow. Present if the source is a receiver (flow is receiver). |
509
|
|
|
|
|
|
|
|
510
|
|
|
|
|
|
|
This is a L<Net::API::Stripe::Payment::Source::Receiver> object. |
511
|
|
|
|
|
|
|
|
512
|
|
|
|
|
|
|
=item B<recipient> string (expandable) |
513
|
|
|
|
|
|
|
|
514
|
|
|
|
|
|
|
The recipient that this card belongs to. This attribute will not be in the card object if the card belongs to a customer or account instead. |
515
|
|
|
|
|
|
|
|
516
|
|
|
|
|
|
|
When expanded, this is a L<Net::API::Stripe::Customer>. |
517
|
|
|
|
|
|
|
|
518
|
|
|
|
|
|
|
=item B<redirect> hash |
519
|
|
|
|
|
|
|
|
520
|
|
|
|
|
|
|
Information related to the redirect flow. Present if the source is authenticated by a redirect (flow is redirect). |
521
|
|
|
|
|
|
|
|
522
|
|
|
|
|
|
|
This is a L<Net::API::Stripe::Payment::Source::Redirect> object. |
523
|
|
|
|
|
|
|
|
524
|
|
|
|
|
|
|
=item B<reusable> boolean |
525
|
|
|
|
|
|
|
|
526
|
|
|
|
|
|
|
True if you can create multiple payments using this account. If the account is reusable, then you can freely choose the amount of each payment. |
527
|
|
|
|
|
|
|
|
528
|
|
|
|
|
|
|
=item B<refund_address> string |
529
|
|
|
|
|
|
|
|
530
|
|
|
|
|
|
|
=item B<routing_number> string |
531
|
|
|
|
|
|
|
|
532
|
|
|
|
|
|
|
The routing transit number for the bank account. |
533
|
|
|
|
|
|
|
|
534
|
|
|
|
|
|
|
=item B<sofort> hash |
535
|
|
|
|
|
|
|
|
536
|
|
|
|
|
|
|
If B<type> is set to C<sofort>, this is a L<Net::API::Stripe::Payment::Details::Sofort> virtual object, ie it is created dynamically by L<Nodule::Generic/"set_get_hash_as_object"> |
537
|
|
|
|
|
|
|
|
538
|
|
|
|
|
|
|
=item B<source_order> hash |
539
|
|
|
|
|
|
|
|
540
|
|
|
|
|
|
|
Information about the items and shipping associated with the source. Required for transactional credit (for example Klarna) sources before you can charge it. This is a L<Net::API::Stripe::Order> object. |
541
|
|
|
|
|
|
|
|
542
|
|
|
|
|
|
|
=over 8 |
543
|
|
|
|
|
|
|
|
544
|
|
|
|
|
|
|
=item B<amount> integer |
545
|
|
|
|
|
|
|
|
546
|
|
|
|
|
|
|
A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the total amount for the order. |
547
|
|
|
|
|
|
|
|
548
|
|
|
|
|
|
|
=item B<currency> currency |
549
|
|
|
|
|
|
|
|
550
|
|
|
|
|
|
|
Three-letter ISO currency code, in lowercase. Must be a supported currency. |
551
|
|
|
|
|
|
|
|
552
|
|
|
|
|
|
|
=item B<email> string |
553
|
|
|
|
|
|
|
|
554
|
|
|
|
|
|
|
The email address of the customer placing the order. |
555
|
|
|
|
|
|
|
|
556
|
|
|
|
|
|
|
=item B<items> array of hashes |
557
|
|
|
|
|
|
|
|
558
|
|
|
|
|
|
|
List of items constituting the order. This is an array of L<Net::API::Stripe::Order::Item> objects. |
559
|
|
|
|
|
|
|
|
560
|
|
|
|
|
|
|
=item B<shipping> hash |
561
|
|
|
|
|
|
|
|
562
|
|
|
|
|
|
|
The shipping address for the order. Present if the order is for goods to be shipped. This is a L<Net::API::Stripe::Shipping> object |
563
|
|
|
|
|
|
|
|
564
|
|
|
|
|
|
|
=back |
565
|
|
|
|
|
|
|
|
566
|
|
|
|
|
|
|
=item B<statement_descriptor> string |
567
|
|
|
|
|
|
|
|
568
|
|
|
|
|
|
|
Extra information about a source. This will appear on your customerâs statement every time you charge the source. |
569
|
|
|
|
|
|
|
|
570
|
|
|
|
|
|
|
=item B<status> string |
571
|
|
|
|
|
|
|
|
572
|
|
|
|
|
|
|
The status of the source, one of canceled, chargeable, consumed, failed, or pending. Only chargeable sources can be used to create a charge. |
573
|
|
|
|
|
|
|
|
574
|
|
|
|
|
|
|
=item B<stripe_account> |
575
|
|
|
|
|
|
|
|
576
|
|
|
|
|
|
|
If B<type> is set to C<stripe_account>, this is a L<Net::API::Stripe::Payment::Method::Details::StripeAccount> object. |
577
|
|
|
|
|
|
|
|
578
|
|
|
|
|
|
|
=item B<tokenization_method> string |
579
|
|
|
|
|
|
|
|
580
|
|
|
|
|
|
|
If the card number is tokenized, this is the method that was used. Can be apple_pay or google_pay. |
581
|
|
|
|
|
|
|
|
582
|
|
|
|
|
|
|
=item B<transactions> |
583
|
|
|
|
|
|
|
|
584
|
|
|
|
|
|
|
A list (L<Net::API::Stripe::List>) of L<Net::API::Stripe::Bitcoin::Transaction> object |
585
|
|
|
|
|
|
|
|
586
|
|
|
|
|
|
|
=item B<type> string |
587
|
|
|
|
|
|
|
|
588
|
|
|
|
|
|
|
The type of the source. The type is a payment method, one of ach_credit_transfer, ach_debit, alipay, bancontact, card, card_present, eps, giropay, ideal, multibanco, klarna, p24, sepa_debit, sofort, three_d_secure, or wechat. An additional hash is included on the source with a name matching this value. It contains additional information specific to the payment method (L<https://stripe.com/docs/sources>) used. |
589
|
|
|
|
|
|
|
|
590
|
|
|
|
|
|
|
=item B<uncaptured_funds> boolean |
591
|
|
|
|
|
|
|
|
592
|
|
|
|
|
|
|
This receiver contains uncaptured funds that can be used for a payment or refunded. |
593
|
|
|
|
|
|
|
|
594
|
|
|
|
|
|
|
=item B<usage> string |
595
|
|
|
|
|
|
|
|
596
|
|
|
|
|
|
|
Either reusable or single_use. Whether this source should be reusable or not. Some source types may or may not be reusable by construction, while others may leave the option at creation. If an incompatible value is passed, an error will be returned. |
597
|
|
|
|
|
|
|
|
598
|
|
|
|
|
|
|
=item B<used> boolean |
599
|
|
|
|
|
|
|
|
600
|
|
|
|
|
|
|
Whether this Alipay account object has ever been used for a payment. |
601
|
|
|
|
|
|
|
|
602
|
|
|
|
|
|
|
=item B<used_for_payment> boolean |
603
|
|
|
|
|
|
|
|
604
|
|
|
|
|
|
|
=item B<username> string |
605
|
|
|
|
|
|
|
|
606
|
|
|
|
|
|
|
The username for the Alipay account. |
607
|
|
|
|
|
|
|
|
608
|
|
|
|
|
|
|
=item B<wechat> |
609
|
|
|
|
|
|
|
|
610
|
|
|
|
|
|
|
If B<type> is set to C<wechat>, this is a L<Net::API::Stripe::Payment::Method::Details::WeChat> object. |
611
|
|
|
|
|
|
|
|
612
|
|
|
|
|
|
|
=back |
613
|
|
|
|
|
|
|
|
614
|
|
|
|
|
|
|
=head1 API SAMPLE |
615
|
|
|
|
|
|
|
|
616
|
|
|
|
|
|
|
{ |
617
|
|
|
|
|
|
|
"id": "src_fake123456789", |
618
|
|
|
|
|
|
|
"object": "source", |
619
|
|
|
|
|
|
|
"ach_credit_transfer": { |
620
|
|
|
|
|
|
|
"account_number": "test_52796e3294dc", |
621
|
|
|
|
|
|
|
"routing_number": "110000000", |
622
|
|
|
|
|
|
|
"fingerprint": "anvbmbvmnbvmab", |
623
|
|
|
|
|
|
|
"bank_name": "TEST BANK", |
624
|
|
|
|
|
|
|
"swift_code": "TSTEZ122" |
625
|
|
|
|
|
|
|
}, |
626
|
|
|
|
|
|
|
"amount": null, |
627
|
|
|
|
|
|
|
"client_secret": "src_client_secret_fake123456789", |
628
|
|
|
|
|
|
|
"created": 1571314413, |
629
|
|
|
|
|
|
|
"currency": "jpy", |
630
|
|
|
|
|
|
|
"flow": "receiver", |
631
|
|
|
|
|
|
|
"livemode": false, |
632
|
|
|
|
|
|
|
"metadata": {}, |
633
|
|
|
|
|
|
|
"owner": { |
634
|
|
|
|
|
|
|
"address": null, |
635
|
|
|
|
|
|
|
"email": "jenny.rosen@example.com", |
636
|
|
|
|
|
|
|
"name": null, |
637
|
|
|
|
|
|
|
"phone": null, |
638
|
|
|
|
|
|
|
"verified_address": null, |
639
|
|
|
|
|
|
|
"verified_email": null, |
640
|
|
|
|
|
|
|
"verified_name": null, |
641
|
|
|
|
|
|
|
"verified_phone": null |
642
|
|
|
|
|
|
|
}, |
643
|
|
|
|
|
|
|
"receiver": { |
644
|
|
|
|
|
|
|
"address": "121042882-38381234567890123", |
645
|
|
|
|
|
|
|
"amount_charged": 0, |
646
|
|
|
|
|
|
|
"amount_received": 0, |
647
|
|
|
|
|
|
|
"amount_returned": 0, |
648
|
|
|
|
|
|
|
"refund_attributes_method": "email", |
649
|
|
|
|
|
|
|
"refund_attributes_status": "missing" |
650
|
|
|
|
|
|
|
}, |
651
|
|
|
|
|
|
|
"statement_descriptor": null, |
652
|
|
|
|
|
|
|
"status": "pending", |
653
|
|
|
|
|
|
|
"type": "ach_credit_transfer", |
654
|
|
|
|
|
|
|
"usage": "reusable" |
655
|
|
|
|
|
|
|
} |
656
|
|
|
|
|
|
|
|
657
|
|
|
|
|
|
|
=head1 HISTORY |
658
|
|
|
|
|
|
|
|
659
|
|
|
|
|
|
|
=head2 v0.1 |
660
|
|
|
|
|
|
|
|
661
|
|
|
|
|
|
|
Initial version |
662
|
|
|
|
|
|
|
|
663
|
|
|
|
|
|
|
=head1 STRIPE HISTORY |
664
|
|
|
|
|
|
|
|
665
|
|
|
|
|
|
|
=head2 2018-01-23 |
666
|
|
|
|
|
|
|
|
667
|
|
|
|
|
|
|
When being viewed by a platform, cards and bank accounts created on behalf of connected accounts will have a fingerprint that is universal across all connected accounts. For accounts that are not connect platforms, there will be no change. |
668
|
|
|
|
|
|
|
|
669
|
|
|
|
|
|
|
=head1 AUTHOR |
670
|
|
|
|
|
|
|
|
671
|
|
|
|
|
|
|
Jacques Deguest E<lt>F<jack@deguest.jp>E<gt> |
672
|
|
|
|
|
|
|
|
673
|
|
|
|
|
|
|
=head1 SEE ALSO |
674
|
|
|
|
|
|
|
|
675
|
|
|
|
|
|
|
Stripe API documentation: |
676
|
|
|
|
|
|
|
|
677
|
|
|
|
|
|
|
L<https://stripe.com/docs/api/sources>, L<https://stripe.com/docs/sources>, L<https://stripe.com/docs/sources/customers> |
678
|
|
|
|
|
|
|
|
679
|
|
|
|
|
|
|
=head1 COPYRIGHT & LICENSE |
680
|
|
|
|
|
|
|
|
681
|
|
|
|
|
|
|
Copyright (c) 2019-2020 DEGUEST Pte. Ltd. |
682
|
|
|
|
|
|
|
|
683
|
|
|
|
|
|
|
You can use, copy, modify and redistribute this package and associated |
684
|
|
|
|
|
|
|
files under the same terms as Perl itself. |
685
|
|
|
|
|
|
|
|
686
|
|
|
|
|
|
|
=cut |
687
|
|
|
|
|
|
|
|