File Coverage

lib/Net/API/Stripe/Dispute/Evidence.pm
Criterion Covered Total %
statement 19 46 41.3
branch n/a
condition n/a
subroutine 7 34 20.5
pod 27 27 100.0
total 53 107 49.5


line stmt bran cond sub pod time code
1             ##----------------------------------------------------------------------------
2             ## Stripe API - ~/lib/Net/API/Stripe/Dispute/Evidence.pm
3             ## Version v0.100.0
4             ## Copyright(c) 2019 DEGUEST Pte. Ltd.
5             ## Author: Jacques Deguest <jack@deguest.jp>
6             ## Created 2019/11/02
7             ## Modified 2020/05/15
8             ##
9             ##----------------------------------------------------------------------------
10             ## https://stripe.com/docs/api/disputes/evidence_object
11             package Net::API::Stripe::Dispute::Evidence;
12             BEGIN
13             {
14 2     2   21191586 use strict;
  2         16  
  2         71  
15 2     2   12 use warnings;
  2         5  
  2         62  
16 2     2   10 use parent qw( Net::API::Stripe::Generic );
  2         6  
  2         9  
17 2     2   156 use vars qw( $VERSION );
  2         4  
  2         149  
18 2     2   47 our( $VERSION ) = 'v0.100.0';
19             };
20              
21 2     2   10 use strict;
  2         8  
  2         42  
22 2     2   10 use warnings;
  2         4  
  2         1102  
