跳转到主要内容

获取paymentech支付处理器的功能

项目描述

此包包含getpaid框架的paymentech支付处理功能。



=======
变更记录
=======


0.3 (2008-08-29)
----------------

* 将构建文件和通用文本文档添加到项目根目录。
* 删除setup.cfg


0.2 (2008-08-21)
----------------

* Eggified包
* 将构建文件和通用文本文档添加到项目根目录。

详细文档
**********************

============================
GetPaid Paymentech接口
============================

特定存储处理设置测试
此测试仅针对授权和标记捕获
我们正在测试Orbital认证指南的第A部分和第C部分



存储创建

>>> from getpaid.core import interfaces
>>> from zope.app.annotation import IAttributeAnnotatable
>>> from zope.interface import implements
>>> class Store
... implements(interfaces.IStore, IAttributeAnnotatable)
>>> store = Store()

行项目创建

>>> from getpaid.core import order, cart, item
>>> from cPickle import loads, dumps
>>> order_ids = []
>>> abc = item.LineItem()
>>> abc.name = 'abc'
>>> abc.quantity = 1

>>> def createOrderId()
... order_id = str(random.randint( 2**10, 2**30 ))
... while order_id in order_ids
... order_id = str(random.randint( 2**10, 2**30 ))
... order_ids.append(order_id)
... return order_id

支付处理器创建

>>> from getpaid.paymentech.paymentech import PaymentechAdapter
>>> processor = PaymentechAdapter(store)
>>> processor.options.merchant_id = "700000007587"
>>> processor.options.terminal_id = "001"
>>> processor.server = processor._sites['Test1']


第A部分:仅授权交易
==========================================

测试授权的通用函数

>>> 从 getpaid.paymentech.paymentech 导入 createAuthorizeXMLFile
>>> 从 getpaid.paymentech.paymentech 导入 getElement
>>> 导入 random
>>> 从 Products.PloneGetPaid.browser.checkout 导入 BillingInfo
>>> 从 datetime 导入 date
>>> def test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, my_order)
... my_cart = cart.ShoppingCart()
... abc.cost = amount
... my_cart['abc'] = abc
... my_order.shopping_cart = loads(dumps(my_cart))
... payment_infos = BillingInfo(my_order)
... payment_infos.name_on_card = "Test Cardholder"
... payment_infos.phone_number = "1234567890"
... payment_infos.cc_expiration = date(2009, 2, 1)
... payment_infos.credit_card_type = credit_card_type
... payment_infos.credit_card = credit_card_number
... payment_infos.cc_cvc = cc_cvc
... data = createAuthorizeXMLFile('A', processor.options, my_order, payment_infos)
... return processor.process(data, timeout=None)

测试 1
>>> credit_card_type = "Visa"
>>> credit_card_number = "4788250000028291"
>>> cc_cvc = "111"
>>> amount = 30.00
>>> order1 = order.Order()
>>> order1.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order1)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "00"
True
>>> res_trans_ref_num1 = result.trans_ref_num

测试 2
>>> credit_card_type = "Visa"
>>> credit_card_number = "4788250000028291"
>>> cc_cvc = "222"
>>> amount = 38.01
>>> order2 = order.Order()
>>> order2.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order2)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "05"
True
>>> res_trans_ref_num2 = result.trans_ref_num

测试 3
>>> credit_card_type = "Mastercard"
>>> credit_card_number = "5454545454545454"
>>> cc_cvc = "333"
>>> amount = 41.00
>>> order3 = order.Order()
>>> order3.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order3)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "00"
True
>>> res_trans_ref_num3 = result.trans_ref_num

测试 4
>>> credit_card_type = "Mastercard"
>>> credit_card_number = "5454545454545454"
>>> cc_cvc = "666"
>>> amount = 11.02
>>> order4 = order.Order()
>>> order4.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order4)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "01"
True
>>> res_trans_ref_num4 = result.trans_ref_num

测试 5
>>> credit_card_type = "American Express"
>>> credit_card_number = "371449635398431"
>>> cc_cvc = "1111"
>>> amount = 1055.00
>>> order5 = order.Order()
>>> order5.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order5)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "00"
True
>>> res_trans_ref_num5 = result.trans_ref_num

测试 6
>>> credit_card_type = "American Express"
>>> credit_card_number = "371449635398431"
>>> cc_cvc = "555"
>>> amount = 75.00
>>> order6 = order.Order()
>>> order6.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order6)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "00"
True
>>> res_trans_ref_num6 = result.trans_ref_num

测试 7
>>> credit_card_type = "Discover"
>>> credit_card_number = "6011000995500000"
>>> cc_cvc = "666"
>>> amount = 10.00
>>> order7 = order.Order()
>>> order7.order_id = order_id = createOrderId()
>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order7)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>> res_resp_code == "00"
True
>>> res_trans_ref_num7 = result.trans_ref_num

测试 8
>>> credit_card_type = "Discover"
>>> credit_card_number = "6011000995500000"
>>> cc_cvc = "444"
>>> amount = 63.03
>>> order8 = order.Order()
>>> order8.order_id = order_id = createOrderId()
>>>> result = test_authorize(credit_card_type, credit_card_number, cc_cvc, amount, order8)
>>> res_order_id = getElement(result.result_resp, 'OrderID')
>>> order_id == res_order_id
True
>>> res_resp_code = getElement(result.result_resp, 'RespCode')
>>>> res_resp_code == "04"
True
>>>> res_trans_ref_num8 = result.trans_ref_num


章节 C:捕获标记
===========================

通用的捕获测试函数

>>>> from getpaid.paymentech.paymentech import createCaptureXMLFile
>>>> def test_capture(order, trans_ref_num, amount)
... data = createCaptureXMLFile(processor.options, order, trans_ref_num, amount)
... return processor.process(data, timeout=None)

测试 A-1
>>> amount = 30.00
>>>> result = test_capture(order1, res_trans_ref_num1, amount)
>>>> res_resp_code = getElement(result.result_resp, 'ProcStatus')
>>>> res_resp_code == "0"
True
>>>> res_trans_ref_num = result.trans_ref_num

测试 A-3
>>> amount = 41.00
>>>> result = test_capture(order3, res_trans_ref_num3, amount)
>>>> res_resp_code = getElement(result.result_resp, 'ProcStatus')
>>>> res_resp_code == "0"
True
>>>> res_trans_ref_num = result.trans_ref_num

测试 A-5
>>> amount = 1055.00
>>>> result = test_capture(order5, res_trans_ref_num5, amount)
>>>> res_resp_code = getElement(result.result_resp, 'ProcStatus')
>>>> res_resp_code == "0"
True
>>>> res_trans_ref_num = result.trans_ref_num

测试 A-7
>>> amount = 10.00
>>>> result = test_capture(order7, res_trans_ref_num7, amount)
>>>> res_resp_code = getElement(result.result_resp, 'ProcStatus')
>>>> res_resp_code == "0"
True
>>>> res_trans_ref_num = result.trans_ref_num







下载
**********************

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

getpaid.paymentech-0.3.tar.gz (8.8 kB 查看散列)

上传时间

由以下提供支持