@@ -19,10 +19,12 @@ Online Payment Module handler for Laravel 5+ known as LaraPay component complete
19
19
20
20
## Installation
21
21
22
+ Larapay Version 6 required PHP 7+
23
+
22
24
1.Installing via composer
23
25
24
26
``` bash
25
- composer require tartan/laravel-online-payment:" ^5 .0"
27
+ composer require tartan/laravel-online-payment:" ^7 .0"
26
28
```
27
29
2.Add this to your app service providers for laravel version < 5.4 :
28
30
@@ -45,54 +47,158 @@ php artisan vendor:publish
45
47
* Your Transaction/Invoice (Eloquent) model MUST implement
46
48
47
49
``` php
50
+ <?php
48
51
namespace App\Model;
49
52
50
53
use Tartan\Larapay\Transaction\TransactionInterface;
51
54
52
- class Transaction extends Model implements TransactionInterface
55
+ class Transaction extends Model implements TransactionInterface
53
56
{
54
- // set order reference Id
55
- public function setReferenceId($referenceId, $save = true){}
56
-
57
- // check if you transaction is ready for requesting payment token
58
- public function checkForRequestToken(){}
59
-
60
- // check if transaction is ready for requesting verify transaction
61
- public function checkForVerify(){}
62
-
63
- // check if transaction is ready for requesting inqury transaction (if supported by gateway)
64
- public function checkForInquiry(){}
65
-
66
- // check if transaction is ready for requesting reverse transaction (if supported by gateway)
67
- public function checkForReverse(){}
68
-
69
- // check if transaction is ready for requesting settle/... transaction (if needed by gateway)
70
- public function checkForAfterVerify(){}
71
-
72
- // update transaction by paid card number (if provided by gateway)
73
- public function setCardNumber($cardNumber){}
74
-
75
- // mark transaction as verified
76
- public function setVerified(){}
77
-
78
- // mark transaction as settled/...
79
- public function setAfterVerified(){}
80
-
81
- // mark transaction as completed
82
- public function setSuccessful($flag){}
83
-
84
- // mark transaction as reversed
85
- public function setReversed(){}
86
-
87
- // get transaction amount
88
- public function getAmount(){}
57
+ // ...
58
+ }
59
+ ```
60
+ ``` php
61
+ <?php
62
+
63
+ namespace Tartan\Larapay\Transaction;
64
+
65
+ interface TransactionInterface
66
+ {
67
+ /**
68
+ * set gateway token of transaction
69
+ *
70
+ * @param string $token
71
+ * @param bool $save
72
+ *
73
+ * @return mixed
74
+ */
75
+ public function setGatewayToken(string $token, bool $save = true): bool;
76
+
77
+ /**
78
+ * set reference ID of transaction
79
+ *
80
+ * @param string $referenceId
81
+ * @param bool $save
82
+ *
83
+ * @return mixed
84
+ */
85
+ public function setReferenceId(string $referenceId, bool $save = true): bool;
86
+
87
+ /**
88
+ * check if transaction is ready for requesting token from payment gateway or not
89
+ *
90
+ * @return boolean
91
+ */
92
+ public function checkForRequestToken(): bool;
93
+
94
+ /**
95
+ * check if transaction is ready for requesting verify method from payment gateway or not
96
+ *
97
+ * @return bool
98
+ */
99
+ public function checkForVerify(): bool;
100
+
101
+ /**
102
+ * check if transaction is ready for requesting inquiry method from payment gateway or not
103
+ * This feature does not append to all payment gateways
104
+ *
105
+ * @return bool
106
+ */
107
+ public function checkForInquiry(): bool;
108
+
109
+ /**
110
+ * check if transaction is ready for requesting refund method from payment gateway or not
111
+ * This feature does not append to all payment gateways
112
+ *
113
+ * @return bool
114
+ */
115
+ public function checkForRefund(): bool;
116
+
117
+ /**
118
+ * check if transaction is ready for requesting after verify method from payment gateway or not
119
+ * This feature does not append to all payment gateways.
120
+ * for example in Mellat gateway this method can assume as SETTLE method
121
+ *
122
+ * @return bool
123
+ */
124
+ public function checkForAfterVerify(): bool;
125
+
126
+ /**
127
+ * Set the card number (hash of card number) that used for paying the transaction
128
+ * This data does not provide by all payment gateways
129
+ *
130
+ * @return bool
131
+ */
132
+ public function setCardNumber(string $cardNumber): bool;
133
+
134
+ /**
135
+ * Mark transaction as a verified transaction
136
+ *
137
+ * @return bool
138
+ */
139
+ public function setVerified(): bool;
140
+
141
+ /**
142
+ * Mark transaction as a after verified transaction
143
+ * For example SETTLED in Mellat gateway
144
+ *
145
+ * @return bool
146
+ */
147
+ public function setAfterVerified(): bool;
148
+
149
+ /**
150
+ * Mark transaction as a paid/successful transaction
151
+ *
152
+ * @return bool
153
+ */
154
+ public function setPaid(): bool;
155
+
156
+ /**
157
+ * Mark transaction as a refunded transaction
158
+ *
159
+ * @return bool
160
+ */
161
+ public function setRefunded(): bool;
162
+
163
+ /**
164
+ * Returns the payable amount af the transaction
165
+ * @return int
166
+ */
167
+ public function getAmount(): int;
168
+
169
+ /**
170
+ * Set the paid time of the transaction.
171
+ * You can set this value in setPaid() method too and bypass this function
172
+ *
173
+ * @param string $time
174
+ *
175
+ * @return bool
176
+ */
177
+ public function setPaidAt(string $time = 'now'): bool;
178
+
179
+ /**
180
+ * Set extra values of the transaction. Every key/value pair that you want to bind to the transaction
181
+ *
182
+ * @param string $key
183
+ * @param $value
184
+ * @param bool $save
185
+ *
186
+ * @return bool
187
+ */
188
+ public function setExtra(string $key, $value, bool $save = true): bool;
189
+
190
+ /**
191
+ * Set callback parameters from payment gateway
192
+ *
193
+ * @param array $paramaetrs
194
+ * @param bool $save
195
+ *
196
+ * @return bool
197
+ */
198
+ public function setCallBackParameters(array $parameters, bool $save = true): bool;
199
+ }
89
200
90
- // set transactions's paid tme
91
- public function setPaidAt($time = 'now'){}
92
201
93
- // set transaction's extra details
94
- public function setExtra($key, $value, $save = false){}
95
- }
96
202
```
97
203
98
204
6 . Prepare for online payment
0 commit comments