Repository URL to install this package:
|
Version:
3.8.0 ▾
|
import braintree
from braintree.address import Address
from braintree.resource import Resource
from braintree.configuration import Configuration
class PaymentMethod(Resource):
@staticmethod
def create(params={}):
return Configuration.gateway().payment_method.create(params)
@staticmethod
def find(payment_method_token):
return Configuration.gateway().payment_method.find(payment_method_token)
@staticmethod
def update(payment_method_token, params):
return Configuration.gateway().payment_method.update(payment_method_token, params)
@staticmethod
def delete(payment_method_token):
return Configuration.gateway().payment_method.delete(payment_method_token)
@staticmethod
def create_signature():
return PaymentMethod.signature("create")
@staticmethod
def signature(type):
signature = [
"customer_id",
"payment_method_nonce",
"token",
"billing_address_id",
{"billing_address": Address.create_signature()},
{"options": [
"make_default",
"verify_card",
"fail_on_duplicate_payment_method",
"verification_merchant_account_id",
]
}
]
return signature
@staticmethod
def update_signature():
signature = [
"billing_address_id",
"cardholder_name",
"cvv",
"device_session_id",
"expiration_date",
"expiration_month",
"expiration_year",
"number",
"token",
"venmo_sdk_payment_method_code",
"device_data",
"fraud_merchant_id",
"payment_method_nonce",
{"options": [
"make_default",
"verify_card",
"verification_merchant_account_id",
"venmo_sdk_session"
]
},
{"billing_address" :
Address.update_signature() +
[{"options": ["update_existing"]}]
}
]
return signature