用于多种货币的脚本

创建支持以多种货币进行销售的脚本。

固定金额或基于百分比的折扣

查看在以多种货币进行销售时 脚本折扣 的工作方式。营销固定金额折扣可能比较困难,因为折扣金额可能会随货币换算率而波动。

方法

您可以使用以下方法将折扣限制或扩展到特定货币:

  • 购物车对象有一个新方法 presentment_currency。此方法会返回客户显示币种的货币代码。例如,您可以使用此方法检查客户的显示币种,并根据结果筛选脚本。

  • Money 对象有一个新方法 Money.derived_from_presentment(customer_cents: X)。此方法返回商店货币的价值。X 代表客户显示币种的金额(以分为单位)。此方法将客户显示币种的金额转换为商店货币的等值金额。例如,您可以使用此方法以客户的显示币种向他们显示折扣。

货币换算

Shopify 脚本以您的商店货币运行,而不是以客户的显示币种运行:

  • 在脚本运行之前,您购物车中的金额会转换为您的商店货币。
  • 脚本完成后,这些金额会转换回客户的显示币种。

这两次换算都不会导致您被收取换算费。只有在获取付款时,您才需要支付换算费。

在以多种货币销售前,请检查您的脚本

当您启用以多种货币销售时,请检查您的脚本以确保它们仍按预期方式工作:

  • 提供百分比折扣的脚本 - 无论使用何种货币,这些脚本都提供相同的百分比折扣。
  • 提供固定金额折扣的脚本 - 这些脚本中的金额以您商店的货币为单位。提供固定金额折扣的脚本可能难以推广,因为折扣金额会随着货币换算率而波动。
  • 依赖于给定价格阈值才能运行的脚本 - 这些脚本中的金额以您商店的货币为单位。

示例

以下示例将在客户的显示币种与您的商店货币不同时,隐藏除 Shopify Payments 之外的所有支付服务提供商:

Output.payment_gateways = Input.payment_gateways.delete_if do |payment_gateway|
  Input.cart.presentment_currency != Input.cart.shop_currency && payment_gateway.name != "Shopify Payments"
end

详细了解