REST客户端导入(http://www.coachoutletstore.com)

iamport-rest-client的Python项目详细描述


https://travis-ci.org/iamport/iamport-rest-client-python.svg?branch=masterhttps://codecov.io/gh/iamport/iamport-rest-client-python/branch/master/graph/badge.svg

Python用户提供的I'EST API联动模块。

    不负责
  • 使用中发生的问题。
  • lexifdev的帮助下制作的(lexifdev’s iamport 모듈
  • 《li》最初制作是为了在{a4}中使用而制作的。
安装“h2”
pip install iamport-rest-client
功能

    寻找
  1. 结算信息
  2. 确认
  3. 价格
  4. 取消
  5. 非认证结算
  6. 定期预约结算
  7. 本人认证结果查询及删除

使用方法
准备

为了使用

制作客体。

fromiamportimportIamport# 테스트 용iamport=Iamport(imp_key='{테스트용 키}',imp_secret='{테스트 시크릿}')# 테스트용 키와 시크릿은 tests/conftest.py 파일에 DEFAULT_TEST_IMP_KEY, DEFAULT_TEST_IMP_SECRET를 참고하세요.# 실제 상점 정보iamport=Iamport(imp_key='{발급받은 키}',imp_secret='{발급받은 시크릿}')

寻找《h3》 通过进行

结算的商品ID或,利用收到的IMP ID寻找结算信息。

# 상품 아이디로 조회response=iamport.find(merchant_uid='{상품 아이디}')# I'mport; 아이디로 조회response=iamport.find(imp_uid='{IMP UID}')
确认

价格

确认与实际产品价格是否相同。

# 상품 아이디로 확인iamport.is_paid(product_price,merchant_uid='{상품 아이디}')# I'mport; 아이디로 확인iamport.is_paid(product_price,imp_uid='{IMP UID}')# 이미 찾은 response 재활용하여 확인iamport.is_paid(product_price,response=response)
取消

取消

结算。

# 상품 아이디로 취소response=iamport.cancel(u'취소하는 이유',merchant_uid='{상품 아이디}')# I'mport; 아이디로 취소response=iamport.cancel(u'취소하는 이유',imp_uid='{IMP UID}')# 취소시 오류 예외처리(이미 취소된 결제는 에러가 발생함)try:response=iamport.cancel(u'취소하는 이유',imp_uid='{IMP UID}')exceptIamport.ResponseErrorase:printe.codeprinte.message# 에러난 이유를 알 수 있음exceptIamport.HttpErrorashttp_error:printhttp_error.codeprinthttp_error.reason# HTTP not 200 에러난 이유를 알 수 있음

非认证结算

进行一次性非人气结算。

# 테스트용 값payload={'merchant_uid':'00000000','amount':5000,'card_number':'4092-0230-1234-1234','expiry':'2019-03','birth':'500203','pwd_2digit':'19'}try:response=iamport.pay_onetime(**payload)exceptKeyError:# 필수 값이 없을때 에러 처리passexceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass
用保存在

中的Billing键重新结算。

# 테스트용 값payload={'customer_uid':'{고객 아이디}','merchant_uid':'00000000','amount':5000,}try:response=iamport.pay_again(**payload)exceptKeyError:# 필수 값이 없을때 에러 처리passexceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass

定期预约结算

预约

定期结算。

# 테스트용 값payload={'customer_uid':'{고객 아이디}','schedules':[{'merchant_uid':'test_merchant_01',# UNIX timestamp'schedule_at':1478150985,'amount':1004},{'merhcant_uid':'test_merchant_02',# UNIX timestamp'schedule_at':1478150985,'amount':5000,'name':'{주문명}','buyer_name':'{주문자명}','buyer_email':'{주문자 이메일}','buyer_tel':'{주문자 전화번호}','buyer_addr':'{주문자 주소}','buyer_postcode':'{주문자 우편번호}',},]}try:reponse=iamport.pay_schedule(**payload)exceptKeyError:# 필수 값이 없을때 에러 처리passexceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass
取消

定期结算预约。

# 테스트용 값 (merchant_uid 가 누락되면 customer_uid 에 대한 결제예약정보 일괄취소)payload={'customer_uid':'{고객 아이디}','merchant_uid':'test_merchant_01',}try:response=iamport.pay_unschedule(**payload)exceptKeyError:# 필수 값이 없을때 에러 처리passexceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass

结算事前验证

注册

要结算的内容

# 테스트용 값amount=12000mid='merchant_test'try:response=iamport.prepare(amount=amount,merchant_uid=mid)exceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass
确认

注册的字典信息

# 테스트용 값amount=12000mid='merchant_test'try:result=iamport.prepare_validate(merchant_uid=mid,amount=amount)exceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass

本人认证结果查询及管理

查询

本人认证结果。

try:response=iamport.find_certification(imp_uid='{IMP UID}')exceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass

从Imeport中删除本人认证结果。

try:response=iamport.cancel_certification(imp_uid='{IMP UID}')exceptIamport.ResponseErrorase:# 응답 에러 처리passexceptIamport.HttpErrorashttp_error:# HTTP not 200 응답 에러 처리pass

开发环境和测试设置

macOS标准pyenv建议安装

# pyenv 준비
brew install pyenv
pyenv install -s 2.7.17
pyenv install -s 3.5.8
pyenv install -s 3.6.9
pyenv install -s 3.7.5
pyenv install -s 3.8.0
pyenv install -s pypy-5.7.1
pyenv local 2.7.17 3.5.8 3.6.9 3.7.5 3.8.0 pypy-5.7.1
pip install pytest pytest-cov collective.checkdocs Pygments tox-pyenv

# tox
tox

# 커버리지 확인
python -m pytest tests/ --cov=./

# 문서 확인
python setup.py checkdocs

贡献

《h2》要做的事情
    阅读
  • 结算列表
  • 非认证结算细部功能支持
  • 文件化
  • 其他等等

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何正确测试和调试使用照相机闪光灯的应用程序?   组织。jboss。放松点。spi。未处理的异常:java。lang.NoSuchMethodError:org。冬眠SessionFactory。openSession()Lorg/hibernate/Session;   在同一行上声明多个Java数组?   java Spring批处理管理员,无法替换占位符“批处理”。商业模式。脚本'   使用JQuery的网站上出现java HtmlUnit“不支持浏览器”错误   java JavaFX如何将图形“裁剪”到按钮   java处理mysql中包含逗号的数字   java Hibernate语法错误:应为点   如何根据给定的日期在java中获取30天的回溯日期   java Servlet URL映射   线程“awteventque0”java中的多线程java JFrame异常。util。EmptyStackException,即使堆栈先初始化   JavaSpring控制器/组件实现可序列化   java如何在游戏完成时启动带有按钮的对话框?   java Hibernate双向多对多实现   如何使用Xpath Java修改XML中的属性值,包括注释部分   java Mockito模拟构造函数示例   java如何在不重写的情况下写入文本文件?