用于使用 Payoneer Escrow API 的 SDK
项目描述
Payoneer 托管
这旨在成为Payoneer Escrow API的干净、惯用的客户端。这将处理生成经过身份验证的标头并构建正确嵌套的请求 URI,以及为您解析任何响应 JSON。
安装
点子
通过 pip 安装与任何其他 Python 包一样简单。
$ pip install payoneer-escrow-sdk
# Alternatively, add to your requirements file and install from there
$ echo 'payoneer-escrow-sdk' >> requirements.txt
$ pip install -r requirements.txt
资源
下载 payoneer-escrow-python 源码:
$ git clone https://github.com/Payoneer-Escrow/payoneer-escrow-python
$ cd payoneer-escrow-python
# Install the package
$ python setup.py install
快速开始
该项目的 GitHub 存储库包含帮助您开始的示例文件。为避免任何潜在风险,这些文件不包含在通过pip安装的包中。建议所有刚接触此 SDK 的人使用example.py — 它允许您确认您的 api 凭据并显示 错误请求遇到的HTTPError的示例处理。在examples/目录中还有一个端到端的商品里程碑订单,用于演示 API 与更复杂的订单类型之一的使用。
# If you installed via pip, you will need to get the example file
$ curl https://raw.githubusercontent.com/Payoneer-Escrow/payoneer-escrow-python/master/example.py > example.py
# Replace the key and secret values with your own credentials
$ echo 'PAYONEER_ESCROW_API_KEY = "ENTER_YOUR_API_KEY_HERE"
PAYONEER_ESCROW_SECRET = "ENTER_YOUR_API_SECRET_HERE"' > api_credentials.py
$ python example.py
用法
Payoneer Escrow API 是 REST-ish 和嵌套的,因此客户端依赖于链接。如果可能,我们返回从 JSON 响应解码的对象(或对象数组)。
from payoneer_escrow_sdk.client import Client
# `should_use_sandbox` is a boolean passed to Client, indicating which
# Payoneer Escrow environment should be used; default is Production.
client = Client('your-key', 'your-secret', should_use_sandbox)
# There are two top-level resources: accounts and shipmentcarriers
# Querying users and orders requires an account_id
client.accounts().all()
client.accounts().get(account_id)
client.shipmentcarriers().all()
client.shipmentcarriers().get(carrier_id)
# From accounts, we chain users, orders, bank accounts
client.accounts().users(account_id).all()
client.accounts().users(account_id).get(user_id)
client.accounts().orders(account_id).all()
client.accounts().orders(account_id).get(order_id)
client.accounts().bankaccounts(account_id).all()
client.accounts().bankaccounts(account_id).get(bank_account_id)
# From orders, many things chain: documents, notes, disputes, shipments,
# payment instructions, order events, and order ledgers
client.accounts().orders(account_id).documents(order_id).all()
client.accounts().orders(account_id).documents(order_id).get(document_id)
client.accounts().orders(account_id).notes(order_id).all()
client.accounts().orders(account_id).notes(order_id).get(note_id)
client.accounts().orders(account_id).disputes(order_id).all()
client.accounts().orders(account_id).disputes(order_id).get(dispute_id)
client.accounts().orders(account_id).shipments(order_id).all()
client.accounts().orders(account_id).shipments(order_id).get(shipment_id)
client.accounts().orders(account_id).paymentinstructions(order_id).all()
client.accounts().orders(account_id).orderevents(order_id).all()
client.accounts().orders(account_id).orderevents(order_id).get(event_id)
client.accounts().orders(account_id).orderledgers(order_id).all()
client.accounts().orders(account_id).orderledgers(order_id).get(ledger_entry_id)
# From disputes, further things chain: documents, notes, offers
client.accounts().orders(account_id).disputes(order_id).documents(
dispute_id).all()
client.accounts().orders(account_id).disputes(order_id).documents(
dispute_id).get(document_id)
client.accounts().orders(account_id).disputes(order_id).notes(
dispute_id).all()
client.accounts().orders(account_id).disputes(order_id).notes(
dispute_id).get(note_id)
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).all()
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).get(offer_id)
# From offers, documents and notes chain
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).documents(offer_id).all()
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).documents(offer_id).get(document_id)
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).notes(offer_id).all()
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).notes(offer_id).get(note_id)
一些资源端点支持创建/更新POST操作,该客户端也旨在支持这些操作:
# Account-related
client.accounts().create(your_data)
client.accounts().update(account_id, your_data)
client.accounts().users(account_id).create(your_data)
client.accounts().users(account_id).update(user_id, your_data)
# Authenticate a URI for display in a lightbox
client.accounts().users(account_id).authentications(user_id).create(your_data)
# Order-related
client.accounts().orders(account_id).create(your_data)
client.accounts().orders(account_id).update(order_id, your_data)
client.accounts().orders(account_id).documents(order_id).create(your_data)
client.accounts().orders(account_id).notes(order_id).create(your_data)
client.accounts().orders(account_id).shipments(order_id).create(your_data)
# Dispute-related
client.accounts().orders(account_id).disputes(order_id).create(your_data)
client.accounts().orders(account_id).disputes(order_id).documents(
dispute_id).create(your_data)
client.accounts().orders(account_id).disputes(order_id).notes(
dispute_id).create(your_data)
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).create(your_data)
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).update(offer_id, your_data)
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).documents(offer_id).create(your_data)
client.accounts().orders(account_id).disputes(order_id).offers(
dispute_id).notes(offer_id).create(your_data)
贡献
叉它
创建您的功能分支(git checkout -b my-new-feature)
提交您的更改(git commit -am 'Add some feature')
推送到分支(git push origin my-new-feature)
创建新的拉取请求
项目详情
关
payoneer_escrow_sdk -0.1.0-py2.py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 89ea320fa92f7e5107867b637d59da7e392d12c1b3a1593c3b2ee0df5930764d |
|
| MD5 | bf647c6de2c932ed0c9c9dee4cd3de56 |
|
| 布莱克2-256 | c7afc9dd1b120995268ff1bcd214775504974076bb8759786c47b48cf3d99070 |