23              
24 0     0 1   sub access_activity_log { return( shift->_set_get_scalar( 'access_activity_log', @_ ) ); }
25              
26 0     0 1   sub billing_address { return( shift->_set_get_scalar( 'billing_address', @_ ) ); }
27              
28 0     0 1   sub cancellation_policy { return( shift->_set_get_scalar_or_object( 'cancellation_policy', 'Net::API::Stripe::File', @_ ) ); }
29              
30 0     0 1   sub cancellation_policy_disclosure { return( shift->_set_get_scalar( 'cancellation_policy_disclosure', @_ ) ); }
31              
32 0     0 1   sub cancellation_rebuttal { return( shift->_set_get_scalar( 'cancellation_rebuttal', @_ ) ); }
33              
34 0     0 1   sub customer_communication { return( shift->_set_get_scalar_or_object( 'customer_communication', 'Net::API::Stripe::File', @_ ) ); }
35              
36 0     0 1   sub customer_email_address { return( shift->_set_get_scalar( 'customer_email_address', @_ ) ); }
37              
38 0     0 1   sub customer_name { return( shift->_set_get_scalar( 'customer_name', @_ ) ); }
39              
40 0     0 1   sub customer_purchase_ip { return( shift->_set_get_scalar( 'customer_purchase_ip', @_ ) ); }
41              
42 0     0 1   sub customer_signature { return( shift->_set_get_scalar_or_object( 'customer_signature', 'Net::API::Stripe::File', @_ ) ); }
43              
44 0     0 1   sub duplicate_charge_documentation { return( shift->_set_get_scalar_or_object( 'duplicate_charge_documentation', 'Net::API::Stripe::File', @_ ) ); }
45              
46 0     0 1   sub duplicate_charge_explanation { return( shift->_set_get_scalar( 'duplicate_charge_explanation', @_ ) ); }
47              
48 0     0 1   sub duplicate_charge_id { return( shift->_set_get_scalar( 'duplicate_charge_id', @_ ) ); }
49              
50 0     0 1   sub product_description { return( shift->_set_get_scalar( 'product_description', @_ ) ); }
51              
52 0     0 1   sub receipt { return( shift->_set_get_scalar_or_object( 'receipt', 'Net::API::Stripe::File', @_ ) ); }
53              
54 0     0 1   sub refund_policy { return( shift->_set_get_scalar_or_object( 'refund_policy', 'Net::API::Stripe::File', @_ ) ); }
55              
56 0     0 1   sub refund_policy_disclosure { return( shift->_set_get_scalar( 'refund_policy_disclosure', @_ ) ); }
57              
58 0     0 1   sub refund_refusal_explanation { return( shift->_set_get_scalar( 'refund_refusal_explanation', @_ ) ); }
59              
60 0     0 1   sub service_date { return( shift->_set_get_scalar( 'service_date', @_ ) ); }
61              
62 0     0 1   sub service_documentation { return( shift->_set_get_scalar_or_object( 'service_documentation', 'Net::API::Stripe::File', @_ ) ); }
63              
64 0     0 1   sub shipping_address { return( shift->_set_get_scalar( 'shipping_address', @_ ) ); }
65              
66 0     0 1   sub shipping_carrier { return( shift->_set_get_scalar( 'shipping_carrier', @_ ) ); }
67              
68 0     0 1   sub shipping_date { return( shift->_set_get_scalar( 'shipping_date', @_ ) ); }
69              
70 0     0 1   sub shipping_documentation { return( shift->_set_get_scalar_or_object( 'shipping_documentation', 'Net::API::Stripe::File', @_ ) ); }
71              
72 0     0 1   sub shipping_tracking_number { return( shift->_set_get_scalar( 'shipping_tracking_number', @_ ) ); }
73              
74 0     0 1   sub uncategorized_file { return( shift->_set_get_scalar_or_object( 'uncategorized_file', 'Net::API::Stripe::File', @_ ) ); }
75              
76 0     0 1   sub uncategorized_text { return( shift->_set_get_scalar( 'uncategorized_text', @_ ) ); }
77              
78             1;
79              
80             __END__
81              
82             =encoding utf8
83              
84             =head1 NAME
85              
86             Net::API::Stripe::Dispute::Evidence - A Stripe Dispute Evidence Object
87              
88             =head1 SYNOPSIS
89              
90             my $evidence = $stripe->dispute->evidence({
91             access_activity_log => null,
92             billing_address => '1-2-3 Kudan-Minami, Chiyoda-ku',
93             cancellation_policy => undef,
94             cancellation_policy_disclosure => undef,
95             cancellation_rebuttal => undef,
96             customer_communication => undef,
97             customer_email_address => 'john.doe@example.com',
98             customer_name => 'John Doe',
99             customer_purchase_ip => '1.2.3.4',
100             customer_signature => undef,
101             duplicate_charge_documentation => undef,
102             duplicate_charge_explanation => undef,
103             duplicate_charge_id => undef,
104             product_description => 'Professional service',
105             receipt => undef,
106             refund_policy => undef,
107             refund_policy_disclosure => undef,
108             refund_refusal_explanation => 'Customer has already used Big Corp, Inc service billed',
109             service_date => '2020-04-07',
110             service_documentation => undef,
111             shipping_address => undef,
112             shipping_carrier => undef,
113             shipping_date => undef,
114             shipping_documentation => undef,
115             shipping_tracking_number => undef,
116             uncategorized_file => undef,
117             uncategorized_text => undef,
118             });
119              
120             =head1 VERSION
121              
122             v0.100.0
123              
124             =head1 DESCRIPTION
125              
126             A dispute occurs when a customer questions your charge with their card issuer. When this happens, you're given the opportunity to respond to the dispute with evidence that shows that the charge is legitimate. You can find more information about the dispute process in L<Stripe Disputes and Fraud documentation|https://stripe.com/docs/disputes>.
127              
128             This is instantiated by method B<evidence> in module L<Net::API::Stripe::Dispute>
129              
130             =head1 CONSTRUCTOR
131              
132             =head2 new( %ARG )
133              
134             Creates a new L<Net::API::Stripe::Dispute::Evidence> object.
135             It may also take an hash like arguments, that also are method of the same name.
136              
137             =head1 METHODS
138              
139             =head2 access_activity_log string
140              
141             Any server or activity logs showing proof that the customer accessed or downloaded the purchased digital product. This information should include IP addresses, corresponding timestamps, and any detailed recorded activity.
142              
143             =head2 billing_address string
144              
145             The billing address provided by the customer.
146              
147             =head2 cancellation_policy string (expandable)
148              
149             (ID of a file upload) Your subscription cancellation policy, as shown to the customer.
150              
151             When expanded, this is a L<Net::API::Stripe::File> object.
152              
153             =head2 cancellation_policy_disclosure string
154              
155             An explanation of how and when the customer was shown your refund policy prior to purchase.
156              
157             =head2 cancellation_rebuttal string
158              
159             A justification for why the customer’s subscription was not canceled.
160              
161             =head2 customer_communication string (expandable)
162              
163             (ID of a file upload) Any communication with the customer that you feel is relevant to your case. Examples include emails proving that the customer received the product or service, or demonstrating their use of or satisfaction with the product or service.
164              
165             When expanded, this is a L<Net::API::Stripe::File> object.
166              
167             =head2 customer_email_address string
168              
169             The email address of the customer.
170              
171             =head2 customer_name string
172              
173             The name of the customer.
174              
175             =head2 customer_purchase_ip string
176              
177             The IP address that the customer used when making the purchase.
178              
179             =head2 customer_signature string (expandable)
180              
181             (ID of a file upload) A relevant document or contract showing the customer’s signature.
182              
183             When expanded, this is a L<Net::API::Stripe::File> object.
184              
185             =head2 duplicate_charge_documentation string (expandable)
186              
187             (ID of a file upload) Documentation for the prior charge that can uniquely identify the charge, such as a receipt, shipping label, work order, etc. This document should be paired with a similar document from the disputed payment that proves the two payments are separate.
188              
189             When expanded, this is a L<Net::API::Stripe::File> object.
190              
191             =head2 duplicate_charge_explanation string
192              
193             An explanation of the difference between the disputed charge versus the prior charge that appears to be a duplicate.
194              
195             =head2 duplicate_charge_id string
196              
197             The Stripe ID for the prior charge which appears to be a duplicate of the disputed charge.
198              
199             =head2 product_description string
200              
201             A description of the product or service that was sold.
202              
203             =head2 receipt string (expandable)
204              
205             (ID of a file upload) Any receipt or message sent to the customer notifying them of the charge.
206              
207             When expanded, this is a L<Net::API::Stripe::File> object.
208              
209             =head2 refund_policy string (expandable)
210              
211             (ID of a file upload) Your refund policy, as shown to the customer.
212              
213             When expanded, this is a L<Net::API::Stripe::File> object.
214              
215             =head2 refund_policy_disclosure string
216              
217             Documentation demonstrating that the customer was shown your refund policy prior to purchase.
218              
219             =head2 refund_refusal_explanation string
220              
221             A justification for why the customer is not entitled to a refund.
222              
223             =head2 service_date string
224              
225             The date on which the customer received or began receiving the purchased service, in a clear human-readable format.
226              
227             =head2 service_documentation string (expandable)
228              
229             (ID of a file upload) Documentation showing proof that a service was provided to the customer. This could include a copy of a signed contract, work order, or other form of written agreement.
230              
231             When expanded, this is a L<Net::API::Stripe::File> object.
232              
233             =head2 shipping_address string
234              
235             The address to which a physical product was shipped. You should try to include as complete address information as possible.
236              
237             =head2 shipping_carrier string
238              
239             The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc. If multiple carriers were used for this purchase, please separate them with commas.
240              
241             =head2 shipping_date string
242              
243             The date on which a physical product began its route to the shipping address, in a clear human-readable format.
244              
245             =head2 shipping_documentation string (expandable)
246              
247             (ID of a file upload) Documentation showing proof that a product was shipped to the customer at the same address the customer provided to you. This could include a copy of the shipment receipt, shipping label, etc. It should show the customer’s full shipping address, if possible.
248              
249             =head2 shipping_tracking_number string
250              
251             The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.
252              
253             =head2 uncategorized_file string (expandable)
254              
255             (ID of a file upload) Any additional evidence or statements.
256              
257             =head2 uncategorized_text string
258              
259             Any additional evidence or statements.
260              
261             =head1 API SAMPLE
262              
263             {
264             "access_activity_log": null,
265             "billing_address": null,
266             "cancellation_policy": null,
267             "cancellation_policy_disclosure": null,
268             "cancellation_rebuttal": null,
269             "customer_communication": null,
270             "customer_email_address": null,
271             "customer_name": null,
272             "customer_purchase_ip": null,
273             "customer_signature": null,
274             "duplicate_charge_documentation": null,
275             "duplicate_charge_explanation": null,
276             "duplicate_charge_id": null,
277             "product_description": null,
278             "receipt": null,
279             "refund_policy": null,
280             "refund_policy_disclosure": null,
281             "refund_refusal_explanation": null,
282             "service_date": null,
283             "service_documentation": null,
284             "shipping_address": null,
285             "shipping_carrier": null,
286             "shipping_date": null,
287             "shipping_documentation": null,
288             "shipping_tracking_number": null,
289             "uncategorized_file": null,
290             "uncategorized_text": null
291             }
292              
293             =head1 HISTORY
294              
295             =head2 v0.1
296              
297             Initial version
298              
299             =head1 AUTHOR
300              
301             Jacques Deguest E<lt>F<jack@deguest.jp>E<gt>
302              
303             =head1 SEE ALSO
304              
305             Stripe API documentation:
306              
307             L<https://stripe.com/docs/api/disputes/evidence_object#dispute_evidence_object>
308              
309             =head1 COPYRIGHT & LICENSE
310              
311             Copyright (c) 2019-2020 DEGUEST Pte. Ltd.
312              
313             You can use, copy, modify and redistribute this package and associated
314             files under the same terms as Perl itself.
315              
316             =cut