在magento中自动从paypal捕获付款

Posted

技术标签:

【中文标题】在magento中自动从paypal捕获付款【英文标题】:automatically capture payment from paypal in magento 【发布时间】:2013-04-11 14:26:41 【问题描述】:

我正在使用 magento 1.7.0。 我已经在我的 magento 商店中集成了 paypal。我在 paypal 快速结帐方式中选择了 payment_action 授权。现在我想在两天后自动捕获付款。有任何解决方案如何自动捕获付款吗?

【问题讨论】:

【参考方案1】:

看看@http://www.sumoheavy.com/capturing-payment-on-shipment-creation-magento/和http://inchoo.net/ecommerce/magento/magento-orders/automatically-invoice-ship-complete-order-in-magento/

创建一个 magento cron 作业 (see)。在您的 cron 作业中搜索所有超过 2 天且少于“X”天的订单,付款方式为 paypal,订单状态为 pending

//$orders = get order filter see http://***.com/questions/11042343/magento-get-all-orders-numbers-shipped-as-overnight-between-two-dates

foreach($orders as $order)
    if(check payment type and status)

        if (!$order->canInvoice()) 
                return $this;
        

        $invoice = Mage::getModel('sales/service_order', $order)->prepareInvoice();
        if (!$invoice->getTotalQty()) 
                return $this;
        


        $invoice->setRequestedCaptureCase('online');
        $invoice->register();
        $invoice->getOrder()->setIsInProcess(true);
        $transactionSave = Mage::getModel('core/resource_transaction')
        ->addObject($invoice)
        ->addObject($invoice->getOrder());

        $transactionSave->save();
    

【讨论】:

【参考方案2】:

我不确定 Magento 中是否有设置在 2 后自动捕获付款,但如果您想使用 PayPal 的 DoCapture API,可以创建自己的界面来执行此操作。如果您想自动化该过程,您可以为此创建一个脚本并设置一个 cron 作业来检查交易日期并执行捕获。

【讨论】:

以上是关于在magento中自动从paypal捕获付款的主要内容,如果未能解决你的问题,请参考以下文章

Magento 2:来自印度以外的Paypal付款问题

Magento 2.2 Paypal 付款方式选项未显示在结帐中

如何从magento 1.9中的paypal标准中删除checkout

Magento 2.3.2 PayPal Payflow 付款失败

如何设置 PayPal Pro 以直接从 Magento 2 的网站通过借记卡/信用卡付款?

即使 PayPal 付款失败,Magento 订单状态也会更新为“处理中”