checkout button มีสกุลเงิน ไทยกับUS ต้องส่งค่าอย่างรัยไป checkout.php


#1

จาก File example-6-multiple-language.html ผมใช้การจ่ายเงิน ไทยกับ US เมื่อมีการกด checkout เราจะส่ง ค่าเงิน กับ สกุลเงิน ไปหน้า checkout.php อย่างรัยครับ พอมีตัวอย่างมั้ย

// Configuring your own custom button
OmiseCard.configureButton(’#checkout-button-1’, {
buttonLabel: ‘ยืนยันการจอง <? echo number_format($price_th,0) ;?> บาท’,
submitLabel: ‘ยืนยันการจอง’,
amount: “<? echo $price_th*100 ;?>”,
currency: ‘thb’,
locale: ‘th’
});

// Configuring your own custom button
OmiseCard.configureButton('.checkout-button-2', {
  buttonLabel: 'Confirm booking <? echo $price_en ;?> USD',
  submitLabel: 'Confirm booking',
  amount: "<? echo $price_en*100 ;?>",
  currency: 'usd',
  locale: 'en'
});

File checkout.php

require_once dirname(FILE).’/omise-php/lib/Omise.php’;
define(‘OMISE_API_VERSION’, ‘2017-11-02’);
define(‘OMISE_PUBLIC_KEY’, ‘PUBLIC_KEY’);
define(‘OMISE_SECRET_KEY’, ‘SECRET_KEY’);

$charge = OmiseCharge::create(array(
‘amount’ => 10025,
‘currency’ => ‘usd’,
‘card’ => $_POST[“omiseToken”]

));


#2

สวัสดีครับคุณ akachai1526

สำหรับการส่งสกุลเงินไปที่หน้า checkout.php สามารถทำการใส่
<input type="hidden" name="currency" value="usd"> ลงไปใน <form>
ได้ครับ ในกรณีที่ form เป็น GET ก็จะได้ query string แบบนี้ครับ checkout.php?currency=usd&omiseToken=tokn_test_5c6wzj5ig3ont47vg4c&omiseSource=

ถ้าอยากให้ value="usd" เปลี่ยนค่าไปตามสกุลเงินหรือปุ่มที่กด ก็สามารถ javascript มาเองได้ครับ

  <form action="/checkout.php" method="GET" class="form">

    <h1>Example 6: Multiple language</h1>
    <p>Create checkout button with multiple languaue.</p>

    <div>
      <!-- Create your own button -->
      <p>
        <button type="submit" id="checkout-button-1">Checkout Button number 1 !</button>
      </p>
      <p>
        <button type="submit" id="checkout-button-2">Checkout Button number 2 !</button>
      </p>
      <p>
        <button type="submit" id="checkout-button-3">Checkout Button number 3 !</button>
      </p>
    </div>
    <input type="hidden" name="currency" value="usd">
  </form>

  <!-- Include card.js library -->
  <script type="text/javascript" src="https://cdn.omise.co/omise.js"></script>

  <!-- Config the card.js library -->
  <script type="text/javascript">
    // Set default parameters
    OmiseCard.configure({
      publicKey: 'pkey_test_',
      image: 'https://cdn.omise.co/assets/dashboard/images/omise-logo.png'
    });
    // Configuring your own custom button
    OmiseCard.configureButton('#checkout-button-1', {
      frameLabel: 'Merchant name',
      frameDescription: 'Merchant description',
      buttonLabel: 'Pay 995',
      submitLabel: 'PAY RIGHT NOW !',
      amount: 99500,
      currency: 'usd',
      locale: 'en'
    });
    OmiseCard.configureButton('#checkout-button-2', {
      frameLabel: 'ชื่อผู้ประกอบการค้า',
      frameDescription: 'รายละเอียดของผู้ประกอบการค้า',
      buttonLabel: 'จ่าย 1,250',
      submitLabel: 'จ่ายเลยตอนนี้',
      amount: 125000,
      currency: 'thb',
      locale: 'th'
    });
    OmiseCard.configureButton('#checkout-button-3', {
      frameLabel: '商人の名前',
      frameDescription: '商人の説明',
      buttonLabel: '支払う 15,699',
      submitLabel: '支払う',
      amount: 15699,
      currency: 'jpy',
      locale: 'ja'
    });
    // Then, attach all of the config and initiate it by 'OmiseCard.attach();' method
    OmiseCard.attach();
  </script>

#3

ได้แล้วครับ ผมส่ง param เข้า js ตาม user เลือก currency