Пример #1
0
def profile_delete(request):
    """
    ProfileDelete (transaction = profileDelete)
    Fields:
        customerNumber (R)
    """

    args = Args(request)
    cred = Credentials(args.merchant_id)
    profile = Profile(
        merchant_id=args.merchant_id,
        username=cred.username,
        password=cred.password,
        production=cred.production,
        ident=args.customer_num
    )
    return profile.destroy()
Пример #2
0
def profile_update(request):
    """
    ProfileUpdate (transaction = profileUpdate) ??? or profileupdate
    Fields:
        customerName (R) *
        customerNumber (R)
        merchantGroupNumber (R)
        customerAddress1 (N)
        customerAddress2 (N)
        customerCity (N)
        customerState (N)
        customerZip (N)
        orderDefaultDescription (N)
        orderDefaultAmount (N)
        creditCardNumber (R) *
        creditCardExpiration (R) *
        * Required by CCQFM, but not by Chase

    Sample Call:
        ?merchantGroupNumber=700000005942&transaction=profileupdate&customerName=Test&customerNumber=14494063&customerAddress1=112+Main+Street&customerAddress2=Apt2&customerCity=Mineola&customerState=NY&customerZip=11540&orderDefaultAmount=100.00&creditCardNumber=5105105105105100&creditCardExpiration=201212
    """
    args = Args(request)
    cred = Credentials(args.merchant_id)
    profile = Profile(
        merchant_id=args.merchant_id,
        username=cred.username,
        password=cred.password,
        production=cred.production,
        ident=args.customer_num,
        name=args.name,
        address1=args.address1,
        address2=args.address2,
        city=args.city,
        state=args.state,
        zipCode=args.zipcode,
        cc_num=args.cc_num,
        cc_expiry=args.cc_expiry
    )
    result = profile.update()

    result_dict = OrderedDict()
    result_dict['customerRefNum'] = result['CustomerRefNum']
    result_dict['profileAction'] = result['CustomerProfileAction']
    result_dict['procStatus'] = result['ProfileProcStatus']
    result_dict['procStatusMessage'] = result['CustomerProfileMessage']
    return format_response(result_dict)
Пример #3
0
def profile_add(request):
    """
    ProfileAdd (transaction = profileAdd)
    Fields:
        customerName (R)
        customerNumber (C)
        merchantGroupNumber (R)
        customerAddress1 (N)
        customerAddress2 (N)
        customerCity (N)
        customerState (N)
        customerZip (N)
        orderDefaultDescription (N)
        orderDefaultAmount (N)
        creditCardNumber (R)
        creditCardExpiration (R)

    Sample Call:
        ?merchantgroupnumber=700000005942&transaction=profileadd&customername=test&customernumber=234&customeraddress1=112Main+Street&customeraddress2=Apt+2&customercity=Mineola&customerstate=NY&customerzip=11540&orderdefaultamount=100.00&creditcardnumber=5105105105105100&creditcardexpiration=201212
    """
    args = Args(request)
    cred = Credentials(args.merchant_id)
    profile = Profile(
        merchant_id=args.merchant_id,
        username=cred.username,
        password=cred.password,
        production=cred.production,
        name=args.name,
        address1=args.address1,
        address2=args.address2,
        city=args.city,
        state=args.state,
        zipCode=args.zipcode,
        cc_num=args.cc_num,
        cc_expiry=args.cc_expiry
    )

    result = profile.create()
    result_dict = OrderedDict()
    result_dict["customerRefNum"] = result["CustomerRefNum"]
    result_dict["profileAction"] = result["CustomerProfileAction"]
    result_dict["procStatus"] = result["ProfileProcStatus"]
    result_dict["procStatusMessage"] = result["CustomerProfileMessage"]
    return format_response(result_dict)
Пример #4
0
def profile_retrieval(request):
    """
    ProfileRetrieval (transaction = profileRetrieval)
    Fields:
        customerName (R)
        customerNumber (R)
        merchantGroupNumber (R)

    Sample Call:
        ?merchantgroupnumber=700000005942&transaction=profileretrieval&customername=test&customernumber=14494063
    """
    args = Args(request)
    cred = Credentials(args.merchant_id)
    profile = Profile(
        merchant_id=args.merchant_id,
        username=cred.username,
        password=cred.password,
        production=cred.production,
        ident=args.customer_num
    )

    result = profile.read()
    result_dict = OrderedDict()
    result_dict['customerRefNum'] = result['CustomerRefNum']
    result_dict['profleAction'] = result['CustomerProfileAction']
    result_dict['procStatus'] = result['ProfileProcStatus']
    result_dict['procStatusMessage'] = result['CustomerProfileMessage']
    result_dict['customerName'] = result['CustomerName']
    result_dict['Address'] = result['CustomerAddress1']
    result_dict['Address2'] = result['CustomerAddress2']
    result_dict['City'] = result['CustomerCity']
    result_dict['State'] = result['CustomerState']
    result_dict['ZIP'] = result['CustomerZIP']
    result_dict['Email'] = result['CustomerEmail']
    result_dict['Phone'] = result['CustomerPhone']
    result_dict['cardNum'] = result['CCAccountNum']
    expiry = result['CCExpireDate']
    if expiry and len(expiry) >= 4:
        (exp_mo, exp_yr) = (expiry[:2], expiry[-2:])
        result_dict['ExpDate'] = "20%s%s" % (exp_yr, exp_mo)
    return format_response(result_dict)