sh = logging.StreamHandler()
logger.addHandler(sh)
formatter = logging.Formatter('%(asctime)s:%(lineno)d:%(levelname)s:%(message)s')
sh.setFormatter(formatter)

# Flask
app = Flask(__name__)

# LINE Pay API
LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID")
LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET")
LINE_PAY_REQEST_BASE_URL = "https://{}".format(
	# set your server host name (ex. ngrok forwarding host) at HOST_NAME on .env file
	os.environ.get("HOST_NAME")
)
api = LinePayApi(LINE_PAY_CHANNEL_ID, LINE_PAY_CHANNEL_SECRET, is_sandbox=True)

# Cache
CACHE = {}

@app.route("/request", methods=['GET'])
def pay_request():
	order_id = str(uuid.uuid4())
	amount = 1
	currency = "JPY"
	product_name = "Sample product"
	CACHE["order_id"] = order_id
	CACHE["amount"] = amount
	CACHE["currency"] = currency
	CACHE["product_name"] = currency
	request_options = {
Esempio n. 2
0
import datetime

app = Flask(__name__)
bootstrap = Bootstrap(app)

# dotenv
load_dotenv(verbose=True)
dotenv_path = join(dirname(__file__), '.env')
load_dotenv(dotenv_path)

# LINE Pay API
LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID")
LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET")
LINE_PAY_IS_SANDBOX = False  # True | False
api = LinePayApi(LINE_PAY_CHANNEL_ID,
                 LINE_PAY_CHANNEL_SECRET,
                 is_sandbox=LINE_PAY_IS_SANDBOX)

# Cache
CACHE = {}

# kintone
account = pykintone.load("account.yml")
kintone = account.app()


class PayTransaction(model.kintoneModel):
    def __init__(self):
        super(PayTransaction, self).__init__()
        self.transaction_id = ""
        self.transaction_type = ""
# 環境変数
CONFIRM_URL = os.environ.get("CONFIRM_URL")
CANCEL_URL = os.environ.get("CANCEL_URL")
LOGGER_LEVEL = os.environ.get("LOGGER_LEVEL")
LIFF_CHANNEL_ID = os.getenv('LIFF_CHANNEL_ID', None)
# LINE Pay API情報
LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID")
LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET")
if (os.environ.get("LINE_PAY_IS_SANDBOX") == 'True'
        or os.environ.get("LINE_PAY_IS_SANDBOX") == 'true'):
    LINE_PAY_IS_SANDBOX = True
else:
    LINE_PAY_IS_SANDBOX = False
api = LinePayApi(LINE_PAY_CHANNEL_ID,
                 LINE_PAY_CHANNEL_SECRET,
                 is_sandbox=LINE_PAY_IS_SANDBOX)
# ログ出力の設定
logger = logging.getLogger()
if LOGGER_LEVEL == 'DEBUG':
    logger.setLevel(logging.DEBUG)
else:
    logger.setLevel(logging.INFO)
# テーブル操作クラスの初期化
payment_order_table_controller = TableOrderPaymentOrderInfo()


def lambda_handler(event, context):
    """
    LINE Pay API(reserve)の通信結果を返す
    Parameters
Esempio n. 4
0
from validation.table_order_param_check import TableOrderParamCheck
from common.channel_access_token import ChannelAccessToken
from table_order.table_order_payment_order_info import TableOrderPaymentOrderInfo  # noqa501


# 環境変数
LOGGER_LEVEL = os.environ.get("LOGGER_LEVEL")
# LINE Pay API
LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID")
LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET")
if (os.environ.get("LINE_PAY_IS_SANDBOX") == 'True'
    or os.environ.get("LINE_PAY_IS_SANDBOX") == 'true'): 
    LINE_PAY_IS_SANDBOX = True
else:
    LINE_PAY_IS_SANDBOX = False
api = LinePayApi(LINE_PAY_CHANNEL_ID,
                 LINE_PAY_CHANNEL_SECRET, is_sandbox=LINE_PAY_IS_SANDBOX)
# ログ出力の設定
logger = logging.getLogger()
if LOGGER_LEVEL == 'DEBUG':
    logger.setLevel(logging.DEBUG)
else:
    logger.setLevel(logging.INFO)
# テーブル操作クラスの初期化
payment_order_table_controller = TableOrderPaymentOrderInfo()
channel_access_token_controller = ChannelAccessToken()

# LINE BOTリソースの宣言
CHANNEL_ID = os.getenv('LINE_CHANNEL_ID', None)
if CHANNEL_ID is None:
    logger.error('Specify CHANNEL_ID as environment variable.')
    sys.exit(1)
Esempio n. 5
0
def _get_api():
    return LinePayApi(channel_id=os.getenv('LINE_CHANNEL_ID'),
                      channel_secret=os.getenv('LINE_SECRET_KEY'),
                      is_sandbox=os.getenv('LINE_SANDBOX').lower() == 'true')