@@ -4,6 +4,18 @@ LaraStripe has payment checkout (session) alias `LaraStripeCheckout`.
4
4
5
5
# Usage
6
6
7
+ ## env
8
+
9
+ ```
10
+ STRIPE_PUBLIC_KEY="public key"
11
+ STRIPE_SECRET_KEY="secret key"
12
+ STRIPE_SUCCESS_URL="http://127.0.0.1:8000/checkout/success"
13
+ STRIPE_CANCEL_URL="http://127.0.0.1:8000/checkout/cancel"
14
+
15
+ ```
16
+
17
+ ## checkout
18
+
7
19
``` php
8
20
$checkout = LaraStripeCheckout::tnx('tnx-1212134')
9
21
->amount(233)
@@ -18,7 +30,7 @@ $checkout = LaraStripeCheckout::tnx('tnx-1212134')
18
30
}
19
31
```
20
32
21
- # stripe.js
33
+ ### stripe.js
22
34
23
35
* include ` <script src="https://js.stripe.com/v3/"></script> `
24
36
@@ -29,9 +41,6 @@ $checkout = LaraStripeCheckout::tnx('tnx-1212134')
29
41
var stripe = Stripe (' your_stripe_public_key' );
30
42
31
43
stripe .redirectToCheckout ({
32
- // Make the id field from the Checkout Session creation API response
33
- // available to this file, so you can provide it as parameter here
34
- // instead of the {{CHECKOUT_SESSION_ID}} placeholder.
35
44
sessionId: ' {{CHECKOUT_SESSION_ID}}'
36
45
}).then (function (result ) {
37
46
// If `redirectToCheckout` fails due to a browser or network
@@ -40,7 +49,7 @@ stripe.redirectToCheckout({
40
49
});
41
50
```
42
51
43
- * blade view
52
+ ### blade view
44
53
45
54
~ javascript
46
55
@@ -58,37 +67,37 @@ stripe.redirectToCheckout({
58
67
});
59
68
```
60
69
61
- * sessionId will be that code which generate ` getSession method `
62
70
63
- # retrive data ` success route `
71
+ ## success
64
72
65
73
After success payment stripe redirect to success_url . retrive session data in success_url.
66
74
67
75
``` php
68
- Route::get('success',function(Request $request){
69
- $data = LaraStripeCheckout::setup([
70
- 'secret' => '******',
71
- 'public_key' => '******',
72
- 'currency' => 'usd'
73
- ])
74
- ->retrieve($request->session_id);
76
+ Route::get('checkout/success',function(Request $request){
77
+ $data = LaraStripeCheckout::status(request('session_id'));
78
+ return response()->json($data);
79
+
80
+ // status (succeeded, .....)
81
+ $data->status;
82
+
83
+ // tnx id
75
84
$data->ref_id;
76
- // return `customer ID` `cart ID`, or `similar`
77
- })
85
+
86
+ // additional data (metada)
87
+ $data->sessions->metadata;
88
+
89
+ // payment status
90
+ $data->sessions->payment_status;
91
+ });
78
92
```
79
93
80
- # refund
94
+ ## refund
81
95
82
96
* Store payment_intent in db when checkout success. ('retrieve method')
83
97
84
98
``` php
85
- $re = LaraStripeCheckout::setup(['secret' => '******'])
86
- ->refund('payment_intent')
87
- return response()->json($re);
99
+ Route::get('checkout/refund',function(){
100
+ $charge = LaraStripeCheckout::refund('payment_intent');
101
+ return response()->json($charge);
102
+ });
88
103
```
89
-
90
- # reference
91
-
92
- * [ session stripe] ( https://stripe.com/docs/api/checkout/sessions/object#checkout_session_object-id )
93
- * [ stripe official doc] ( https://stripe.com/payments/checkout )
94
- * [ stripe payment] ( https://stripe.com/docs/terminal/payments )
0 commit comments