官方rave python wrapper by flutterwave

rave-python的Python项目详细描述


巨蟒

简介

这是一个python包装器,它围绕着fatterwave的rave-by-fatterwave的api

实施的付款类型:

安装

要安装,请运行

pip安装rave_python

注意:目前正在积极开发中

导入包

这个包的基类是"rave"。若要使用此类,请添加:

来自rave_python import rave

初始化

在沙盒中实例化:

要使用rave,请使用公钥实例化rave类。我们建议您将密钥存储在名为rave_secret_key的环境变量中。因此,实例化rave对象非常简单:

rave=rave("您的公共密钥")

在没有环境变量的情况下实例化(沙盒):

如果您选择不将密钥存储在环境变量中,我们会提供一个usingenv标志,可以将其设置为false,但请注意,在生产环境变量不存在的情况下,不要使用此包

rave=rave("您的公开密钥","您的秘密密钥",usingenv=false)

在生产中实例化:

要在生产中初始化,只需将production标志设置为true。这是非常不鼓励的,但如果您选择不使用环境变量,您可以使用上述相同的方式。

rave=rave("您的公共密钥",production=true)

锐舞对象

这是rave_python所有组件的文档

旅行卡

这是用来促进信用卡交易的。

包括的功能:

< BR>

。充电(有效载荷)

这被称为启动卡交易。有效负载应该是包含卡信息的字典。它应该具有以下参数:

  • 卡号

  • cvv

  • 货币

  • 国家

  • expirymonth

  • expiryYear

  • 金额

  • 电子邮件

  • 电话号码

  • 名字

  • 姓氏

  • IP

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.card.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'validationrequired':true,'suggestedauth':u'pin,'flwref':none,'authurl':none,'error':false,'txref':'mc-1538095398058'}

如果在处理事务时出现问题,此调用将引发CardChargeErrorCardChargeError包含有关您的交易的一些信息。你可以这样处理:

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

示例e.err包含:

{'error':true,'txref':'mc-1530897824739,'flwref':none,'errmsg':'对不起,该卡号无效,请检查并重试'}

< BR>

rave.misc.updatepayload(authmethod,payload,arg)

根据充电呼叫的提示身份,您可能需要使用pin或地址更新负载。要知道您需要哪种身份验证,只需调用rave.card.gettypeofargsrequired(suggestedauth)。这将返回pin地址

p in的情况下,您需要调用rave.card.updatepayload(suggestedauth,payload,pin="the_customer_pin")

address的情况下,您需要调用rave.card.updatepayload(suggestedauth,payload,address={the_address_dictionary})

典型的地址字典包括以下参数:

billingzip

计费城市

帐单地址

帐单状态

billingcountry

注意:suggestedauth是初始充电呼叫返回的suggestedauth,而有效负载是原始有效负载

< BR>

.validate(外部参照)

成功充电后,大多数情况下会要求您使用OTP进行验证。要检查是否需要,请检查收费呼叫的res中的validationrequired键。

要验证,您需要从收费呼叫的res和OTP中传递flwref

示例验证调用是:

res2=rave.card.validate(res["flwref"],"12345")

返回

如果成功,此调用将返回一个字典,其中包含txrefflwref等。

如果OTP不正确或处理您的请求时出现问题,则此调用将引发TransactionValidationError

要处理此问题,请写入:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

示例e.err包含:

{'error':true,'txref':none,'flwref':'flw-mock-a7911408bd7f55f89f021189d6fd370,'errmsg':'otp is required'}

< BR>

。验证(txref)

您可以调用此函数来检查事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.card.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

样本 {'flwref':无,'cardtoken':u'flw-t1nf-5b0f12d565cd961f73c51370b1340f1f-m03k,'chargedamount':100,'amount':100,'transactioncomplete':true,'error':false,'txref':u'mc-1538095718251'}

请注意,在Rave上成功充值卡后,如果您希望保存卡以进行进一步的充值,则在您的验证支付响应中会找到一个对象:"CardToken":"flw-t0-f6f915f53a094671d9856027257293e-m03k"。这是您将用于卡令牌化的令牌。详情如下。

如果您的呼叫未能成功完成,则会引发TransactionVerificationerRor

< BR>

。充值(有效载荷存储卡,chargewithtoken=true)

这被称为使用已保存的卡开始卡交易。有效负载应该是包含卡信息的字典。它应该具有以下参数:

  • 令牌

  • 国家

  • 金额

  • <代码>代码E邮件

  • 名字

  • 姓氏

  • IP

  • txref

  • 货币

注意:电子邮件必须与保存卡之前的电子邮件相同

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.card.charge(已保存卡的有效载荷,chargewithtoken=true)

返回

此调用返回字典。示例响应为:

{"status":u"success","validationrequired":false,"suggestedauth":none,"flwref":u"flw-m03k-cdb24d740fb18c242d277fb1f74d399","authurl":none,"error":false,"txref":"mc-7666-yu"}

如果传递了错误的令牌或电子邮件,或者在处理您的交易时出现问题,则此呼叫将引发CardChargeErrorCardChargeError包含有关您的交易的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])

如果缺少任何必需的参数,则此调用还会引发不完整PaymentDetailsRor未完成paymentdetailserror包含有关未包含在有效负载中的参数的信息。您可以这样处理:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])

