Skip to main content
Waffoチェックアウトはさまざまなカスタマイズオプションをサポートしています。加盟店は3つの方法で外観と動作を設定できます。

カスタマイズ機能の概要

優先順位: APIパラメータ > Merchant Portal > SDK初期化 同一機能が複数の方法で設定されている場合、優先度の高い設定が有効になります。

決済手段フィルタリング

payMethodTypepayMethodName を使用して、Cashier に表示する決済手段を制御します。 決済手段ごとの特例や App WebView / iframe の制限については、Payment method integration notes を参照してください。

推奨パラメータの組み合わせ

payMethodCountry を渡すタイミング

Cashier で特定の国の決済手段のみを表示したい場合に、このフィールドを渡します。
  • 省略:加盟店契約に基づく、すべての国で利用可能な決済手段を表示します。
  • 指定:指定した国の決済手段のみ表示します。
グローバルカード(CREDITCARD/DEBITCARD)には payMethodCountry渡さないでください。グローバルカードは特定の国に属しません。

多通貨対応

加盟店の価格通貨とユーザーの決済通貨が異なる場合(クロスカレンシー注文):
userCurrency は省略可能です。Waffo が自動的に為替変換を処理し、ユーザーには Cashier 上で現地通貨の金額が表示されます。

言語設定

paymentInfo.cashierLanguage を使用して Cashier の表示言語を設定します(IETF BCP 47 形式):
一般的な言語タグは次のとおりです: cashierLanguage は注文通貨およびユーザーの国または地域とは独立しています。Waffo は有効な言語タグを標準の BCP 47 の大文字・小文字表記に正規化します。例えば、en-usen-US に正規化されます。

自動選択ロジック

cashierLanguage を指定しない場合、Waffo は以下の優先順位で自動的に言語を選択します:
  1. ブラウザの Accept-Language ヘッダーで優先度が最も高いサポート対象言語を使用する
  2. ユーザーが GLB 以外の国または地域タブを選択した場合、その国または地域に対応する言語を使用する
  3. それ以外の場合、ユーザーの IP アドレスに対応する国または地域の言語を使用する
  4. 言語を判定できない場合、en にフォールバックする
Waffo は Accept-Languageq 重みが最も高い言語項目だけを確認します。その言語がサポート対象外の場合、国または地域による選択に進みます。 ブラウザ言語の照合は主言語サブタグで行います。enesidjakomsplptthtrvi はそのまま一致し、任意の zh-* タグは zh にマッピングされます。その他の主言語は、cashierLanguage で明示的に指定できる場合でも、ブラウザ言語では Cashier をロックしません。 cashierLanguage で指定した言語と Accept-Language から選択した言語は、Cashier セッション中に固定されます。国または地域から選択した言語は、ユーザーがタブを切り替えると変わります。GLB には対応言語がないため、Waffo は残りの条件を使用して言語を選択します。 国または地域のフォールバックでは、次のマッピングを使用します:

注意事項

  • 注文通貨とユーザーの決済通貨は Cashier の言語選択に使用されません。
  • cashierLanguage は、言語プレフィックスと文字体系がサポート対象かどうかを検証します。地域は、有効な ISO 3166-1 alpha-2 の国または地域コードであれば受け付けます。
  • サポートされていない言語または文字体系を指定すると、エラーコード A0026 が返されます。
  • IETF BCP 47 形式に準拠しない言語タグを指定すると、エラーコード A0047 が返されます。
Cashier の言語を固定するには、paymentInfo.cashierLanguage を明示的に指定してください。

テーマカスタマイズ

Cashier のカラー、フォント、スタイルをブランドに合わせてカスタマイズできます。

3 つの設定方法

優先順位:API パラメータ > Merchant Portal > SDK 初期化。API 経由で cashierAppearance が渡された場合、他のすべての設定を上書きします。

テーマ変数

これらの変数は Cashier UI のレンダリング層に注入され、既定のテーマを上書きします。決済手段選択ページ、カードフォームページ、遷移ページ、決済結果ページに影響します。

API パラメータ方式

対応エンドポイント:
  • POST /api/v1/order/create
  • POST /api/v1/subscription/create
cashierAppearance フィールドは JSON 文字列(JSON オブジェクトではなく)である必要があり、構造は {"variables": { ... }} です。内部のクォートはエスケープしてください。

Merchant Portal での設定

Merchant Portal → Checkout → Cashier Customization に移動し、Cashier のグローバルな既定スタイルを設定します。すべての取引で統一されたブランドスタイルを使いたい場合に適しています。 Portal では、加盟店ロゴ、プリセットテーマ、テーマカラー、基本フォントサイズ、角丸を設定できます。ページ右側で Cashier のプレビューを確認できます。Save & Publish をクリックすると、その後に新規作成される注文に設定が適用されます。
Merchant Portal Cashier カスタマイズページの概要
アカウントにサブ加盟店(SubMID)がある場合、すべての SubMID にメイン加盟店設定を継承させることも、SubMID ごとに個別スタイルを設定することもできます。 詳しい手順は Merchant Portal Cashier カスタマイズ を参照してください。

SDK 初期化

フロントエンド SDK(@waffo/payment-sdk)の初期化時にテーマ設定を渡します。優先度は最低で、API および Merchant Portal のいずれにもテーマ設定がない場合にのみ有効となります。

加盟店ロゴ

brandInfo.cashierLogoUrl を通じて加盟店ロゴを渡すことで、チェックアウトページにブランドアイデンティティを表示できます。 2つの形式がサポートされています:

APIパラメータの例

外部URLを使用する場合:
Portalでアップロードしたロゴを使用する場合:

注文の有効期限

orderExpiredAt を使用して注文の有効期限を設定します(ISO 8601、UTC+0)。
このフィールドはユーザーが Cashier 内で注文を送信できる時間枠を制御します。注文が決済チャネルに送信された後は、有効期限は決済手段自体によって管理されます。一部の決済手段では加盟店からチャネル側の有効期限を渡すことをサポートしています。決済手段ごとの有効期限詳細は Portal の Payin ページで確認してください。

リダイレクト URL

HTTPS URL およびディープリンク(アプリ内シナリオなど)の両方をサポートしています。
リダイレクト URL はユーザー体験を制御するのみで、決済結果を表すものではありません。決済結果の信頼できる情報源は常に Webhook または照会 API を使用してください。