public static function getAuthorizeDetails(AmzPayments $amz_payments, $service, $auth_ref_id)
 {
     $auth_details_request = new OffAmazonPaymentsService_Model_GetAuthorizationDetailsRequest();
     $auth_details_request->setSellerId($amz_payments->merchant_id);
     $auth_details_request->setAmazonAuthorizationId($auth_ref_id);
     try {
         return $service->getAuthorizationDetails($auth_details_request);
     } catch (OffAmazonPaymentsService_Exception $e) {
         return false;
     }
 }
 /**
  * Perform the getAuthroizationDetails request for the order
  *
  * @param string $amazonAuthorizationReferenceId
  *            authorization transaction
  *            to query
  *            
  * @return OffAmazonPaymentsService_Model_GetAuthorizationDetailsResponse
  *         service response
  */
 public function getAuthorizationDetails($amazonAuthorizationReferenceId)
 {
     $getAuthorizationDetailsRequest = new OffAmazonPaymentsService_Model_GetAuthorizationDetailsRequest();
     $getAuthorizationDetailsRequest->setSellerId($this->_sellerId);
     $getAuthorizationDetailsRequest->setAmazonAuthorizationId($amazonAuthorizationReferenceId);
     return $this->_service->getAuthorizationDetails($getAuthorizationDetailsRequest);
 }
Example #3
0
	function getAuthorizationDetails ($amazonAuthorizationId, $order) {
		$client = $this->getOffAmazonPaymentsService_Client();
		try {

			$getAuthorizationDetailsRequest = new OffAmazonPaymentsService_Model_GetAuthorizationDetailsRequest();
			$getAuthorizationDetailsRequest->setSellerId($this->_currentMethod->sellerId);
			$getAuthorizationDetailsRequest->setAmazonAuthorizationId($amazonAuthorizationId);
			$getAuthorizationDetailsResponse = $client->getAuthorizationDetails($getAuthorizationDetailsRequest);

		} catch (Exception $e) {
			$this->amazonError(__FUNCTION__ . ' ' . $e->getMessage(), $e->getCode());
			return;
		}
		$this->loadHelperClass('amazonHelperGetAuthorizationDetailsResponse');
		$amazonHelperGetAuthorizationDetailsResponse = new amazonHelperGetAuthorizationDetailsResponse($getAuthorizationDetailsResponse, $this->_currentMethod);
		$storeInternalData = $amazonHelperGetAuthorizationDetailsResponse->getStoreInternalData();
		$this->storeAmazonInternalData($order, $getAuthorizationDetailsRequest, $getAuthorizationDetailsResponse, NULL, NULL, $storeInternalData);

		return $getAuthorizationDetailsResponse;
	}
Example #4
0
 public function refreshAuthorization($auth_id)
 {
     $service = $this->getService();
     $authorization_request = new OffAmazonPaymentsService_Model_GetAuthorizationDetailsRequest();
     $authorization_request->setSellerId($this->merchant_id);
     $authorization_request->setAmazonAuthorizationId($auth_id);
     try {
         $response = $service->getAuthorizationDetails($authorization_request);
         $details = $response->getGetAuthorizationDetailsResult()->getAuthorizationDetails();
         // $address = $details->getAuthorizationBillingAddress();
         $sql_arr = array('amz_tx_status' => pSQL((string) $details->getAuthorizationStatus()->getState()), 'amz_tx_last_change' => pSQL(strtotime((string) $details->getAuthorizationStatus()->getLastUpdateTimestamp())), 'amz_tx_last_update' => pSQL(time()));
         Db::getInstance()->update('amz_transactions', $sql_arr, " amz_tx_amz_id = '" . pSQL($auth_id) . "'");
         if ((string) $details->getAuthorizationStatus()->getState() == 'Declined') {
             $reason = (string) $details->getAuthorizationStatus()->getReasonCode();
             if ($reason == 'AmazonRejected') {
                 $order_ref = AmazonTransactions::getOrderRefFromAmzId($auth_id);
                 $this->cancelOrder($order_ref);
             }
             $this->intelligentDeclinedMail($auth_id, $reason);
             if ($this->decline_status_id > 0) {
                 $order_ref = AmazonTransactions::getOrderRefFromAmzId($auth_id);
                 AmazonTransactions::setOrderStatusDeclined($order_ref, true);
             }
         } elseif ((string) $details->getAuthorizationStatus()->getState() == 'Open') {
             $order_ref = AmazonTransactions::getOrderRefFromAmzId($auth_id);
             AmazonTransactions::setOrderStatusAuthorized($order_ref, true);
         } elseif ((string) $details->getAuthorizationStatus()->getState() == 'Closed' && (string) $details->getAuthorizationStatus()->getReasonCode() == 'MaxCapturesProcessed') {
             $captureIds = $details->getIdList()->getMember();
             if (isset($captureIds[0])) {
                 $captureId = (string) $captureIds[0];
                 $order_ref = AmazonTransactions::getOrderRefFromAmzId($auth_id);
                 $capture_request = new OffAmazonPaymentsService_Model_GetCaptureDetailsRequest();
                 $capture_request->setSellerId($this->merchant_id);
                 $capture_request->setAmazonCaptureId($captureId);
                 try {
                     $response = $service->getCaptureDetails($capture_request);
                     $details = $response->getGetCaptureDetailsResult()->getCaptureDetails();
                     $sql_arr = array('amz_tx_order_reference' => pSQL($order_ref), 'amz_tx_type' => 'capture', 'amz_tx_time' => pSQL(time()), 'amz_tx_expiration' => 0, 'amz_tx_amount' => pSQL((string) $details->getCaptureAmount()->getAmount()), 'amz_tx_status' => pSQL($details->getCaptureStatus()->getState()), 'amz_tx_reference' => pSQL($details->getCaptureReferenceId()), 'amz_tx_amz_id' => pSQL($details->getAmazonCaptureId()), 'amz_tx_last_change' => pSQL(time()), 'amz_tx_last_update' => pSQL(time()));
                     $checkQuery = 'SELECT * FROM ' . _DB_PREFIX_ . 'amz_transactions
                         WHERE `amz_tx_order_reference` = \'' . pSQL($order_ref) . '\'
                         AND `amz_tx_type` = \'capture\' 
                         ';
                     if ($row = Db::getInstance()->getRow($checkQuery)) {
                         return;
                     } else {
                         Db::getInstance()->insert('amz_transactions', $sql_arr);
                         AmazonTransactions::setOrderStatusCapturedSuccesfully($order_ref);
                     }
                 } catch (OffAmazonPaymentsService_Exception $e) {
                     echo 'ERROR: ' . $e->getMessage();
                 }
             }
         }
     } catch (OffAmazonPaymentsService_Exception $e) {
         echo 'ERROR: ' . $e->getErrorMessage();
     }
 }