feat(cinetpay payout): convert incoming status to internal status
This commit is contained in:
parent
354d33d7df
commit
457df41c9c
|
@ -302,14 +302,11 @@ class CinetpayController extends Controller
|
|||
$responseData = json_decode($transfertResponse->getBody()->getContents());
|
||||
$responseCode = $transfertResponse->getStatusCode();
|
||||
|
||||
Log::info("Pay out cinietpay");
|
||||
Log::info(json_encode($responseData));
|
||||
|
||||
if ($responseCode == 200) {
|
||||
|
||||
$transaction->update([
|
||||
'aggregator_payment_ref' => $responseData->data[0]?->transaction_id,
|
||||
'status' => $responseData->data[0]?->treatment_status,
|
||||
'aggregator_payment_ref' => $responseData->data[0][0]?->transaction_id,
|
||||
'status' => $this->convertTransfertStatus($responseData->data[0][0]?->treatment_status) ,
|
||||
]);
|
||||
|
||||
return $this->successResponse([
|
||||
|
@ -326,6 +323,7 @@ class CinetpayController extends Controller
|
|||
}catch (Throwable $e){
|
||||
Log::error("Error CinetPay transfert payment");
|
||||
$errorMessage = $e->getMessage();
|
||||
Log::error("Response data :: ".json_encode($responseData ?? ''));
|
||||
Log::error($errorMessage);
|
||||
}
|
||||
|
||||
|
@ -370,15 +368,11 @@ class CinetpayController extends Controller
|
|||
|
||||
$responseData = json_decode($response->getBody()->getContents());
|
||||
$responseCode = $response->getStatusCode();
|
||||
|
||||
Log::info("Pay out check result");
|
||||
Log::info(json_encode($responseData));
|
||||
|
||||
if ($responseCode == 200) {
|
||||
|
||||
$transaction->update([
|
||||
'aggregator_payment_ref' => $responseData->data[0]?->transaction_id,
|
||||
'status' => $responseData->data[0]?->treatment_status,
|
||||
'status' => $this->convertTransfertStatus($responseData->data[0]?->treatment_status),
|
||||
]);
|
||||
|
||||
}
|
||||
|
@ -387,6 +381,7 @@ class CinetpayController extends Controller
|
|||
} catch (Throwable $e) {
|
||||
Log::info("Get Cinetpay Transfert Status Error");
|
||||
$errorMessage = $e->getMessage();
|
||||
Log::error("Response data :: ".json_encode($responseData ?? ''));
|
||||
Log::info($errorMessage);
|
||||
$transaction->update([
|
||||
'status' => PaymentTransactionStatus::REFUSED
|
||||
|
@ -399,6 +394,17 @@ class CinetpayController extends Controller
|
|||
}
|
||||
}
|
||||
|
||||
private function convertTransfertStatus($incomingStatus): string {
|
||||
return match ($incomingStatus) {
|
||||
'NEW', 'REC' => PaymentTransactionStatus::PENDING,
|
||||
'VAL' => PaymentTransactionStatus::ACCEPTED,
|
||||
'REJ' => PaymentTransactionStatus::REFUSED,
|
||||
'NOS' => PaymentTransactionStatus::PENDING_OTP,
|
||||
default => PaymentTransactionStatus::INITIATED,
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function capturePaymentResult(Request $request)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue