領収書の支払い方法の項目にPayPayを追加したい

解決済
Sakai
観光客
10 0 0

Shopifyアプリ【Order Printer】を使用して領収書を作成しているのですが、

ストアの支払い方法は、Shopify PaymentのクレジットとPayPayとなっており。

それぞれの方法でお支払いされた時の領収書への表記を自動で反映させてたく以下のコードを書いているのですが、

 

<div class="details-item">
<p class="details-item__title">
明細
</p>
<p class="order-day__text">
ご注文日:{{ created_at | date: "%Y年%m月%d日" }}
</p>
<p class="order-number__text">
ご注文番号:{{ order_number }}
</p>
<p class="pay-methods__text">
お支払い方法:{{ payment_methods | replace: 'Shopify payments','クレジット決済' | replace:'["PayPay(オンライン決済)-SBペイメント"]','PayPay' | replace:'"]'| replace:'"',' '}}</p>
</div>

こちらですとliquidエラーが領収書に反映されてしまいます。

スクリーンショット 2021-02-15 17.52.56.png

こちらの【お支払い方法:】の右横に支払い方法を反映させたいと思っています。

ご教示やアドバイスいただけると幸いです。

よろしくお願いいたします。

0 件の「いいね!」
kakuma-fbl
先駆者
138 30 144

該当箇所を

{% if payment_methods == ''Shopify payments' %}

クレジット決済
{% else %}

PayPay

{% endif %}

でいかがでしょうか?

Sakai
観光客
10 0 0

ご丁寧にありがとうございます!

ご教示いただいたコードに変更してみたところ反映されました!

 

1点再度ご確認させていただきたいのですが、

今回Shopify Paymentのテストモードでクレジットを使って決済したのですが、

支払い方法がPayPayと出ているのはテストモードだからでしょうか…?

スクリーンショット 2021-02-16 11.34.54.png

0 件の「いいね!」
jizo
先駆者
224 80 248

横から失礼します。

ご教示いただいたコードに変更してみたところ反映されました!

上記のように書かれていましたので現状が意図通りの動作なのかそうでないのか不明なのと、Oreder Printは使ったことがなく状況を把握できていないのですが、以下記載します。

 

試されたコードを確認いただきたいのですが、意味は以下のようになります。

  • payment_methodsの値がShopify paymentsなら「クレジット決済」と出力
  • payment_methodsの値がShopify payments以外なら「PayPay」と出力

上記の動作になりますので、「PayPay」と表示されたのは「payment_methodsの値がShopify payments以外だったから」となります。

 

現状が意図通りでない場合は、以下のようにして置換対象であるpayment_methodsの値を確かめたほうが良いかと思います。

 

{{ payment_methods }}
または
{{ payment_methods | json }}

 

 

Sakai
観光客
10 0 0

お忙しいなか、ご丁寧にご教示いただきありがとうございます!

ご教示いただいた部分を今一度確認しましたが、やはり、ShopifyPaymentを使用したテスト注文なのですが、

PayPayと出てしまいました…

Order Printer Proの方では、Shopify Paymentが反映されているので、

アプリの問題なのかもしれません…

ご教示いただきましてありがとうございました!

0 件の「いいね!」
jizo
先駆者
224 80 248

成功

確認いただきありがとうございます。

当初記載いただいていたコードとは違いますが、以下も検討できるかもしれません。

https://community.shopify.com/c/Shopify-Design/Please-help-Quick-Order-Printer-Code-Tweak/m-p/390008...

transaction objectを用いているため、上記投稿の情報を利用するなら以下も確認されるとわかり良いと思います。

https://shopify.dev/docs/themes/liquid/reference/objects/transaction

 

前出のコードが使えるなら以下も参考になるかもしれません。

https://community.shopify.com/c/%E6%8A%80%E8%A1%93%E7%9A%84%E3%81%AAQ-A/%E7%99%BA%E9%80%81%E9%80%A3%...

https://community.shopify.com/c/%E6%8A%80%E8%A1%93%E7%9A%84%E3%81%AAQ-A/order-liquid%E5%86%85%E3%81%...

 

以上ですが、いずれも見当違いでしたら申し訳ありません。

toooru
観光客
4 3 6

成功

Order Printer アプリのテンプレートで使用できる変数は、
テンプレート編集画面左にあるリンク「View the Liquid variable list」のリンク先に
記載のあるものかと思いますので、お支払い方法は {{ gateway }} な気がしますが、
以下だといかがでしょうか。

Shopify Payments の場合は、shopify_payments と出力されていますので、以下のようになるかと思います。

 

お支払い方法:
{% if gateway == 'shopify_payments' %}
クレジット決済
{% else %}
PayPay
{% endif %}

 

※上記は、shopify_payments 以外の場合は全てPayPayとなりますのでご注意ください。

Sakai
観光客
10 0 0

ご親切にたくさんご教示いただきましてありがとうございます!

地蔵さんにご教示いただいた内容と、toooruさんにご教示いただいた内容を確認し、

「gateway」を使用することで解決ができました!!!

たくさん教えていただいてありがとうございました!

0 件の「いいね!」
Sakai
観光客
10 0 0

ご親切にご教示いただき誠にありがとうございます!

ご教示いただきました「gateway」への変更で反映を確認することができました!

今後内容を変更する際にもきちんとView the Liquid variable listを確認するようにいたします!

この度は本当にありがとうございました!

0 件の「いいね!」