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());
|
$responseData = json_decode($transfertResponse->getBody()->getContents());
|
||||||
$responseCode = $transfertResponse->getStatusCode();
|
$responseCode = $transfertResponse->getStatusCode();
|
||||||
|
|
||||||
Log::info("Pay out cinietpay");
|
|
||||||
Log::info(json_encode($responseData));
|
|
||||||
|
|
||||||
if ($responseCode == 200) {
|
if ($responseCode == 200) {
|
||||||
|
|
||||||
$transaction->update([
|
$transaction->update([
|
||||||
'aggregator_payment_ref' => $responseData->data[0]?->transaction_id,
|
'aggregator_payment_ref' => $responseData->data[0][0]?->transaction_id,
|
||||||
'status' => $responseData->data[0]?->treatment_status,
|
'status' => $this->convertTransfertStatus($responseData->data[0][0]?->treatment_status) ,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return $this->successResponse([
|
return $this->successResponse([
|
||||||
|
@ -326,6 +323,7 @@ class CinetpayController extends Controller
|
||||||
}catch (Throwable $e){
|
}catch (Throwable $e){
|
||||||
Log::error("Error CinetPay transfert payment");
|
Log::error("Error CinetPay transfert payment");
|
||||||
$errorMessage = $e->getMessage();
|
$errorMessage = $e->getMessage();
|
||||||
|
Log::error("Response data :: ".json_encode($responseData ?? ''));
|
||||||
Log::error($errorMessage);
|
Log::error($errorMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -370,15 +368,11 @@ class CinetpayController extends Controller
|
||||||
|
|
||||||
$responseData = json_decode($response->getBody()->getContents());
|
$responseData = json_decode($response->getBody()->getContents());
|
||||||
$responseCode = $response->getStatusCode();
|
$responseCode = $response->getStatusCode();
|
||||||
|
|
||||||
Log::info("Pay out check result");
|
|
||||||
Log::info(json_encode($responseData));
|
|
||||||
|
|
||||||
if ($responseCode == 200) {
|
if ($responseCode == 200) {
|
||||||
|
|
||||||
$transaction->update([
|
$transaction->update([
|
||||||
'aggregator_payment_ref' => $responseData->data[0]?->transaction_id,
|
'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) {
|
} catch (Throwable $e) {
|
||||||
Log::info("Get Cinetpay Transfert Status Error");
|
Log::info("Get Cinetpay Transfert Status Error");
|
||||||
$errorMessage = $e->getMessage();
|
$errorMessage = $e->getMessage();
|
||||||
|
Log::error("Response data :: ".json_encode($responseData ?? ''));
|
||||||
Log::info($errorMessage);
|
Log::info($errorMessage);
|
||||||
$transaction->update([
|
$transaction->update([
|
||||||
'status' => PaymentTransactionStatus::REFUSED
|
'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)
|
public function capturePaymentResult(Request $request)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue