分类归档 支付平台

通过清心醉

magento paypal多货币支付 快速支付

以下为快速支付方式,其实和标准支付差不多,只是多了些修改:

这个功能的修改涉及到5个核心文件

先来说下需要修改的几个文件路径

app/code/core/Mage/Paypal/Model/Express.php

app/code/core/Mage/Paypal/Model/Cart.php

app/code/core/Mage/Paypal/Model/Express/Checkout.php

app/code/core/Mage/Sales/Model/Order/Payment.php

app/code/core/Mage/Core/Model/Store.php

主要要修改什么 先在这里说明一下,大家都知道paypal是可以支付多种货币的,关于这点可以下载官网的示例来看,想要改变支付的货币种类 要修改的一个是传给paypal的参数也就是货币符号,另外一个就是价格,虽然magento前台页面以及购物车看到的是日元,关键在于再给paypal传产品价格的时候用的是基础货币,而不是当前货币换算出来的结果,下面我就来发出关键代码,为有需要的同学提供方便

app/code/core/Mage/Paypal/Model/Express.php

/**
* Order payment
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return Mage_Paypal_Model_Express
*/
public function order(Varien_Object $payment, $amount)
{
<span style=”white-space:pre”> </span>…
//修改 :去掉getBaseCurrentCurrency() 中的Base
$formatedPrice = $order->getCurrentCurrency()->formatTxt($amount);
<span style=”white-space:pre”> </span>…

/**
* Capture payment
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return Mage_Paypal_Model_Express
*/
public function capture(Varien_Object $payment, $amount)
{
n style=”white-space:pre”> </span>…
$formatedPrice = $order->getCurrentCurrency()->formatTxt($amount);//修改

n style=”white-space:pre”> </span>…

/**
* Place an order with authorization or capture action
*
* @param Mage_Sales_Model_Order_Payment $payment
* @param float $amount
* @return Mage_Paypal_Model_Express
*/
protected function _placeOrder(Mage_Sales_Model_Order_Payment $payment, $amount)
{
$order = $payment->getOrder();

// prepare api call
$token = $payment->getAdditionalInformation(Mage_Paypal_Model_Express_Checkout::PAYMENT_INFO_TRANSPORT_TOKEN);
$api = $this->_pro->getApi()
->setToken($token)
->setPayerId($payment->
getAdditionalInformation(Mage_Paypal_Model_Express_Checkout::PAYMENT_INFO_TRANSPORT_PAYER_ID))
->setAmount($amount)
->setPaymentAction($this->_pro->getConfig()->paymentAction)
->setNotifyUrl(Mage::getUrl(‘paypal/ipn/’))
->setInvNum($order->getIncrementId())
->setCurrencyCode(Mage::app()->getStore()->getCurrentCurrencyCode())//修改
->setPaypalCart(Mage::getModel(‘paypal/cart’, array($order)))
->setIsLineItemsEnabled($this->_pro->getConfig()->lineItemsEnabled)
;
if ($order->getIsVirtual()) {
$api->setAddress($order->getBillingAddress())->setSuppressShipping(true);
} else {
$api->setAddress($order->getShippingAddress());
$api->setBillingAddress($order->getBillingAddress());
}

// call api and get details from it
$api->callDoExpressCheckoutPayment();

$this->_importToPayment($api, $payment);
return $this;
}

/**
* Call DoAuthorize
*
* @param int $amount
* @param Varien_Object $payment
* @param string $parentTransactionId
* @return Mage_Paypal_Model_Api_Abstract
*/
protected function _callDoAuthorize($amount, $payment, $parentTransactionId)
{
$api = $this->_pro->resetApi()->getApi()
->setAmount($amount)
->setCurrencyCode(Mage::app()->getStore()->getCurrentCurrencyCode())//修改
->setTransactionId($parentTransactionId)
->callDoAuthorization();

$payment->setAdditionalInformation($this->_authorizationCountKey,
$payment->getAdditionalInformation($this->_authorizationCountKey) + 1
);

return $api;
}
app/code/core/Mage/Paypal/Model/Cart.php
/**
* (re)Render all items and totals
*/
protected function _render()
{
if (!$this->_shouldRender) {
return;
}

// regular items from the sales entity
$this->_items = array();
foreach ($this->_salesEntity->getAllItems() as $item) {
if (!$item->getParentItem()) {
$this->_addRegularItem($item);
}
}
end($this->_items);
$lastRegularItemKey = key($this->_items);

// regular totals
$shippingDescription = ”;
if ($this->_salesEntity instanceof Mage_Sales_Model_Order) {
$shippingDescription = $this->_salesEntity->getShippingDescription();
$this->_totals = array(
self::TOTAL_SUBTOTAL => $this->_salesEntity->getSubtotal(),//修改
self::TOTAL_TAX => $this->_salesEntity->getTaxAmount(),//修改
self::TOTAL_SHIPPING => $this->_salesEntity->getShippingAmount(),//修改
self::TOTAL_DISCOUNT => abs($this->_salesEntity->getDiscountAmount()),//修改
);
$this->_applyHiddenTaxWorkaround($this->_salesEntity);
} else {
$address = $this->_salesEntity->getIsVirtual() ?
$this->_salesEntity->getBillingAddress() : $this->_salesEntity->getShippingAddress();
$shippingDescription = $address->getShippingDescription();
$this->_totals = array (
self::TOTAL_SUBTOTAL => $this->_salesEntity->getSubtotal(),//修改
self::TOTAL_TAX => $address->getTaxAmount(),//修改
self::TOTAL_SHIPPING => $address->getShippingAmount(),//修改
self::TOTAL_DISCOUNT => abs($address->getDiscountAmount()),//修改
);
$this->_applyHiddenTaxWorkaround($address);
}
$originalDiscount = $this->_totals[self::TOTAL_DISCOUNT];
/**
* Check the line items and totals according to PayPal business logic limitations
*/
protected function _validate()
{
$this->_areItemsValid = false;
$this->_areTotalsValid = false;

$referenceAmount = $this->_salesEntity->getGrandTotal();//修改

$itemsSubtotal = 0;
foreach ($this->_items as $i) {
$itemsSubtotal = $itemsSubtotal + $i[‘qty’] * $i[‘amount’];
}
$sum = $itemsSubtotal + $this->_totals[self::TOTAL_TAX];
if (!$this->_isShippingAsItem) {
$sum += $this->_totals[self::TOTAL_SHIPPING];
}
if (!$this->_isDiscountAsItem) {
$sum -= $this->_totals[self::TOTAL_DISCOUNT];
}

/**
* Add a usual line item with amount and qty
*
* @param Varien_Object $salesItem
* @return Varien_Object
*/
protected function _addRegularItem(Varien_Object $salesItem)
{
if ($this->_salesEntity instanceof Mage_Sales_Model_Order) {
$qty = (int) $salesItem->getQtyOrdered();
$amount = (float) $salesItem->getPrice();//修改
// TODO: nominal item for order
} else {
$qty = (int) $salesItem->getTotalQty();
$amount = $salesItem->isNominal() ? 0 : (float) $salesItem->getCalculationPrice();//修改
}
// workaround in case if item subtotal precision is not compatible with PayPal (.2)
$subAggregatedLabel = ”;
if ($amount – round($amount, 2)) {
$amount = $amount * $qty;
$subAggregatedLabel = ‘ x’ . $qty;
$qty = 1;
}

// aggregate item price if item qty * price does not match row total
if (($amount * $qty) != $salesItem->getRowTotal()) {//修改
$amount = (float) $salesItem->getRowTotal();//修改
$subAggregatedLabel = ‘ x’ . $qty;
$qty = 1;
}

return $this->addItem($salesItem->getName() . $subAggregatedLabel, $qty, $amount, $salesItem->getSku());
}

/**
* Add “hidden” discount and shipping tax
*
* Go ahead, try to understand ]:->
*
* Tax settings for getting “discount tax”:
* – Catalog Prices = Including Tax
* – Apply Customer Tax = After Discount
* – Apply Discount on Prices = Including Tax
*
* Test case for getting “hidden shipping tax”:
* – Make sure shipping is taxable (set shipping tax class)
* – Catalog Prices = Including Tax
* – Shipping Prices = Including Tax
* – Apply Customer Tax = After Discount
* – Create a shopping cart price rule with % discount applied to the Shipping Amount
* – run shopping cart and estimate shipping
* – go to PayPal
*
* @param Mage_Core_Model_Abstract $salesEntity
*/
private function _applyHiddenTaxWorkaround($salesEntity)
{
$this->_totals[self::TOTAL_TAX] += (float)$salesEntity->getHiddenTaxAmount();//修改
$this->_totals[self::TOTAL_TAX] += (float)$salesEntity->getShippingHiddenTaxAmount();//修改
}
app/code/core/Mage/Paypal/Model/Express/Checkout.php
/**
* Checkout with PayPal image URL getter
* Spares API calls of getting “pal” variable, by putting it into cache per store view
* @return string
*/
public function getCheckoutShortcutImageUrl()
{
// get “pal” thing from cache or lookup it via API
$pal = null;
if ($this->_config->areButtonsDynamic()) {
$cacheId = self::PAL_CACHE_ID . Mage::app()->getStore()->getId();
$pal = Mage::app()->loadCache($cacheId);
if (-1 == $pal) {
$pal = null;
} elseif (!$pal) {
$pal = null;
$this->_getApi();
try {
$this->_api->callGetPalDetails();
$pal = $this->_api->getPal();
Mage::app()->saveCache($pal, $cacheId, array(Mage_Core_Model_Config::CACHE_TAG));
} catch (Exception $e) {
Mage::app()->saveCache(-1, $cacheId, array(Mage_Core_Model_Config::CACHE_TAG));
Mage::logException($e);
}
}
}

return $this->_config->getExpressCheckoutShortcutImageUrl(
Mage::app()->getLocale()->getLocaleCode(),
$this->_quote->getGrandTotal(),//修改去掉base
$pal
);
}

/**
* Reserve order ID for specified quote and start checkout on PayPal
* @return string
*/
public function start($returnUrl, $cancelUrl)
{
$this->_quote->collectTotals();

if (!$this->_quote->getGrandTotal() && !$this->_quote->hasNominalItems()) {
Mage::throwException(Mage::helper(‘paypal’)->__(‘PayPal does not support processing orders with zero amount. To complete your purchase, proceed to the standard checkout process.’));
}

$this->_quote->reserveOrderId()->save();
// prepare API
$this->_getApi();
$this->_api->setAmount($this->_quote->getGrandTotal())//修改去掉base
//->setCurrencyCode($this->_quote->getBaseCurrencyCode())///修改为当前货币code
->setCurrencyCode(Mage::app()->getStore()->getCurrentCurrencyCode())
->setInvNum($this->_quote->getReservedOrderId())
->setReturnUrl($returnUrl)
->setCancelUrl($cancelUrl)
->setSolutionType($this->_config->solutionType)
->setPaymentAction($this->_config->paymentAction)
app/code/core/Mage/Sales/Model/Order/Payment.php
/**
* Capture the payment online
* Requires an invoice. If there is no invoice specified, will automatically prepare an invoice for order
* Updates transactions hierarchy, if required
* Updates payment totals, updates order status and adds proper comments
*
* TODO: eliminate logic duplication with registerCaptureNotification()
*
* @return Mage_Sales_Model_Order_Payment
* @throws Mage_Core_Exception
*/
public function capture($invoice)
{
if (is_null($invoice)) {
$invoice = $this->_invoice();
$this->setCreatedInvoice($invoice);
return $this; // @see Mage_Sales_Model_Order_Invoice::capture()
}
$amountToCapture = $this->_formatAmount($invoice->getGrandTotal());//修改
$order = $this->getOrder();

/**
* Decide whether authorization transaction may close (if the amount to capture will cover entire order)
* @param float $amountToCapture
* @return bool
*/
protected function _isCaptureFinal($amountToCapture)
{
$amountToCapture = $this->_formatAmount($amountToCapture, true);
$orderGrandTotal = $this->_formatAmount($this->getOrder()->getGrandTotal(), true);//修改
if ($orderGrandTotal == $this->_formatAmount($this->getAmountPaid(), true) + $amountToCapture)//修改

{

if (false !== $this->getShouldCloseParentTransaction()) {
$this->setShouldCloseParentTransaction(true);
}
return true;
}
return false;
}
app/code/core/Mage/Core/Model/Store.php

/**
* Round price
*
* @param mixed $price
* @return double
*/
public function roundPrice($price)
{ //类的内容修改为以下: JYP是使用计价货币
if(Mage::app()->getStore()->getCurrentCurrencyCode()==’JPY’){
return round($price,0);
}else{
return round($price, 2);
}
}

/**
* Format price with currency filter (taking rate into consideration)
*
* @param double $price
* @param bool $includeContainer
* @return string
*/
public function formatPrice($price, $includeContainer = true)
{  //重写该类的方法.
if ($this->getCurrentCurrency()) {
if(Mage::app()->getStore()->getCurrentCurrencyCode()==’JPY’){
return $this->getCurrentCurrency()->format($price, array(‘precision’=>0), $includeContainer);
}else{
return $this->getCurrentCurrency()->format($price, array(), $includeContainer);
}
}
return $price;
}

通过清心醉

magento集成alipay设置

插件就不传了,可以直接去magento官网下载。
还有去alipal商家申请商家。具体搜索“alipay商家”。
一般审核的工作日为5日:步骤参考alipay要求。选择双功能交易/担保交易。
审核成功后,将获得:合作者身份(PID)和安全校验码(Key)。
好了,开始magento后台设置:
系统->配置->支付方式->CosmoCommerce Alipay Payment
已启用:是
标题:alipay #自己修改
Contract Type: Create Partner Trade By Buyer
Gateway: 留空
Partner ID:写上商家服务获取的合作者身份(PID)
Security Code:写上商家服务获取的安全校验码(KEY)
Seller Email:写上商家帐号,这些虽然写的是邮件形式,但也可以用手机注册帐号类的来填写。
Transport: https #这个不用改,https安全
接下来后面的,就看自己的条件来写了。

其实最主要的就是Parther ID,Security Code还有Seller Email.
Seller Email如果写错,会出现“错误代码 SELLER_NOT_IN_SPECIFIED_SELLERS”。

通过清心醉

magento google checkout

Google Checkout服务类似e-bay的PayPal,外贸等网站可以将Checkout系统整合到自己的支付平台,在线购买者可以通过它实现安全付款。每完成一次支付后,Google Checkout向商家收取0.20美元的手续费以及交易商品价格2%的费用。

Google checkout的用户群主要于外贸行业的个人及企业,当然也包括喜欢在国外买东西。如果大家觉得使用Paypal非常不爽的话,可以尝试使用一下 Google Checkout,当然Magento也已经很好的Google Checkout,但是配置可能会有点复杂,下面一一详细解析:
设置(Setup)
Google Checkout的相关配置要比其他的支付方法的配置复杂很多。除了配置Magento中的设置 ,您还必须配置您的Google Checkout的卖家帐户,这样才能整合到Magento中。如果您想在你的网店中部署Google Checkout,请注意这些限制:
1. 您的网站必须提供网页服务的标准端口(80和/或443)。
2. 如果你是PHP的CGI方式安装,您将需要启用mod_rewrite。Google Checkout使用HTTP授权回调。CGI进程不会接受Apache的头部(Headers),所以需要通过使用mod_rewrite类实现一个授 权的环境变量以便在.htaccess设置一个hack(so a hack in .htaccess utilizing mod_rewrite was implemented to pass the authorization as an environment variable)。
3. 如果您启用了根据重量计算运费的话,您的包裹将限于150磅。USPS进一步限制到70磅。
使用Google Checkout卖家账号整合Magento(Integrating Magento using Google Checkout seller account)
要整合Google Checkout和Magento的第一步是配置好你的Google Checkout卖家账号。这些设置可以在每个页面中左侧栏的Settings标签中找到。接下来页面包含了与Magento整合的最相关的配置设置。如 果你还没有Google Checkout的卖家帐户,您可以在System > Configuration中的Google API标签点击相关的链接。
* Profile – 请输入您的商业信息,它将会出现在Google Checkout的界面处显示给您的客户看,包括您的address、Business Name、email address、relevant URLs和policies。当您完成时,单击页面下边的Save Profile按钮保存。
* Preferences

当下好了订单后,你的客户的信用卡会自动通过Google Checkout来进行授权(Authorized)。不过,您可以选择是否只想要Authorize,或Authorize and Charge。了解更多有关信用卡收费及下好订单后如何操作的信息,查看下面一节:Handling completed orders in Google Checkout。

设定您是否想Google Checkout在任何订单交易完成时向您发送电子邮件通知。这是与Magento的通知分开的。
当完成后,点击页面下方的Save Preferences按钮保存。
* 整合(Integration)

Shopping cart post security – 此复选框是不是强制性的,但是我们建议选择它。

API Callback URL – 这个URL的格式应该为:https://yourserver.com/base_path/index.php/googlecheckout /api.index.php。如果启用了mod_rewrite, index.php可以省略。回调方法(Callback method)必须是XML格式。

Advanced settings – 这些设置将决定在订单页面中Google Checkout发送回Magnto什么样的信息。
+ Should be checked
# 在新订单通知中提供first name、 last name、买家的姓名和OrderRecipient。
# 在新订单通知中返回买家的收货电话号码(buyer’s ship-to phone number)。
# 在新订单通知中返回买家的账单电话号码(buyer’s billing phone number)
+ Should NOT be checked
# 通知中必须包括的任何涉及Google推广的款项(amounts involving a Google promotion)
# 需要为通知的致谢(notification acknowledgments)指定通知的序列号。这可以查看到在测试中出现错误。在账号信息下方的页面右侧是Merchant ID 和 Merchant Key。这些在Magento中配置Google Checkout时有用。
当您完成后,单击页面底部的Save按钮。您现在已经为整合配置好了Google Checkout的相关Magento整合配置。
在Magento中设置Google Checkout的配置(Setting up Google Checkout configuration in Magento)
完成Google Checkout的整合,你现在必须配置您在Magento设置。要做到这一点,在后台中的System > Configuration,并点左侧栏的Google API标签。

* Main Settings – 最主要的设置都在Google Checkout 那一个操作区域.

Enable – 选择Yes可以让你的客户在网店中可以通过Google Checkout功能结账。这将在购物车中除了默认的Magento的Checkout按钮外,还添加一个Google Checkout按钮.

Sandbox – 这是Google的订单测试界面的名称。如果您选择No,Google Checkout按钮将直接转向checkout.google.com。此处下的订单都是真实的,所以当订单完成,支付将被处理。如果您选择 Yes,Google Checkout按钮将直接转向sandbox.google.com/checkout。这跟真正的的订单结账界面是一样的结帐格式,但这里的订单只是 为了测试,所以当订单完成,支付实际上没有被处理(了解这些请产看网站的文字说明)。

Debug – 如果选择了Yes,所有Magento和Google Checkout间的数据通讯将会保存在数据库中,Google Checkout卖家账号中的 Tools > Integration Console 也一样.

Merchant ID 和 Merchant Key – 这些值都是由Google提供,并且每个账号都是唯一的。你可以在Google Checkout卖家账号中找到:在Settings > Integration,页面右侧的Account Information。

Checkout Image Style – 此选项控制Google Checkout按钮的样式。有三个大小(small、medium和large),和透明(transparent)和每个的白色版本(取决于网站背景)。

Location – 此选项取决于你在Google卖家账号中选择的类型。如果你有U.S.账号就选择United States,如果你有U.K.账号就选择United Kingdom。现在只有Google Checkout支持的一些国家。

New order status – 此选项决定使用Google Checkout建立的新订单的订单状态.

Continue Shopping URL – 当客户在Google Checkout中处理完了订单后,点击Return to [Business Name]按钮返回的URL地址在此处设定
+ 这可以是任何类型的页面(CMS页面、分类页面或产品页面),例如thank-you-for-shopping、apparel/specials。
+ 也可以是其他的URL,例如http://www.google.com。
+ 如果留空,将会自动返回到网站的主页。

Hide Cart Contents During Checkout – 开启此选项,当客户在Google Checkout页面点击返回的按钮回到Magento的购物车页面中,这将隐藏的购物车内容。
* Shipping Settings – 在Google Checkout中你可以有三个选项给发货设置。

Merchant Calculated – 在同一时间,此选项无法跟其他选项一起启用,不然当你的客户在结账是会收到错误信息。
+ Enable Merchant Calculated – 如果选择Yes,将会为客户提供此选项。
+ Allowed Methods – 每次点击Add Shipping Method按钮,您将可以在一个下拉菜单中选择发货方法,并为每个方法输入一个默认价格(Default Price)。所有你已经添加的发货方法都会在Google Checkout中的Shipping & Handling下拉菜单中显示.

Carrier Calculated
+ Enable Carrier Calculated – 如果选择Yes,将会为客户提供此选项。
+ Carrier Calculated Methods – 所有在此处选择的发货方法都会在Google Checkout中的Shipping & Handling下拉菜单中显示。
+ Delivery Address Category – 常用的客户收货地址类型:Commercial和Residential。
+ Default price for methods – Google Checkout要求发货都有一个默认价格,但是这个会给带回来的包裹的实际价格所代替。
+ Default Package Width/Height/Length (in) – Google Checkout要求为计算费用的包裹设定一个默认值。

Flat Rate – 此选项可以设定客户可以选择的三种方法。
+ Enable Flat Rate – 如果选择Yes,将会为客户提供此选项。
+ Rate 1/2/3 Title – 这会作为发货方法的标题显示在Shipping & Handling 下拉菜单中。
+ Rate 1/2/3 Amount – 这会作为发货方法的价格显示在Shipping & Handling下拉菜单中。
当完成后,点击Save Config按钮,现在你的客户可以在结账时使用Google Checkout了。
前台和后台功能(Functionality on Front-End and Back-End)
客户使用Google Checkout结账(Customer Checkout with Google Checkout)
一旦您已经启用Google Checkout,您的客户现在可以在购物车中使用此结账方法。Google Checkout按钮将显示在默认Checkout按钮旁边。当客户单击它,他们将被引导到Google Checkout的界面。这是一个跟Magento的默认结账过程完全独立的过程。
1. 首先,您的客户将被要求登录到自己的Google帐户。这跟客户在你网店中的账号不一样。他们在这里提供的资料,如:姓名(name)、电子邮件(email)和地址(address),将被送回Magento并显示在订单信息中。
2. Magento将上传客户购物车中的所有的产品到Google Checkout页面,包括数量和价格。这在Google Checkout中是不能被直接更新的,但在Magento结账是可以的。如果要修改数量或删除项目,客户必须返回Magento进行这些修改。
3. 您的客户可以在Shipping & Handling下拉菜单中选择他们喜欢的方法。这个菜单中的方法是在Magento后台的Google API页面设置的(前面一节有介绍)。
4. 税收将根据Magento后台Sales > Tax中设置的指导方针来进行计算。在Google Checkout卖家账号Settings > Tax 中设置的指导方针对订单是没有任何影响的。
5. 如果您的客户选择了Keep my email address confidential,其真实的电子邮件地址不会被提供给Magento。在订单页面中显示的电子邮件地址将是sandbox.google.com 的域名,并且订单确认会被Google发送到用户的真实电子邮件地址。
6. 如果您的客户选择了I want to receive promotional email from [Business Name],从Google Checkout返回的电子邮件地址将定于网站的Newsletter。
7. 当你的客户完成后,他们会点击Place Your Order Now按钮。这将自动发送一个订单记录到你的Google Checkout卖家邮箱,并且Google会发送这些信息回Magento,在Sales > Orders中会生成一张新的订单。您的客户会看到订单确认信息,并有一个链接返回到您的网站。此外,如果您开启了电子邮件通知功能,您的客户可以收到订 单确认电子邮件,来自Google和Magento。
在Google Checkout中处理完成的订单(Handling completed orders in Google Checkout)
在第8章:管理订单将讨论到,一旦订单完成后,您将有能力创造发票(Invoices)、运输(Shipments)、信用备忘(Credit Memos)和取消(Cancellations)。对于通过Google Checkout生成的订单,这些操作也是一样的。更新Magento的同时也会更新Google Checkout的订单,反之亦然。在Google Checkout中,在Orders标签中会有一个订单列表。可以在这个列表表中进行操作(使用Action栏的按钮),或者通过点击Order Number进入订单页面修改。
* Invoice

当在Magneto中为通过Google Checkout生成的订单创建一个发票(Invoice)时,你可以选择Capture Payment。如果您选择了,这将会在Google Checkout中自动收费(Charged)。如果您只创建一个部分发票(发票只包含订单中的一部分数量),并捕捉付款(capture the payment),Google Checkout将部分收费。剩下的余额可在Magento或Google Checkout中收费。由于Google Checkout中不具备同等功能让Magento功能同步,所以在Magento中做的影响不会对Google Checkout中订单起作用(Because Google Checkout does not have an equivalent functionality to the Void feature in Magento, voiding an order in Magento will have no affect on the order in Google Checkout)。

如果订单是在Google Checkout中Charged,Magento将通过捕捉到的支付信息自动生成一张发票。在购买过程中订单收费了还是下拉订单后手动收费了,发表都会 被建立。如果订单只是在Google Checkout部分收费了(只可以通过手动完成此操作),在Magento中不会创建发票。
* Shipment

当在Magneto中为通过Google Checkout生成的订单创建一个货运(Shipment)时,在Google Checkout中会自动创建一个货运。这包括分批(Partial Shipments)。然而,Google Checkout不承认部分的出货量,因此,在Google Checkout中将没有任何迹象表明部分出货了。如果在Magent中创建了多个货运,每个都有跟踪信息,在Google Checkout中的单个货运将更新到一个多跟踪号码的列表。

如果在Google Checkout中创建一个货运,在Magento中不会创建任何货运。
* Credit Memo

如果在Magento中创建Credit Memo,并且你点击了Refund按钮(而不是Refund Offine按钮),该订单将会在Google Checkout中退款。这包括部分的Credit Memo。

如果在Google Checkout中订单退款了,Magento中不会创建任何Credit Memo。
* Cancel

如果你在Magento中取消订单,在Google Checkout中不会自动取消订单。

如果你在Google Checkout中取消订单,在Magento中将会自动取消订单。如果有部分的项目已经发票了或/和发货了(invoiced and/or shipped),只有剩下的一部分可以在Magento中取消。如果所有的项目都已经已经发票了或/和发货了(invoiced and/or shipped),Google Checkout仍然可以让你取消订单,然而这不会影响到Magento。

通过清心醉

PayPal帐号冻结等相关处理

根据维基百科的介绍,PayPal是目前全球最大的在线支付提供商,PayPal在多个国家的业务被视作属于金钱传送,有不少用者在不知情下被 PayPal冻结账户,账户内的钱也随之被PayPal扣押。通常的情况是:PayPal通过电子邮件通知客户账户由于风险安全问题受到限制,希望客户提 供一些资料(通常为但不限于客户的身份证明和账户注册地址证明);在PayPal通过审查相关信息并做出客户是否有悖于PayPal公司规定或法律规定的 判断后,PayPal会采取解除限制、终止向该客户提供服务或其他的解决方法。PayPal公司会最终将冻结资金归还给客户,除非由司法机关认定客户涉嫌 洗钱或其他金融犯罪。

PayPal在什么情况下帐户会遭受冻结

1.短时间内有大量现金流,比如一个新帐户,一个晚上收1000美圆,早上起来就被冻了。

2.收钱后马上withdraw.这个是最忌讳的,用一般思维去想这个问题,你收了钱就想跑,不冻你冻谁?

3.withdraw的时候一分钱都不剩。这个也是不安全的,如果当发生买家投诉的时候,势必无钱Refund,那么也是冻结的对象。所以建议大家有 3000,withdraw个2500,留个500备用。这种情况冻结的帐户一般会要求提供前1个月的买家所购商品的存货证明,所以你想提光钱也可以,帐 户1个月没收钱的情况下提光是相对安全的。

4.短时间内多人投诉。被投诉的帐户是open issue状态,如果你做的生意是单笔金额比较小的,那我还是建议你直接refund,好汉不吃眼前亏,refund之后投诉就取消了,帐户状态不再 open issue.毕竟亏点就亏点吧,保住帐户要紧,留着青山在,不怕没柴烧。但是如果是单笔金额较大的,那你就自己去权衡考虑了。遇到骗子或者蛮不讲理的客 户,也不要怕,向PayPal提交相关发货凭证,还是会胜诉的。

5.帮人转钱,或者自己不同的帐户转钱。帮人转钱,就是别人的钱汇入你的帐户,通过你的渠道进行撤资。这个是非常不安全的,而且一冻结就是一片。自己 的帐户转钱,如果是同一个名字的高级帐户和个人帐户转是没问题的,如果是不同名字的,实际也不存在交易的转钱是很危险的,其性质和前者一样。所以这种傻事 情千万不要做

6.多个帐户和关联帐户的问题。关联帐户是PayPal的系统判断,但是到实际冻结的时候还是人工判断。系统判断关联的途径我知道的有3种:1.同一 台电脑登陆的不同帐号 2.同一个IP登陆的不同帐号 3.收过同一个ebay卖家ID钱的不同帐号。关联帐户可以追踪哪几个帐号是隶属于一个卖家,所以为什么很多人帐户被冻结了再去开新帐户,开了还没怎么用 就又冻结了。所以大家在登陆的时候要避免这个问题。

7.敏感货物名称。在PayPal付款商品名称中出现大量涉及品牌的词,比如LV,Nike,Gucci,还卖很便宜,明眼人一看就是假货。所以还是避免一下的好

怎样避免冻结

1.在做完认证后立即去申请提高到10000万美圆/月。这个认证不是完全为了提高10000美圆的额度,而是防止取款的时候遭到冻结,很多新帐户在 第一次withdraw的时候会被冻结,PayPal也是为了资金安全,所以当你提交了相关资料后,PayPal在你withdraw时就不会随便冻结 你。方法:传真4页材料。1.申请,写你的帐户是什么,提交了什么材料,需要提高到10000的额度。2.中国银行储蓄存折的第一页,有名字帐号和开户 行。3.能证明你地址的帐单(如信用卡帐单,水电煤帐单等)4.护照 或 驾驶执照 或 身份证。将4页材料传真到 001-402-537-5750

2.在每次完成交易发货后,把tracking number填入到PayPal中去。PayPal在你帐户频繁收款时,你的货物在网上查买家全部签收,那么他也不会轻易冻结你。

3.在帐户冻结的时候尽量不要开新帐户。PayPal在你帐户很活跃的时候冻结你的帐户,而你又出于生意的需要,没办法只能开新帐户,建议你先发传真解决,到时候开了一堆不同人名字的帐户,都关联的。最后的结果就是被PayPal parting ways.

怎样解冻

本来以为PayPal解冻是不可能的。因为当我的帐户第一次被冻结的时候,我懵了,因为我不知道帐户还会被冻结,而且我当时不知道冻结的钱还能不能取出来。我就拼了命地发传真,当时用的是Moneybookers的传真,发了还是解不了冻。

可是后来发现PayPal解冻还是可以的,连5个以上关联帐户的都可以解冻。只要你有耐心,不停发传真,一般一个帐户在2次传真后解冻的概率是很大的。只要你按照他说的做,不会不给你解冻的。流氓也是讲点道理的。

一般常见的需要提供的材料

有效的账单 用来证明你的地址 一般可以用信用卡帐单地址,水电煤气手机电话帐单地址,必须名字和注册的完全一样

护照或驾驶执照 用来证明你的身份

充足的存货证明 证明你有充足的货物能发货,一般需要一张填有货物数量的合同或发票就可以了。PayPal要求提供冻结日起前一个月收款的货物数量即可

供货商的信息(电话 地址 email 传真)  能有份商业发票,发票上附带这些信息,或者是合同

传真的时候尽量要注意图片的质量,最好直接扫描黑白的,彩色的打印出来会一团黑。

《PAYPAL关闭、冻结用户帐户的规定》的中文翻译

帐户的关闭及冻结

本章程最新修订于2003年2月7日

通常地,除了《用户协议》7.2部分所罗列的权利之外,某一个PAYPAL账户若出现如下列举的任何情况之一,PAYPAL亦有权依据自身之判断,冻结其使用汇款及抽款的功能。

如果您的账户被冻结,若争议仅限于某一项交易,我方将仅仅对与该项交易有关的金额给予冻结。

如果您的账户已被冻结,PAYPAL将通过电子邮件通知您,并要求您提供与您账户相关的信息材料。我方会迅速地对事件展开调查。

如若调查结果对贵方有利,我方将恢复您的账户。如若调查结果于贵方不利,PAYPAL会将钱返还给汇款人,并将贵方账户中的余额解冻。PAYPAL为 防范撤款风险,将继续冻结贵方账户180天,或者会关闭您的账户,然后通知贵方。并且将贵方账户中的全部钱款(减去有争议的金额)写支票邮寄到您所提供的 地址。

假若之后证明您有权获得那部分有争议的款项,PAYPAL将会把那笔钱另外付给您。

若出现如下任何一种情况,都会导致您的账户被冻结:

与您PAYPAL账户关联的信用卡一经发现未予授权或者有异常情况(包括但不限于发卡行通知,包含您通知您的信用卡公司有笔交易未授权或者您的账户受到威胁,以及做出通知以避免您的信用卡被进一步滥用)

发现您PAYPAL账户使用未授权或者情况异常的银行账号。

买方发卡行做出撤销处理导致买方投诉。

多次通知Paypal进行拒付的买家。

收到如下投诉:未交货,未提供服务,商品与描述不符,或者商品到货后存在严重问题。

任何在没有通知Paypal的情况下先行向发卡行提出拒付请求的。

收到有可能是赃款的汇款(编者语:一般异地交易;个人间转帐被封闭的适用此条,因此个人间转帐一般只适用于真实拍卖中,并提交可查询的运单和发票,而且不可以是经常性的);

过分争议或者撤款,或者试图通过从PAYPAL借助撤款或者要求卖方退款方式重复取钱;

当要求提供身份确认资料以便调查时,拒绝配合;

加入或者交易被发现有套现或者协助套现的行为(不包含PAYPAL借记卡的使用);(编者语:注意!买卖Paypal余额的往往违反该条款)

随意发送垃圾邮件或者在未经许可的网站上留下链接;

开多个个人账户;

账户被用于欺诈行为或者协助欺诈行为;

触犯《用户守则》;

与PAYPAL账号连接的银行账户上的姓名和PAYPAL账号上的姓名不相符;

引入的电子货币转账时银行账户内资金不足,以及不正确的银行交换号(routing number),或者错误的银行账号。

使用代理服务器。

加入了禁止的交易及活动,包括但不仅限于:多层次市场运营、廉价赠予俱乐部和他金字塔式的营销计划(注:类似于我们所说的“传销”),以及在网上售卖商品时自交易之日起拖延交货达20天以上,以及其他本章程第二部分所禁止的活动。

从信用卡机构得知存在信用高风险。

PAYPAL收到的投诉是关于您的商品交易或者(并且)服务。

自PAYPAL许可国名单之外的国家登录。

PAYPAL将竭尽可能地对冻结之账户进行调查,并迅速做出最终处理。