チェックアウトセッションへのプロモーションコードの自動適用
購入者がプロモーションコードを入力する必要がないように、チェックアウトセッションにプロモーションコードを自動的に適用することができます。
Smartpay チェックアウトが開始されると、プロモーションコードが自動的に検証されます。コードが有効な場合、指定された割引が注文に適用され、チェックアウト画面に表示されます。コードが有効でない場合(例えば、有効期限が切れている場合)、割引は適用されません。もし、他に有効なプロモーションコードがある場合は、プロモーションコード入力欄がチェックアウト画面に表示されます。
プロモーションコードを自動的に適用する
チェックアウトセッションにプロモーションコードを自動的に適用するには、リダイレクト URL に 「promotion-code={your-promotion-code}」という引数を追加する必要があります。
弊社の SDK をご利用の場合、すべての SDK がこの機能をサポートしています。
$api = new \Smartpay\Api(getenv('SECRET_KEY'), getenv('PUBLIC_KEY'));
$checkoutSession = $api->checkoutSession([...])
return $response->withRedirect($checkoutSession->redirectUrl(['promotionCode' => 'SUMMERSALE']), 302);
require 'smartpay'
Smartpay.configure do |config|
config.public_key = ENV['PUBLIC_KEY']
config.secret_key = ENV['SECRET_KEY']
end
session = Smartpay::Api.create_checkout_session({...})
redirect session.redirect_url({promotionCode: "SUMMERSALE"})
from smartpay import Smartpay
# Replace the keys with yours
SECRET_KEY = os.environ.get('SECRET_KEY', '<YOUR_SECRET_KEY>')
PUBLIC_KEY = os.environ.get('PUBLIC_KEY', '<YOUR_PUBLIC_KEY>')
smartpay = Smartpay(SECRET_KEY, public_key=PUBLIC_KEY)
session = smartpay.create_checkout_session({...})
redirectUrl = smartpay.get_session_url(session, options={'promotionCode': 'SUMMERSALE'})
return redirect(redirectUrl, 303)
const Smartpay = require('@smartpay/sdk-node').default;
const SECRET_KEY = process.env.SECRET_KEY || '<YOUR_SECRET_KEY>';
const PUBLIC_KEY = process.env.PUBLIC_KEY || '<YOUR_PUBLIC_KEY>';
const smartpay = new Smartpay(SECRET_KEY, {
publicKey: PUBLIC_KEY,
});
(async () => {
const payload = {...};
const session = await smartpay.createCheckoutSession(payload);
})();
const sessionURL = Smartpay.getSessionURL(session, {
promotionCode: 'SUMMERSALE',
});
res.redirect(303, sessionURL);
Updated 6 months ago