完成后,调用rave.card.verify传入响应中返回的txref以验证付款。样本响应:

{'flwref':无,'cardtoken':u'flw-t1nf-5b0f12d565cd961f73c51370b1340f1f-m03k,'chargedamount':1000,'amount':1000,'transactioncomplete':true,'error':false,'txref':'mc-7666-yu'}

rave.card.verify如果提供了无效的"Txref",则会引发一个TransactionVerificationerRor。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])

注意:在为保存的卡充电时,不需要调用rave.card.validate()

完整的卡充值流程


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])



旅行帐户

这是用来促进帐户交易的。

包括的功能:

  • 。充电

  • 。验证

  • 。验证

< BR>

。充电(有效载荷)

这被调用以启动帐户事务。有效负载应该是包含卡信息的字典。它应该具有以下参数:

  • 开户银行

  • 帐号

  • 金额

  • 电子邮件

  • 电话号码

  • IP

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.account.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'error':false,'validationrequired':true,'txref':'mc-1530899106006,'flwref':'achg-1530899109682,'authUrl':none}

如果处理事务时出现问题,则此调用将引发accountchargeerroraccountchargeerror包含有关您的交易的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

示例e.err包含:

{'error':true,'txref':'mc-1530897824739,'flwref':none,'errmsg':'抱歉,该帐号无效,请检查并重试'}

< BR>

.validate(外部参照)

充电成功后,大多数时候你将被要求与OTP核实。要检查是否需要,请检查收费呼叫的res中的validationrequired键。

如果您的付费电话返回了authURL,您可以跳过验证步骤,直接将authURL传递给最终用户。

authURL=res['authURL']

要验证,您需要从收费呼叫的res和OTP中传递flwref

示例验证调用是:

res2=rave.account.validate(res["flwref"],"12345")

返回

如果成功,此调用将返回一个字典,其中包含txrefflwref等。

如果OTP不正确或处理您的请求时出现问题,则此调用将引发TransactionValidationError

要处理此问题,请写入:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

示例e.err包含:

{'error':true,'txref':'mc-1530899869968,'flwref':'achg-1530899873118,'errmsg':'pending otp validation'}

< BR>

。验证(txref)

您可以调用此函数来检查事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.account.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

示例

{状态:u"成功","vbvcode":u"n/a","chargedMount":500,"vbvmessage":u"n/a","错误":false,"flwref":u"achg-1538093023787","货币":u"ngn","金额":500,"transactionComplete":true,"acctMessage":u"批准或成功完成","chargecode":u"00","外部参照":u'mc-1538093008498'}

如果无法成功完成调用,或者传递了错误的txref,则会引发TransactionVerificationerRor。您可以这样处理

try: 
    #Your charge call
except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
< BR>

完整的帐户流程

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
0



rave.ghmobile

这是用来促进加纳移动货币交易的。

包括的功能:

  • 。充电

  • 。验证

< BR>

。充电(有效载荷)

这被称为启动加纳移动货币交易。有效负载应该是包含帐户信息的字典。它应该具有以下参数:

  • 金额

  • 电子邮件

  • 电话号码

  • 网络

  • IP

  • 重定向URL

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.ghmobile.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'error':false,'validationrequired':true,'txref':'mc-1530910216380,'flwref':'n/a'}

如果处理事务时出现问题,此调用将引发transactionchargeerror事务chargeerror包含有关您的事务的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1

示例e.err包含:

{'error':true,'txref':'mc-1530911537060,'flwref':none,'errmsg':none}

< BR>

。验证(txref)

你可以调用此函数以检查您的事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.ghmobile.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

如果您的呼叫未能成功完成,则会引发TransactionVerificationerRor

< BR>

完成GHMobile充电流程

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
2



rave.mpesa

这用于促进MPESA交易。

包括的功能:

  • 。充电

  • 。验证

< BR>

。充电(有效载荷)

调用此命令以启动MPESA事务。有效负载应该是包含帐户信息的字典。它应该具有以下参数:

  • 帐户

  • 电子邮件

  • 电话号码

  • IP

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.mpesa.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'error':false,'validationrequired':true,'txref':'mc-1530910216380,'flwref':'n/a'}

如果处理事务时出现问题,此调用将引发transactionchargeerror事务chargeerror包含有关您的事务的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1

示例e.err包含:

{'error':true,'txref':'mc-1530910109929,'flwref':none,'errmsg':'电子邮件是必需的'}

< BR>

。验证(txref)

您可以调用此函数来检查事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.mpesa.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

如果您的呼叫未能成功完成,则会引发TransactionVerificationerRor

< BR>

完成MPESA充电流程

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
4



rave.ugmobile

这是用来促进乌干达移动货币交易的。

包括的功能:

  • 。充电

  • 。验证

< BR>

。充电(有效载荷)

这被称为启动乌干达移动货币交易。有效负载应该是包含帐户信息的字典。它应该具有以下参数:

  • 金额

  • 电子邮件

  • 电话号码

  • IP

  • 重定向URL

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在e杂项库(添加链接)。

示例调用是:

res=rave.ugmobile.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'error':false,'status':'success,'validationrequired':true,'txref':'mc-1544013787279,'flwref':'flwm3s4m0c1544013788481'}

如果处理事务时出现问题,此调用将引发transactionchargeerror事务chargeerror包含有关您的事务的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1

示例e.err包含:

{'error':true,'txref':'mc-1530911537060,'flwref':none,'errmsg':none}

< BR>

。验证(txref)

您可以调用此函数来检查事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.ugmobile.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

如果您的呼叫未能成功完成,则会引发TransactionVerificationerRor

< BR>

完成UGMobile充电流程

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
6



rave.zbmobile

这是用来促进赞比亚移动货币交易的。

包括的功能:

  • 。充电

  • 。验证

< BR>

。充电(有效载荷)

这被称为启动赞比亚移动货币交易。有效负载应该是包含帐户信息的字典。它应该具有以下参数:

  • 金额

  • 电子邮件

  • 电话号码

  • IP

  • 重定向URL

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.zbmobile.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'error':false,'status':'success,'validationrequired':true,'txref':'mc-1544013787279,'flwref':'flwm3s4m0c1544013788481'}

如果处理事务时出现问题,此调用将引发transactionchargeerror事务chargeerror包含有关您的事务的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1

示例e.err包含:

{'error':true,'txref':'mc-1530911537060,'flwref':none,'errmsg':none}

< BR>

。验证(txref)

您可以调用此函数来检查事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.zbmobile.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

如果您的呼叫未能成功完成,则会引发TransactionVerificationerRor

< BR>

完成ZBMobile充电流程

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
8



<颂歌>狂欢.法语

这用于促进象牙海岸、塞内加尔和马里的移动货币交易。

包括的功能:

  • 。充电

  • 。验证

< BR>

。充电(有效载荷)

这被称为启动一个法语手机货币交易。有效负载应该是包含帐户信息的字典。它应该具有以下参数:

  • 金额

  • 电子邮件

  • 电话号码

  • IP

  • 重定向URL

也可以使用txref参数添加自定义事务引用。请注意,如果您没有指定一个,它将自动生成。我们确实提供了一个在MISC库(添加链接)中生成事务引用的函数。

示例调用是:

res=rave.francophone.charge(有效载荷)

返回

此调用返回字典。示例响应为:

{'error':false,'validationrequired':true,'txref':'mc-15664826756,'flwref':none,'suggestedauth':none,'redirecturl':'https://flatterwaveprodv2.com/flwcinetpay/paymentservlet?参考=FLW186321566482674310'}

调用返回redirect url'redirecturl':'https://redirecturl.com'以验证事务。如果处理事务时出现问题,则会引发transactionchargeerror事务chargeerror包含有关您的事务的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1

示例e.err包含:

{'error':true,'txref':'mc-1530911537060,'flwref':none,'errmsg':none}

< BR>

。验证(txref)

您可以调用此函数来检查事务是否已成功完成。您必须传递在收费点生成的事务引用。这是res参数中的txref返回的任何调用(chargevalidate)。

验证调用示例为:

res=rave.francophone.verify(数据["Txref"])

返回

此调用返回一个dict,其中包含txrefflwreftransactioncomplete,指示事务是否已成功完成。

如果您的呼叫未能成功完成,则会引发TransactionVerificationerRor

< BR>

完整的法语手机充值流程

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
0



rave.preauth

这是用来促进预先授权的卡交易。这继承了card类,因此您可以在card上执行任何任务,您可以使用preauth来执行。

包括的功能:

  • 。充电

  • 。捕获

  • 。验证

  • 。验证

  • 。退款

  • .void

< BR>标记。a标记如下所示flw-t1nf-5b0f12d565cd961f73c51370b1340f1f-m03k **/P>

。收费(CardDetails,ChargeWithToken=true,HasFailed=false)

这用于预先授权客户支付的特定金额。

注意:>;参数与刷卡费用相同。但是,cardDetails对象不同。请参见下面的示例

一旦预授权成功,您就可以在以后的时间或日期捕获

收费电话示例如下:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1

返回

这个电话返回字典。示例响应为:

{'error':false,'status':'success,'validationrequired':false,'txref':'mc-7666-yu,'flwref':'flw-preauth-m03k-7d01799093ee2db9d8136cf042dc8c37,'suggestedauth':none,'authurl':none}

如果处理事务时出现问题,此调用将引发transactionchargeerror事务chargeerror包含有关您的事务的一些信息。您可以这样处理:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
2 < BR>

。捕获(flwref)

这是用来获取帐户中的资金。与validate调用类似,它要求您传递事务的flwref

< Buff行情>

注意必须从初始充电的响应(即在调用rave.preauth.charge(payload)之后)获得flwref

示例捕获调用是:

rave.preauth.capture(数据["flwref"])

返回

此调用返回字典。示例响应为:

{'error':false,'status':'success,'message':'capture complete,'validationrequired':false,'txref':'mc-7666-yu,'flwref':'flw-preauth-m03k-0bce8fe1c3561e17e026ddfbbbea37fdb'}

如果处理事务时出现问题,则此调用将引发预授权错误预授权捕获错误包含有关事务的一些信息。您可以这样处理:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
3 < BR>

.void(flwref)

这用于作废预授权事务。与validate调用类似,它要求您传递flwref

< Buff行情>

注意必须从初始充电的响应(即在调用rave.preauth.charge(payload)之后)获得flwref

void调用示例如下:

rave.preauth.void(数据["flwref"])

< BR>

。退款(flwref)

这用于退还预授权交易。与validate调用类似,它要求您传递flwref

< Buff行情>

注意必须从初始充电的响应(即在调用rave.preauth.charge(payload)之后)获得flwref

void调用示例如下:

Rave.Preauth.Refund(数据["flwref"])

。验证(txref)

请参阅rave.card.verify above

返回

此调用返回字典。示例响应为:

{'error':false,'transactioncomplete':true,'txref':'mc-7666-yu,'flwref':none,'amount':1000,'chargedamount':1000,'cardtoken':'flw-t1nf-5b0f12d565cd961f73c51370b1340f1f-m03k'}

如果处理事务时出现问题,此调用将引发TransactionVerificationerRorTransactionVerificationerRor包含有关事务的一些信息。您可以这样处理:

try: 
    #Your charge call
except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
< BR>

完成预授权充电流程

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
5 < BR> ##``` Rave.子帐户```

它用于启动和管理支出

包括的功能:

  • .createSubAccount

  • .allsubaccounts

  • 。获取子帐户

< BR>

.createSubAccount(帐户详细信息)

这允许您创建子帐户计划。它需要一个dictaccountdetails包含帐户银行帐户号码业务名称业务电子邮件业务联系人业务联系人业务联系人

账户银行:这是子账户银行ISO代码,使用银行转账列表sfer检索银行代码列表的端点。

< Buff行情>

帐号:这是客户的帐号

< Buff行情>

业务名称:这是子帐户的业务名称。

< Buff行情>

业务电子邮件:这是子帐户业务电子邮件。

< Buff行情>

业务联系人:这是子帐户的联系人,例如Richard Hendrix

< Buff行情>

商务联系人手机:商务联系人号码。

< Buff行情>

商务手机:主要商务联系电话。

< Buff行情>

分割类型:这可以设置为百分比平坦如果设置为百分比,则表示您希望对所有交易收取百分比费用,反之亦然,对于平坦,则表示您希望对每个交易收取固定费用。

< Buff行情>

分割值:这可以是百分比值或平坦值,具体取决于在分割类型上设置的值

更多信息可以在这里找到

createSubAccount调用示例如下:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
6

返回

此调用返回字典。示例响应为:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
7

如果处理事务时出现问题,则此调用将引发.subAccountCreationerRor.subAccountCreationerRor包含有关您的事务的一些信息。您可以这样处理:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
8

.allsubAccounts()

这允许您检索所有子帐户

allsubaccounts调用示例如下:

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
9

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
0

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

.fetchSubAccount(子帐户ID)

这允许您获取子帐户。您可以或不可以传入子帐户id。如果您不传入子帐户id将返回所有子帐户。

< Buff行情>

子帐户ID:这是付款计划ID。它可以从创建计划返回的响应或从RAVE仪表板获取

fetchSubAccount调用示例如下:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
2

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
3

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

完成子账户流程

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
5 < BR>

传送

它用于启动和管理支出

包括的功能:

  • 。启动

  • .bulk

  • 。获取

  • 。所有传输

  • .getfee

  • .getbalance

< BR>

。启动(传输详细信息)

这将启动到客户帐户的转账。当传输启动时,会显示一个新状态这意味着传输已排队等待处理。

请注意,作为发起呼叫的一部分,您必须传递受益人姓名。否则将引发错误。

< Buff行情>

另外,如果您正在进行国际传输,则必须传递一个元参数作为有效负载的一部分,如下所示:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
6

启动调用示例如下:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
7

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
8

如果存在,此调用将引发未完成付款详细信息错误处理您的交易时出现问题。未完成付款详细信息错误包含有关您的交易的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
9

。批量(批量详细信息)

这将启动到bulkdetails对象中指定的客户的批量传输。当传输启动时,会显示一个新状态这意味着传输已排队等待处理。

批量调用示例如下:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
0

返回

此调用返回字典。示例响应为:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
1

如果处理事务时出现问题,此调用将引发InitiateTransfererrorinitiateTransfererror包含有关事务的一些信息。您可以这样处理:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
2

.fetch(reference=none)

这允许您检索单个传输。您可以或不可以传入引用。如果不传入引用,则将返回所有已处理的传输。

示例提取调用是:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
3

返回

此调用返回字典。示例响应为:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
4

如果处理事务时出现问题,此调用将引发transferfetcherror。transferfetcherror包含一些有关事务的信息。您可以这样处理:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
5

.alltransfers()

这允许您检索所有传输。

alltransfers调用示例如下:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
6

返回

此调用返回字典。示例响应为:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
7

如果处理事务时出现问题,此调用将引发transferfetcherror。transferfetcherror包含一些有关事务的信息。您可以这样处理:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
5

.getfee(货币)

这允许您获得所有rave支持的货币的转移率。您可以或不可以输入货币。如果您不输入货币,将返回所有RAVE支持的货币转移率。

一个示例getfee呼叫是:

try:
    #Your charge call
except RaveExceptions.IncompletePaymentDetailsError as e:
    print(e.err["errMsg"])
9

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
0

.getbalance(货币)

这允许您在指定的时间内获得余额。您可以或不可以输入货币。如果您不输入货币,您的余额将以Yiur Rave帐户中指定的货币返回

示例提取调用是:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
2 < BR>

完整的传输流程

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
3 < BR>

rave.subscriptions

它用于启动和管理支出

包括的功能:

  • 。所有订阅

  • 。获取订阅

  • 。取消订阅

  • 。激活订阅

.allsubscriptions()

这允许您检索所有订阅

allsubaccounts调用示例如下:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
4

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
5

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

。获取订阅(订阅ID、订阅电子邮件)

这允许您获取订阅。您可以或不可以传入订阅ID订阅电子邮件。如果您没有输入订阅ID或订阅电子邮件,将返回所有订阅。

< Buff行情>

订阅ID:这是订阅ID。

< Buff行情>

订阅电子邮件:这是订阅电子邮件。

fetchSubAccount调用示例如下:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
7

返回

此调用返回字典。示例响应为:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
5

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

。取消订阅(订阅ID)

这允许您取消订阅。

< Buff行情>

订阅ID:这是订阅ID。可以从Rave仪表板获取它

CancelSubscription调用示例如下:


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

0

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

。激活订阅(订阅ID)

这允许您激活订阅。

< Buff行情>

订阅ID:这是订阅ID。可以从Rave仪表板获取它

示例activatesubscription调用是:


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

2

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

完成订阅流程


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

4 < BR> ##```薪酬计划```

它用于启动和管理支出

包括的功能:

  • .createplan

  • 。所有计划

  • .fetchplan

  • 。取消计划

  • .editplan

< BR>

.createplan(计划详细信息)

这允许客户创建付款计划。它需要一个dict计划详细信息包含金额,名称间隔持续时间

< Buff行情>

金额:这是计划的金额

< Buff行情>

姓名:这是订阅提醒电子邮件中显示的内容

< Buff行情>

间隔:这是充电间隔可能的值是:


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

5 < Buff行情>

持续时间:这是频率,它是数字,例如,如果设置为5,间隔设置为每月,您将收取5个月的费用,然后订阅停止。

更多信息可在这里找到

如果持续时间未过,任何订阅的客户都将无限期收费

createplan调用示例如下:


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

6

返回

此调用返回字典。示例响应为:


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

7

如果处理事务时出现问题,则此调用将引发未完成付款详细信息错误。未完成付款详细信息错误包含有关您的交易的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
9

.allplans()

这允许您检索所有付款计划。

allplans调用示例是:


from rave_python import Rave
rave = Rave("YOUR_PUBLIC_KEY", "YOUR_SECRET_KEY", usingEnv = False)

# Payload with pin
payload = {
  "cardno": "5438898014560229",
  "cvv": "890",
  "expirymonth": "09",
  "expiryyear": "19",
  "amount": "10",
  "email": "user@gmail.com",
  "phonenumber": "0902620185",
  "firstname": "temi",
  "lastname": "desola",
  "IP": "355426087298442",
}

try:
    res = rave.Card.charge(payload)

    if res["suggestedAuth"]:
        arg = Misc.getTypeOfArgsRequired(res["suggestedAuth"])

        if arg == "pin":
            Misc.updatePayload(res["suggestedAuth"], payload, pin="3310")
        if arg == "address":
            Misc.updatePayload(res["suggestedAuth"], payload, address= {"billingzip": "07205", "billingcity": "Hillside", "billingaddress": "470 Mundet PI", "billingstate": "NJ", "billingcountry": "US"})

        res = rave.Card.charge(payload)

    if res["validationRequired"]:
        rave.Card.validate(res["flwRef"], "")

    res = rave.Card.verify(res["txRef"])
    print(res["transactionComplete"])

except RaveExceptions.CardChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])

except RaveExceptions.TransactionValidationError as e:
    print(e.err)
    print(e.err["flwRef"])

except RaveExceptions.TransactionVerificationError as e:
    print(e.err["errMsg"])
    print(e.err["txRef"])

9

返回

此调用返回字典。示例响应为:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
0

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

.fetchplan(计划id,计划名称)

这允许您获取付款计划。您可以或不可以传入计划id计划名称。如果您没有输入计划ID计划名称,则将返回所有付款计划。

< Buff行情>

计划ID:这是付款计划ID,可以从创建计划或Rave仪表板返回的响应

< Buff行情>

计划名称:这是付款计划名称。它可以从创建计划或Rave仪表板返回的响应中获取

fetchplan调用示例如下:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
2

返回

此调用返回字典。示例响应为:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
3

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

。取消计划(计划ID)

这允许您取消付款计划。它要求您输入计划id

< Buff行情>

计划ID:这是付款计划ID。它可以从创建计划返回的响应或从RAVE仪表板获取

CancelPlan调用示例如下:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
5

返回

此调用返回字典。示例响应为:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
6

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1

.editplan(计划id,newdata={})

这允许您编辑付款计划。它要求您输入计划id。如果您不传入包含您要对计划进行更改的newdatadict,计划将保持不变。

< Buff行情>

计划ID:这是付款计划ID。它可以从创建计划返回的响应或从RAVE仪表板获取

< Buff行情>

newdata:adict必须包含一个或两个:名称状态作为属性。 name指定付款计划的新名称。 状态:可能的值为活动取消

CancelPlan调用示例如下:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
8

返回

此调用返回字典。示例响应为:

try: 
    #Your charge call
except RaveExceptions.AccountChargeError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
9

如果处理事务时出现问题,此调用将引发planstuserrorplanstuserror包含有关事务的一些信息。您可以这样处理:

try: 
   #Your charge call
except RaveExceptions.CardChargeError as e:
   print(e.err["errMsg"])
   print(e.err["flwRef"])
1 < BR>

完成付款计划流程

try:
    # Your charge call
except RaveExceptions.TransactionValidationError as e:
    print(e.err["errMsg"])
    print(e.err["flwRef"])
1 < BR>

rave.ussd

< Buff行情>

注意:此付款选项仍处于测试模式。

< BR> γ跑试验

所有sdk的测试都是用python的unittest模块编写的。当前测试: 旅行帐户旅行卡传送 rave.preauthrave.subaccountrave.订阅rave.paymentplan

它们可以这样运行:

python test.py

< Buff行情>

注意:如果创建子帐户的测试失败,只需将帐户号帐户银行业务电子邮件更改为其他值

< Buff行情>

注意:帐户验证测试可能失败-等待OTP验证取决于服务是否关闭

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

推荐PyPI第三方库


热门话题
java集合属性值   java字符串==运算符是否比较引用?   java是否存在过太多的ListView或适配器?   json获取java中类路径中下载的文件   我可以用java代码解决数据库并发问题吗?   在多个线程中使用forEach()或使用forEach()和lambdas进行java集合迭代   java输出JFrame中的整个循环   java禁用高度详细的日志记录   java在没有特定属性的对象中访问模型的值   java Smack xmpp建立连接   处理过时域对象引起的并发问题的java策略(Grails/GORM/Hibernate)   java从ObservableList中提取元素   使用图像进行java相似图像搜索   java ListView和图像:我快疯了   在Java中,如何从毫秒时间戳中提取一天的周期?   java我需要这样的设计,但我面临两个问题   java如何获取JGoodies FormLayout中的单元格大小   Spring引导生成的java War文件未部署到Weblogic 12c