PluginProbe
GiveWP – Donation Plugin and Fundraising Platform / 4.15.5
GiveWP – Donation Plugin and Fundraising Platform v4.15.5
4.16.9 4.16.8.1 4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 All 255 releases
give / vendor / stripe / stripe-php / lib / Service / CouponService.php

CouponService.php in GiveWP – Donation Plugin and Fundraising Platform 4.15.5, at vendor/stripe/stripe-php/lib/Service/CouponService.php

105 lines 3.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 // File generated from our OpenAPI spec
4
5 namespace Stripe\Service;
6
7 class CouponService extends \Stripe\Service\AbstractService
8 {
9 /**
10 * Returns a list of your coupons.
11 *
12 * @param null|array $params
13 * @param null|array|\Stripe\Util\RequestOptions $opts
14 *
15 * @throws \Stripe\Exception\ApiErrorException if the request fails
16 *
17 * @return \Stripe\Collection<\Stripe\Coupon>
18 */
19 public function all($params = null, $opts = null)
20 {
21 return $this->requestCollection('get', '/v1/coupons', $params, $opts);
22 }
23
24 /**
25 * You can create coupons easily via the <a
26 * href="https://dashboard.stripe.com/coupons">coupon management</a> page of the
27 * Stripe dashboard. Coupon creation is also accessible via the API if you need to
28 * create coupons on the fly.
29 *
30 * A coupon has either a <code>percent_off</code> or an <code>amount_off</code> and
31 * <code>currency</code>. If you set an <code>amount_off</code>, that amount will
32 * be subtracted from any invoice’s subtotal. For example, an invoice with a
33 * subtotal of <currency>100</currency> will have a final total of
34 * <currency>0</currency> if a coupon with an <code>amount_off</code> of
35 * <amount>200</amount> is applied to it and an invoice with a subtotal of
36 * <currency>300</currency> will have a final total of <currency>100</currency> if
37 * a coupon with an <code>amount_off</code> of <amount>200</amount> is applied to
38 * it.
39 *
40 * @param null|array $params
41 * @param null|array|\Stripe\Util\RequestOptions $opts
42 *
43 * @throws \Stripe\Exception\ApiErrorException if the request fails
44 *
45 * @return \Stripe\Coupon
46 */
47 public function create($params = null, $opts = null)
48 {
49 return $this->request('post', '/v1/coupons', $params, $opts);
50 }
51
52 /**
53 * You can delete coupons via the <a
54 * href="https://dashboard.stripe.com/coupons">coupon management</a> page of the
55 * Stripe dashboard. However, deleting a coupon does not affect any customers who
56 * have already applied the coupon; it means that new customers can’t redeem the
57 * coupon. You can also delete coupons via the API.
58 *
59 * @param string $id
60 * @param null|array $params
61 * @param null|array|\Stripe\Util\RequestOptions $opts
62 *
63 * @throws \Stripe\Exception\ApiErrorException if the request fails
64 *
65 * @return \Stripe\Coupon
66 */
67 public function delete($id, $params = null, $opts = null)
68 {
69 return $this->request('delete', $this->buildPath('/v1/coupons/%s', $id), $params, $opts);
70 }
71
72 /**
73 * Retrieves the coupon with the given ID.
74 *
75 * @param string $id
76 * @param null|array $params
77 * @param null|array|\Stripe\Util\RequestOptions $opts
78 *
79 * @throws \Stripe\Exception\ApiErrorException if the request fails
80 *
81 * @return \Stripe\Coupon
82 */
83 public function retrieve($id, $params = null, $opts = null)
84 {
85 return $this->request('get', $this->buildPath('/v1/coupons/%s', $id), $params, $opts);
86 }
87
88 /**
89 * Updates the metadata of a coupon. Other coupon details (currency, duration,
90 * amount_off) are, by design, not editable.
91 *
92 * @param string $id
93 * @param null|array $params
94 * @param null|array|\Stripe\Util\RequestOptions $opts
95 *
96 * @throws \Stripe\Exception\ApiErrorException if the request fails
97 *
98 * @return \Stripe\Coupon
99 */
100 public function update($id, $params = null, $opts = null)
101 {
102 return $this->request('post', $this->buildPath('/v1/coupons/%s', $id), $params, $opts);
103 }
104 }
105