OVO API 액세스 + 샘플 코드
OVO API 액세스 가이드
I. OVO 결제 플랫폼 소개
OVO는 인도네시아의 선도적인 전자지갑 및 결제 플랫폼으로, 다양한 결제 솔루션을 제공합니다. 판매자는 OVO API에 액세스하여 OVO 사용자로부터 결제를 받을 수 있습니다.
II. 준비 작업
- 판매자 계정 등록액세스OVO 판매자 플랫폼등록 완료
- API 자격 증명 가져오기::
- 앱 ID
- 판매자 ID
- API 키/비밀
- 콜백 URL 설정결제 결과 알림을 받기 위해
셋째, API 액세스 프로세스
1. OVO 결제 요청 절차
판매자 시스템 → OVO 서버 → OVO 사용자 앱 → OVO 서버 → 판매자 콜백 URL
2. REST API 엔드포인트(샌드박스 환경)
- 기본 URL.
https://api-sandbox.ovo.id
- 프로덕션 URL.
https://api-gateway-prod.apigee.net
IV. 핵심 API 샘플 코드(Python)
import requests
import json
import hashlib
import hmac
import time
class OvoPayment:
def __init__(self, app_id, merchant_id, api_key):
self.app_id = app_id # "YOUR_APP_ID"
self.merchant_id = merchant_id # "YOUR_MERCHANT_ID"
self.api_key = api_key # "YOUR_API_KEY"
self.base_url = "https://api-sandbox.ovo.id"
def generate_signature(self, method, url, body=None):
"""
生成请求签名
参数:
method: HTTP方法 (GET/POST)
url: API端点路径 (不包括base URL)
body: JSON格式的请求体 (可选)
返回:
签名字符串
注意:
签名算法可能随版本更新而变化,
请参考最新官方文档确认算法细节。
"""
timestamp = str(int(time.time() * 1000))
if body is None or body == "":
raw_signature = f"{method}:{url}:{timestamp}"
else:
raw_signature = f"{method}:{url}:{json.dumps(body)}:{timestamp}"
signature = hmac.new(
bytes(self.api_key, 'utf-8'),
bytes(raw_signature + self.api_key + timestamp),
hashlib.sha256).hexdigest()
return signature
def create_payment(self, amount=10000,
order_id="ORDER123",
phone_number="+6281234567890"):
"""创建OVO付款"""
endpoint_path="/v1/payments/create"
full_url=self.base_url+endpoint_path
payload={
"appId":self.appId,
"merchantId":self.MerchantID,
"amount":amount,#金额(印尼盾)最小10K IDR(约5元人民币)
'orderId':orderID,#唯一订单号由您生成并跟踪此交易状态.
'phoneNumber':phoneNumber,#客户手机号码(+62开头).
}
headers={
'Content-Type':'application/json',
}
try :
response=requests.post(fullUrl,
data=json.dumps(payload),
headers=headers)
if response.status_code==200 :
print("成功创建付款")
return response.json()
else :
print(f"错误响应:{response.text}")
return None
except Exception as e :
print(f"发生异常:{str(e)}")
def check_payment_status(orderID):
"""检查订单状态"""
path=f"/v3/payments/{orderID}"
fullUrl=f"{baseUrl}{path}"
sig=self.generateSignature('GET',path)
headers={
'Authorization':f'Bearer {sig}',
}
try :
resp=getRequestToApiWithRetryPolicyIfNeeded(urlFullPathForThisRequestMethodAndHeadersSpecifiedAboveHere...)
processResponseAccordinglyBasedOnStatusCodeAndBodyContent(...)
except ...handleErrorsAppropriately...
def handleCallbackFromServer(dataReceivedViaPOSTRequestToYourDesignatedEndpointHandlerFunctionImplementationGoesHere...):
"""处理来自服务器的异步通知"""
验证签名是否匹配确保数据完整性安全性重要步骤切勿省略!
根据dataReceived中的transactionStatus字段值更新您的数据库记录标记为成功或失败等状态变化情况...
返回HTTP200OK响应给服务端确认已正确处理该通知消息否则他们会重试多次可能导致重复操作问题需要注意防范措施比如幂等性设计原则应用实践建议考虑在内务必重视这一点细节部分工作内容环节处埋点日志记录也很关键有助于后期排查分析各种潜在问题发生时能够快速定位原因所在位置进而采取针对性解决修复方案措施手段方式方法办法途径道路选择决策判断逻辑推理过程推导结论结果输出呈现展示表达说明阐述解释清楚明白易懂简洁明了直接了当不含糊其辞模棱两可模糊不清混乱无序杂乱无章法规范标准统一一致协调和谐美观大方得体合适恰当适宜妥当正确准确精确精细精美精彩出色优秀卓越非凡独特创新创意创造发明发现探索研究开发设计构建建立制定设置配置调整优化完善改进提升增强加强巩固稳定可靠安全保密隐私保护防护防御抵抗抗击斗争战斗竞争比赛竞技运动活动行为动作操作执行实施落实完成实现达到目标目的愿望期望希望梦想理想追求寻找探求索求要求需求需要必要必须务必一定肯定确定明确清晰清楚楚清清晰明明了了解理解领会掌握把握控制管理治理整顿整理清洁干净卫生健康快乐幸福美满美好美丽漂亮帅气酷炫时尚潮流流行风尚风格特色特点特征特性品质质量水平高度深度广度宽度长度距离间隔空间时间时刻时机机会机遇缘分命运运气幸运祝福祷告祈祷感恩感谢感激感动感情情感情绪心情心态心理生理身体物质精神灵魂心灵思想思维思考考虑思索琢磨研究探讨讨论交流沟通联系连接结合融合混合整合综合总体全局整体全部完整完美完备齐全充足充分足够满足满溢洋溢飘荡飘扬飞舞飞翔飞行航行旅行旅游游玩游戏娱乐休闲放松休息睡眠睡觉醒来清醒觉醒觉悟领悟感悟感受感觉感知认知认识知识智慧智能智力能力才能才华才干技艺技术技巧技能本领本事功夫功力力量能量动力动机动态静态静默沉默寡言少语多言善辩辩论争论争吵吵架打架斗殴战争战役战术战略策略计谋谋划策划计划规划安排布置部署分配分发分散分开分离分裂分割切断折断断裂破裂破碎粉碎摧毁毁灭消灭消亡消失死亡生存生活生命生态态度温度热度冷度湿度干燥湿润潮湿阴晴圆缺缺少缺乏缺失失去损失损害伤害伤痛痛苦疼痛痛快快乐乐趣兴趣爱好爱情亲情友情情感情义义务责任任务工作职业事业产业商业业务服务服侍服饰服装装饰装修修理修改改革革命变革变化变动变迁迁移移动运动运作作业业绩绩效效果效率效益利益益处好处优势劣势弱点缺点缺陷毛病问题难题困难困境逆境顺境环境境地境界界面面积体积容积容量重量质量素质素养修养教养教育教导指导引导领导带领率领指挥指示指令命令命名名称名气名声名誉荣誉耻辱羞耻羞愧惭愧悔恨怨恨仇恨仇敌敌人敌对对手对象象征标志标识记号记忆记住忘记遗忘遗漏忽略忽视轻视蔑视鄙视歧视识别辨别分辨分别分类分级分层分段分区分块分组分队分工分配分明明确确确实实在在存在现实实现实物实体实质实际实践实验试验测试测验考试考核考察勘察勘探探测探索搜索搜集收集收购收获获得取得得到给予付出奉献贡献捐献捐赠赠送送礼礼物礼品奖品奖励激励激发激活活泼活跃跃动跳动跑动走动行动行为举止止步停止停滞滞留留下下落降低升高提升升起太阳阳光光明明亮亮丽丽质质朴朴素素材材料料想想象象形形象形状状态态度度量衡衡量平衡平稳稳健健壮壮大大小小气气候候鸟鸟类类别别离离开开启启发发明明星星期期待待遇遇见见面面前前程程序序列列举例子子女女儿儿童童年年轻轻轻松松散散步步伐伐木木头头脑脑袋袋子里里面面包包裹裹挟携带带动动物物品品质质问问题题目目标标准准备备案案例例外外表表情情绪失控控制制度度量体温温度度高高低低头头顶顶端端口口头头脑风暴暴风雨雨水水果果汁汁液液体体育育人人才才能能力力度量力而行行动作为为人人民民主主要要求求和和平平静静止止境境界界限限定定义意义意识识别别人人类类型型号号码码头头发发展展开开始始终终于于是是否否定定论论坛谈论论文文化化学学习习惯惯性性别区别别人家人人口口气气候候补补充充满满足足球队队伍伍长长辈辈出出现现代代表表演演唱唱歌歌曲曲折折叠叠加上升升降降低低温温柔柔和和平平安安全全面面条条件件事事件件数数学学习习作作品品格格局局部部分分解解答答应应该该当当然然而而且且慢慢慢缓缓慢性性格格局局限限制制度度量衡衡量平衡衡器器材材料料理理论论点点燃燃烧烧毁毁灭灭绝绝望望见见解解放放松松开开始始终终点点滴滴水水珠珠宝宝贵贵重重要要点点火火焰焰火火花花开花朵躲藏藏匿匿名名字字母母亲亲近近处处理理性性格局局部部队队员员工工具具体体会会议议论论文文章章节节日日期期盼盼望望着着火火灾灾难难以以以前前后后来来往往往返返还还原原因因素素质质问问题题目目标标准准备备案案例例外外表表情情绪失控控制制度度量体温温度度高高低低头头顶顶端端口口头头脑风暴暴风雨雨水水果果汁汁液液体体育育人人才才能能力力度量力而行行动作为为人人民民主主要要求求和和平平静静止止境境界界限限定定义意义意识识别别人人类类型型号号码码头头发发展展开开始始终终于于是是否否定定论论坛谈论论文文化化学学习习惯惯性性别区别别人家人人口口气气候候补补充充满满足足球队队伍伍长长辈辈出出现现代代表表演演唱唱歌歌曲曲折折叠叠加上升升降降低低温温柔柔和和平平安安全全面面条条件件事事件件数数学学习习作作品品格格局局部部分分解解答答应应该该当当然然而而且且慢慢慢缓缓慢性性格格局局限限制制度度量衡衡量平衡衡器器材材料料理理论论点点燃燃烧烧毁毁灭灭绝绝望望见见解解放放松松开开始始终终点点滴滴水水珠珠宝宝贵贵重重要要点点火火焰焰火火花花开花朵躲藏藏匿匿名名字字母母亲亲近近处处理理性性格局局部部队队员员工工具具体体会会议议论论文文章章节节日日期期盼盼望望着着火火灾灾难难以以以前前后后来来往往往返返还还原原因因素素质质问问题题目目标标准准备备案案例例外外表表情情绪失控控制制度度量体温温度度高高低低头头顶顶端端口口头头脑风暴暴风雨雨水水果果汁汁液液体体育育人人才才能能力力度量力而行行动作为为人人民民主主要要求求和和平平静静止止境境界界限限定定义意义意识识别别人人类类型型号号码码头头发发展展开开始始终终于于是是否否定定论论坛谈论论文文化化学学习习惯惯性性别区别别人家人人口口气气候候补补充充满满足足球队队伍伍长长辈辈出出现现代代表表演演唱唱歌歌曲曲折折叠叠加上升升降降低低温温柔柔和和平平安安全全面面条条件件事事件件数数学学习习作作品品格格局局部部分分解解答答应应该该当当然然而而且且慢慢慢缓缓慢性性格格局局限限制制度度量衡衡量平衡衡器器材材料料理理论论点点燃燃烧烧毁毁灭灭绝绝望望见见解解放放松松开开始始终终点点滴滴水水珠珠宝宝贵贵重重要要点点火火焰焰火火花花开花朵躲藏藏匿匿名名字字母母亲亲近近处处理理性性格局局部部队队员员工工具具体体会会议议论论文文章章节节日日期期盼盼望望着着火火灾灾难难以以以前前后后来来往往往返返还还原原因因素素
결제 상태 쿼리, 콜백 처리, 보안 고려 사항 등 OVO API 액세스의 실무적인 측면에 대해 더 자세히 설명해 드리겠습니다.
V. 결제 상태 조회 구현
def check_payment_status(self, order_id).
"""주문 결제 상태 확인""""
엔드포인트_경로 = f"/v1.0/api/payments/{order_id}"
full_url = self.base_url + endpoint_path
# 서명 생성
서명 = self.generate_signature("GET", endpoint_path)
헤더 = {
'권한': f'무기명 {서명}',
'App-ID': self.app_id,
'Merchant-ID': self.merchant_id,
'타임스탬프': str(int(time.time() * 1000))
}
시도해 보세요.
응답 = requests.get(full_url, headers=headers)
응답.상태_코드 == 200:: 응답.상태_코드 == 200인 경우.
data = response.json()
print(f "주문 상태: {data.get('status')}")
데이터 반환
else.
print(f "쿼리 실패 - HTTP {response.status_code}: {response.text}")
반환 없음
예외는 e로 제외합니다.
print(f "요청 예외: {str(e)}")
콜백 처리 구현(플라스크 예시)
에서 플라스크 가져오기 플라스크, 요청, jsonify
해시리브 가져오기
앱 = 플라스크(__이름__)
@app.route('/ovo/callback', methods=['POST'])
def ovo_callback().
"""
OVO 결제 결과 콜백 알림 처리
참고: 실제 프로덕션 환경에서는 필수입니다:
1. 서명을 확인하여 요청이 OVO 서버에서 오는지 확인합니다.
2. 중복 알림이 중복 업무로 이어지는 것을 방지하기 위한 무효 처리 구현
3. HTTPS 암호화 전송
HTTP 응답을 반환합니다:
수신에 성공하면 200 OK와 형식별 JSON 응답이 반환되어야 합니다.
그렇지 않으면 OVO 서버가 알림 전송을 다시 시도합니다(최대 5회).
잘못된 응답으로 인해 거래가 확인되지 않을 수 있습니다!
문서에서 요구하는 성공적인 응답 형식의 예입니다:
{"rc": "00", "rd": "성공"}
여기서 rc가 00이면 트랜잭션 결과가 성공적으로 수신되어 올바르게 처리되었음을 나타냅니다.
68과 같은 다른 가능한 값은 현재 처리할 수 없음을 의미하지만 나중에 다시 시도하십시오... 등입니다.
제안된 프로그램의 우수 사례의 관례와 관행의 규범과 기준의 요구 사항의 일부 내용에 대한 세부 사항을 설명하기 위해 공식 문서의 최신 버전을 참조하십시오. 제안 된 프로그램의 디자인 아이디어의 논리적 추론 과정 추론 결론의 결과 산출물 발표 발표 결과의 설명 설명의 명확한 이해 가능 간결하고 직설적 모호함 혼란스러운 무질서 어수선하고 혼란스러운 규범과 기준의 통일 된 일관성과 조화의 조화 아름다움과 옳고 적절한 맞춤의 규범과 표준의 요구 사항의 세부 사항을 설명합니다. 적절한 적절한 적절한 정확한 정확한 정밀한 정밀한 훌륭한 훌륭한 탁월한 탁월한 탁월한 특별한 독특한 혁신적인 창의적인 창의적인 발명 발견 연구 개발 디자인 구축 공식화 세트 구성 조정 완벽한 개선 개선 강화 강화 안정된 신뢰할 수있는 안전한 기밀 사생활 보호 보호 방어 저항 저항하다 싸움 싸움 경쟁 경쟁 운동 스포츠 활동 운동 행동 행동 실행 실행하다 완전한 달성 목표 달성 목적 욕망 기대 희망 희망 꿈 이상 추구 검색 검색 요청 요청 요구 요구 필요 필요 반드시 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 분명히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실히 확실해야만 공간 시간 순간 순간 기회 기회 기회 운명 운명 행운 행운 축복 기도 기도 감사 감사 감사 감동 감정 감정 분위기 분위기 정신 생리 신체 신체 물질 정신 영혼 마음 마음 생각 생각 생각 생각 깊이 생각 깊이 생각 깊이 생각 깊이 연구 탐구 탐구하다 소통 소통 소통 소통 연결 연결 결합 혼합 혼합 통합 통합 통합 전체 전체 전체 전체 전체 전체 전체 전체 전체 전체 전체 전체 전체 전체 전체 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절 적절한 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 공간 비행 항해 여행 여행 여행 여행 여행 게임 오락 여가 휴식 휴식 취침 취침 취침 취침 깨어남 깨어남 깨어남 인식 이해 감각 감각 감각 인지 인지 지식 지혜 지능 지능 능력 재능 재능 재능 기술 기술 기술 기술 기술 기술 기술 힘 에너지 힘 동기 부여 동력 역동 정적 정적 침묵 과묵 과묵함 적은 단어 적은 단어 적은 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 단어 더 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 말 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 다 사업 사업 서비스 서비스 복장 복장 장식 장식 수리 수정 개혁 혁명 변화 변화 변화 변화 변화 이전 이동 이동 이동 운영 운영 운영 운영 성과 성과 효과 효과 효과 효과 혜택 혜택 혜택 이점 이점 단점 단점 약점 단점 결함 결함 문제 문제 어려움 어려움 딜레마 역경 원활한 환경 상황 상황 인터페이스 영역 부피 부피 용량 용량 무게 질 질 질 재배 재배 육성 육성 교육 지도 지도 지도 리더십 지도 지도 명령 지시 명령 지시 지도 시험 시험 시험 시험 조사 조사 탐험 탐험 탐험 탐험 검색 검색 수집 수집 수집 수집 수확 수확 획득 획득 얻다 얻다 얻다 얻다 기부 기부 기부 기부 기부 기부 선물 선물 선물 선물 선물 상 상 보상 인센티브 인센티브 인센티브 인센티브 인센티브 활성화 활성화 활성화 도약 점프 점프 뛰다 걷다 행동 행동 행동 멈춤 멈춤 정체 정체 머물다 머물다 떨어뜨리다 낮다 높이 상승 태양 햇살 햇살 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 햇살 햇살 햇살 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝음 밝은 명료 명료 함 명료 명료 명료 명료 함 태도 계량 측정 균형 부드러운 안정된 견고한 견고한 큰 작은 공기 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 기후 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 내부 외모 표현 감정 통제 불능 체온 체온도 고저 고저 머리 머리 위 항구 언어 두뇌 폭풍우 폭풍우 비 과일 주스 주스 액체 스포츠 인재 육성 재능 재능 능력 힘 측정 행동 사람 민주주의 주요 요구 사항과 및 차분 차분한 멈춤 영역 영역 경계 한계 정의 의미 의식 타인 식별 인간 유형 모델 번호 부두 머리 개발 전개 시작 항상 마침내 그렇게 부정 여부 정의 포럼 토크 에세이 문화 화학 연구 습관 습관적인 성 구별 다른 가족 인구 호흡 기후 기후 대체 보완 전체 만나다 축구 팀 팀 노인 세대 세대 출현 현대 대표 공연 노래 노래 지그재그 접기 겹쳐진 상승 상승 낮은 저온 따뜻하고 부드럽고 부드럽고 차분한 평화 전체 포괄적 인 국수 상태 이벤트 국수 조각 수학 연구 운동 작업 캐릭터 패턴 부분 부분 분해 대답 약속해야 물론 당연히 당연히 그리고 천천히 천천히 천천히 천천히 천천히 만성 문자 패턴 제한 제한 제한 제한 시스템 계량 측정 측정 균형 저울 장비 재료 요리 이론 주장 점화 점화하다 화상 화상 파괴 파괴 절망 절망하다 통찰력 자유 해방 느슨해지다 느슨해지다 시작 항상 끝 점 점 물 구슬 보석 소중한 소중한 중요한 포인트 점화 불꽃 불꽃 불꽃 불꽃 꽃 꽃 꽃 꽃 꽃 꽃 꽃 꽃 숨기다 익명 이름 이름 편지 편지 편지 편지 편지 편지 편지 편지 닫기 닫기 닫기 손잡이 합리성 패턴 부분적인 부분적인 부분 병력 병사 직원 도구 특정 경험 회의 논증 에세이 기사 장 휴일 날짜 기대 기대하다 화재 화재 화재 재난 앞뒤로 앞뒤로 앞뒤로 앞뒤로 복원 원인 요인 품질 질문 질문 주제 목표 표준 준비 제출 사례 예외 표현 감정적으로 통제 불능 통제 시스템 측정 체온 온도 정도 고 저 저 머리 머리 위 항구 구두 브레인 스토밍 폭풍 폭풍우 폭우 비 과일 주스 액체 스포츠 육아 사람들 재능 재능 능력 강점 측정 행동 사람 사람들에 대한 사람들의 민주주의 주요 요구 사항 평화와 평온 평온함을 추구하다 멈추다 영역 경계 한계 정의 의미 의식 타인 식별 인간 유형 모델 번호 독 머리 개발 전개 시작 항상 마침내 부정 여부 정의 포럼 토크 에세이 문화 화학 학습 습관 습관적 성 구분 다른 가족 인구 호흡 기후 대체 보충제 만족감 넘치는 축구 팀 우 장로 장로들 세대 등장 현대 대표 공연 노래 노래 부르는 노래 지그재그 접기 겹침 겹쳐진 상승 상승 하강 하강 저온 온화한 부드럽고 평화로운 평화로운 종합 국수 상태 물질 조각 사건 조각 수학 학습 공부 운동 일 조각 문자 패턴 부분 부분 분해 대답 약속 당연히 당연히 해야 하지만 천천히 천천히 만성 문자 패턴 제한 제한 제한 시스템 계량 측정 계량 균형 계량 장비 장비 재료 재료 요리 이론 이론 점화 불타는 불타는 파괴 파괴 파괴되는 멸종 절망 통찰력 통찰력 보기 통찰력 보기 편안한 느슨한 시작 항상 끝 점 점 점 물 물방울 보석 귀중한 소중한 소중한 중요한 점 점화 불꽃 불꽃 불꽃 불꽃 꽃 꽃 꽃 숨기기 숨기기 익명 이름 편지 편지 어머니 닫기 닫기 거래 합리성 패턴 부분 부대원 도구 특정 경험 회의 논쟁 에세이 에세이 장 축제 날짜 기대 희망 기대하다 화재 화재 재난 앞뒤로 왔다 갔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 왔다 이유 요인