本文整理汇总了Python中mangopaysdk.entities.payin.PayIn.AuthorId方法的典型用法代码示例。如果您正苦于以下问题:Python PayIn.AuthorId方法的具体用法?Python PayIn.AuthorId怎么用?Python PayIn.AuthorId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mangopaysdk.entities.payin.PayIn
的用法示例。
在下文中一共展示了PayIn.AuthorId方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: getJohnsPayInCardDirect
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def getJohnsPayInCardDirect(self, wallet = None):
"""Creates Pay-In Card Direct object
return PayIn
"""
if wallet == None:
wallet = self.getJohnsWallet()
cardRegistration = CardRegistration()
cardRegistration.UserId = wallet.Owners[0]
cardRegistration.Currency = 'EUR'
cardRegistration = self.sdk.cardRegistrations.Create(cardRegistration)
cardRegistration.RegistrationData = self.getPaylineCorrectRegistartionData(cardRegistration)
cardRegistration = self.sdk.cardRegistrations.Update(cardRegistration)
card = self.sdk.cards.Get(cardRegistration.CardId)
# create pay-in CARD DIRECT
payIn = PayIn()
payIn.CreditedWalletId = wallet.Id
payIn.AuthorId = wallet.Owners[0]
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Amount = 10000
payIn.DebitedFunds.Currency = 'EUR'
payIn.Fees = Money()
payIn.Fees.Amount = 0
payIn.Fees.Currency = 'EUR'
# payment type as CARD
payIn.PaymentDetails = PayInPaymentDetailsCard()
payIn.PaymentDetails.CardType = card.CardType
# execution type as DIRECT
payIn.ExecutionDetails = PayInExecutionDetailsDirect()
payIn.ExecutionDetails.CardId = card.Id
payIn.ExecutionDetails.SecureModeReturnURL = 'http://test.com'
return self.sdk.payIns.Create(payIn)
示例2: create
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def create(self, debited_funds, fees=None, secure_mode_return_url=None):
pay_in = PayIn()
pay_in.AuthorId = self.mangopay_user.mangopay_id
pay_in.CreditedUserId = self.mangopay_wallet.mangopay_user.mangopay_id
pay_in.CreditedWalletId = self.mangopay_wallet.mangopay_id
pay_in.DebitedFunds = python_money_to_mangopay_money(debited_funds)
if not fees:
fees = PythonMoney(0, debited_funds.currency)
pay_in.Fees = python_money_to_mangopay_money(fees)
payment_details = PayInPaymentDetailsCard()
payment_details.CardType = "CB_VISA_MASTERCARD"
pay_in.PaymentDetails = payment_details
execution_details = PayInExecutionDetailsDirect()
execution_details.CardId = self.mangopay_card.mangopay_id
execution_details.SecureModeReturnURL = secure_mode_return_url
execution_details.SecureMode = "DEFAULT"
pay_in.ExecutionDetails = execution_details
client = get_mangopay_api_client()
created_pay_in = client.payIns.Create(pay_in)
self.mangopay_id = created_pay_in.Id
self._update(created_pay_in)
示例3: test_PayIns_PreAuthorizedDirect
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def test_PayIns_PreAuthorizedDirect(self):
cardPreAuthorization = self.getJohnsCardPreAuthorization()
wallet = self.getJohnsWalletWithMoney()
user = self.getJohn()
# create pay-in PRE-AUTHORIZED DIRECT
payIn = PayIn()
payIn.CreditedWalletId = wallet.Id
payIn.AuthorId = user.Id
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Amount = 1000
payIn.DebitedFunds.Currency = 'EUR'
payIn.Fees = Money()
payIn.Fees.Amount = 0
payIn.Fees.Currency = 'EUR'
# payment type as CARD
payIn.PaymentDetails = PayInPaymentDetailsPreAuthorized()
payIn.PaymentDetails.PreauthorizationId = cardPreAuthorization.Id
# execution type as DIRECT
payIn.ExecutionDetails = PayInExecutionDetailsDirect()
payIn.ExecutionDetails.SecureModeReturnURL = 'http://test.com'
createPayIn = self.sdk.payIns.Create(payIn)
self.assertTrue(len(createPayIn.Id) > 0)
self.assertEqual(wallet.Id, createPayIn.CreditedWalletId)
self.assertEqual('PREAUTHORIZED', createPayIn.PaymentType)
self.assertIsInstance(createPayIn.PaymentDetails, PayInPaymentDetailsPreAuthorized)
self.assertEqual('DIRECT', createPayIn.ExecutionType)
self.assertIsInstance(createPayIn.ExecutionDetails, PayInExecutionDetailsDirect)
self.assertIsInstance(createPayIn.DebitedFunds, Money)
self.assertIsInstance(createPayIn.CreditedFunds, Money)
self.assertIsInstance(createPayIn.Fees, Money)
self.assertEqual(user.Id, createPayIn.AuthorId)
self.assertEqual('SUCCEEDED', createPayIn.Status)
self.assertEqual('PAYIN', createPayIn.Type)
示例4: test_payin_bank_wire_callback
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def test_payin_bank_wire_callback(self, Get):
homer = self.homer
route = ExchangeRoute.insert(homer, 'mango-bw', 'x')
for status in ('failed', 'succeeded'):
status_up = status.upper()
error = 'FOO' if status == 'failed' else None
e_id = record_exchange(self.db, route, 11, 0, 0, homer, 'pre')
assert homer.balance == 0
homer.close(None)
assert homer.status == 'closed'
qs = "EventType=PAYIN_NORMAL_"+status_up+"&RessourceId=123456790"
payin = PayIn()
payin.Status = status_up
payin.ResultCode = '000001' if error else '000000'
payin.ResultMessage = error
payin.AuthorId = homer.mangopay_user_id
payin.PaymentType = 'BANK_WIRE'
payin.Tag = str(e_id)
Get.return_value = payin
r = self.callback(qs)
assert r.code == 200, r.text
homer = homer.refetch()
if status == 'succeeded':
assert homer.balance == 11
assert homer.status == 'active'
else:
assert homer.balance == 0
assert homer.status == 'closed'
emails = self.get_emails()
assert len(emails) == 1
assert emails[0]['to'][0] == 'homer <%s>' % homer.email
assert status[:4] in emails[0]['subject']
homer.update_status('active') # reset for next loop run
示例5: payin_bank_wire
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def payin_bank_wire(db, participant, debit_amount):
"""Prepare to receive a bank wire payin.
The amount should be how much the user intends to send, not how much will
arrive in the wallet.
"""
route = ExchangeRoute.from_network(participant, 'mango-bw')
if not route:
route = ExchangeRoute.insert(participant, 'mango-bw', 'x')
amount, fee, vat = skim_amount(debit_amount, FEE_PAYIN_BANK_WIRE)
e_id = record_exchange(db, route, amount, fee, vat, participant, 'pre')
payin = PayIn()
payin.AuthorId = participant.mangopay_user_id
if not participant.mangopay_wallet_id:
create_wallet(db, participant)
payin.CreditedWalletId = participant.mangopay_wallet_id
payin.ExecutionDetails = PayInExecutionDetailsDirect()
payin.PaymentDetails = PayInPaymentDetailsBankWire(
DeclaredDebitedFunds=Money(int(debit_amount * 100), 'EUR'),
DeclaredFees=Money(int(fee * 100), 'EUR'),
)
payin.Tag = str(e_id)
try:
test_hook()
payin = mangoapi.payIns.Create(payin)
except Exception as e:
error = repr_exception(e)
return None, record_exchange_result(db, e_id, 'failed', error, participant)
e = record_exchange_result(db, e_id, payin.Status.lower(), repr_error(payin), participant)
return payin, e
示例6: create_payin_direct_card
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def create_payin_direct_card(card, data):
# create pay-in CARD DIRECT
payIn = PayIn()
payIn.CreditedWalletId = data['wallet'].Id
payIn.AuthorId = data['wallet'].Owners[0]
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Amount = data.amount
payIn.DebitedFunds.Currency = 'EUR'
payIn.Fees = Money()
payIn.Fees.Amount = data.fee
payIn.Fees.Currency = 'EUR'
# payment type as CARD
payIn.PaymentDetails = PayInPaymentDetailsCard()
if (card.CardType == 'CB' or card.CardType == 'VISA' or card.CardType == 'MASTERCARD' or card.CardType == CardType.CB_VISA_MASTERCARD):
payIn.PaymentDetails.CardType = CardType.CB_VISA_MASTERCARD
elif (card.CardType == CardType.AMEX):
payIn.PaymentDetails.CardType = CardType.AMEX
# execution type as DIRECT
payIn.ExecutionDetails = PayInExecutionDetailsDirect()
payIn.ExecutionDetails.CardId = card.Id
payIn.ExecutionDetails.SecureModeReturnURL = 'http://test.com'
return self.sdk.payIns.Create(payIn)
示例7: test_PayIns_Create_DirectDebitDirect
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def test_PayIns_Create_DirectDebitDirect(self):
# ! IMPORTANT NOTE !
#
# This test needs your manual confirmation on the web page (see note below)
# Comment out line below to test payins with a mandate.
return
wallet = self.getJohnsWallet()
user = self.getJohn()
bankAccountId = self.getJohnsAccount().Id
returnUrl = 'http://test.test'
mandatePost = Mandate()
mandatePost.BankAccountId = bankAccountId
mandatePost.Culture = 'EN'
mandatePost.ReturnURL = returnUrl
mandate = self.sdk.mandates.Create(mandatePost)
# ! IMPORTANT NOTE !
#
# In order to make this test pass, at this place you have to set a breakpoint,
# navigate to URL the mandate.RedirectURL property points to and click "CONFIRM" button.
payIn = PayIn()
payIn.CreditedWalletId = wallet.Id
payIn.AuthorId = user.Id
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Amount = 1000
payIn.DebitedFunds.Currency = 'EUR'
payIn.Fees = Money()
payIn.Fees.Amount = 1
payIn.Fees.Currency = 'EUR'
payIn.PaymentDetails = PayInPaymentDetailsDirectDebit()
payIn.PaymentDetails.MandateId = mandate.Id
payIn.ExecutionDetails = PayInExecutionDetailsDirect()
createPayIn = self.sdk.payIns.Create(payIn)
self.assertTrue(int(createPayIn.Id) > 0)
self.assertEqual(wallet.Id, createPayIn.CreditedWalletId)
self.assertEqual('DIRECT_DEBIT', createPayIn.PaymentType)
self.assertIsInstance(createPayIn.PaymentDetails, PayInPaymentDetailsDirectDebit)
self.assertEqual(createPayIn.PaymentDetails.MandateId, mandate.Id)
self.assertEqual('DIRECT', createPayIn.ExecutionType)
self.assertIsInstance(createPayIn.ExecutionDetails, PayInExecutionDetailsDirect)
self.assertEqual(user.Id, createPayIn.AuthorId)
self.assertEqual('CREATED', createPayIn.Status)
self.assertEqual('PAYIN', createPayIn.Type)
self.assertIsInstance(createPayIn.DebitedFunds, Money)
self.assertEqual(1000, createPayIn.DebitedFunds.Amount)
self.assertEqual('EUR', createPayIn.DebitedFunds.Currency)
self.assertIsInstance(createPayIn.Fees, Money)
self.assertEqual(1, createPayIn.Fees.Amount)
self.assertEqual('EUR', createPayIn.Fees.Currency)
示例8: create
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def create(self, tag=None):
pay_in = PayIn()
pay_in.Tag = tag
pay_in.AuthorId = self.mangopay_user.mangopay_id
pay_in.CreditedUserId = self.mangopay_user.mangopay_id
pay_in.CreditedWalletId = self.mangopay_wallet.mangopay_id
pay_in.DebitedFunds = python_money_to_mangopay_money(
self.debited_funds)
pay_in.Fees = python_money_to_mangopay_money(self.fees)
pay_in.PaymentDetails = self._get_payment_details()
pay_in.ExecutionDetails = self._get_execution_details()
client = get_mangopay_api_client()
created_pay_in = client.payIns.Create(pay_in)
self.mangopay_id = created_pay_in.Id
self._update(created_pay_in)
示例9: test_PayIns_Create_DirectDebitWeb
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def test_PayIns_Create_DirectDebitWeb(self):
wallet = self.getJohnsWallet()
user = self.getJohn()
# create pay-in PRE-AUTHORIZED DIRECT
payIn = PayIn()
payIn.CreditedWalletId = wallet.Id
payIn.AuthorId = user.Id
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Amount = 10000
payIn.DebitedFunds.Currency = 'EUR'
payIn.Fees = Money()
payIn.Fees.Amount = 100
payIn.Fees.Currency = 'EUR'
# payment type as CARD
payIn.PaymentDetails = PayInPaymentDetailsDirectDebit()
payIn.PaymentDetails.DirectDebitType = 'GIROPAY'
payIn.ExecutionDetails = PayInExecutionDetailsWeb()
payIn.ExecutionDetails.ReturnURL = 'http://www.mysite.com/returnURL/'
payIn.ExecutionDetails.Culture = 'FR'
payIn.ExecutionDetails.TemplateURLOptions = PayInTemplateURLOptions()
payIn.ExecutionDetails.TemplateURLOptions.PAYLINE = 'https://www.maysite.com/payline_template/'
createPayIn = self.sdk.payIns.Create(payIn)
self.assertTrue(int(createPayIn.Id) > 0)
self.assertEqual(wallet.Id, createPayIn.CreditedWalletId)
self.assertEqual('DIRECT_DEBIT', createPayIn.PaymentType)
self.assertIsInstance(createPayIn.PaymentDetails, PayInPaymentDetailsDirectDebit)
self.assertEqual(createPayIn.PaymentDetails.DirectDebitType, 'GIROPAY')
self.assertEqual('WEB', createPayIn.ExecutionType)
self.assertIsInstance(createPayIn.ExecutionDetails, PayInExecutionDetailsWeb)
self.assertEqual('FR', createPayIn.ExecutionDetails.Culture)
self.assertEqual(user.Id, createPayIn.AuthorId)
self.assertEqual('CREATED', createPayIn.Status)
self.assertEqual('PAYIN', createPayIn.Type)
self.assertIsInstance(createPayIn.DebitedFunds, Money)
self.assertEqual(10000, createPayIn.DebitedFunds.Amount)
self.assertEqual('EUR', createPayIn.DebitedFunds.Currency)
self.assertIsInstance(createPayIn.CreditedFunds, Money)
self.assertEqual(9900, createPayIn.CreditedFunds.Amount)
self.assertEqual('EUR', createPayIn.CreditedFunds.Currency)
self.assertIsInstance(createPayIn.Fees, Money)
self.assertEqual(100, createPayIn.Fees.Amount)
self.assertEqual('EUR', createPayIn.Fees.Currency)
self.assertIsNotNone(createPayIn.ExecutionDetails.ReturnURL)
self.assertIsNotNone(createPayIn.ExecutionDetails.RedirectURL)
self.assertIsNotNone(createPayIn.ExecutionDetails.TemplateURL)
示例10: getJohnsPayInCardWeb
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def getJohnsPayInCardWeb(self):
"""Creates Pay-In Card Web object"""
wallet = self.getJohnsWallet()
user = self.getJohn()
payIn = PayIn()
payIn.AuthorId = user.Id
payIn.CreditedUserId = user.Id
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Currency = 'EUR'
payIn.DebitedFunds.Amount = 1000
payIn.Fees = Money()
payIn.Fees.Currency = 'EUR'
payIn.Fees.Amount = 5
payIn.CreditedWalletId = wallet.Id
payIn.PaymentDetails = self.getPayInPaymentDetailsCard()
payIn.ExecutionDetails = self.getPayInExecutionDetailsWeb()
return self.sdk.payIns.Create(payIn)
示例11: getJohnsPayInBankWireDirect
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def getJohnsPayInBankWireDirect(self):
wallet = self.getJohnsWallet()
payIn = PayIn()
payIn.CreditedWalletId = wallet.Id
payIn.AuthorId = wallet.Owners[0]
# payment type as CARD
payIn.PaymentDetails = PayInPaymentDetailsBankWire()
payIn.PaymentDetails.DeclaredDebitedFunds = Money()
payIn.PaymentDetails.DeclaredFees = Money()
payIn.PaymentDetails.DeclaredDebitedFunds.Currency = 'EUR'
payIn.PaymentDetails.DeclaredFees.Currency = 'EUR'
payIn.PaymentDetails.DeclaredDebitedFunds.Amount = 10000
payIn.PaymentDetails.DeclaredFees.Amount = 1000
# execution type as DIRECT
payIn.ExecutionDetails = PayInExecutionDetailsDirect()
payIn.ExecutionType = ExecutionType.DIRECT
return self.sdk.payIns.Create(payIn)
示例12: getJohnsWalletWithMoney
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def getJohnsWalletWithMoney(self, amount = 10000):
"""Creates static JohnsWallet (wallets belonging to John) if not created yet
return Wallet
"""
if self._johnsWalletWithMoney == None:
john = self.getJohn()
wallet = Wallet()
wallet.Owners = [john.Id]
wallet.Currency = 'EUR'
wallet.Description = 'WALLET IN EUR'
wallet = self.sdk.wallets.Create(wallet)
cardRegistration = CardRegistration()
cardRegistration.UserId = wallet.Owners[0]
cardRegistration.Currency = 'EUR'
cardRegistration = self.sdk.cardRegistrations.Create(cardRegistration)
cardRegistration.RegistrationData = self.getPaylineCorrectRegistartionData(cardRegistration)
cardRegistration = self.sdk.cardRegistrations.Update(cardRegistration)
card = self.sdk.cards.Get(cardRegistration.CardId)
# create pay-in CARD DIRECT
payIn = PayIn()
payIn.CreditedWalletId = wallet.Id
payIn.AuthorId = cardRegistration.UserId
payIn.DebitedFunds = Money()
payIn.DebitedFunds.Amount = amount
payIn.DebitedFunds.Currency = 'EUR'
payIn.Fees = Money()
payIn.Fees.Amount = 0
payIn.Fees.Currency = 'EUR'
# payment type as CARD
payIn.PaymentDetails = PayInPaymentDetailsCard()
if (card.CardType == 'CB' or card.CardType == 'VISA' or card.CardType == 'MASTERCARD' or card.CardType == CardType.CB_VISA_MASTERCARD):
payIn.PaymentDetails.CardType = CardType.CB_VISA_MASTERCARD
# elif (card.CardType == CardType.AMEX):
# payIn.PaymentDetails.CardType = CardType.AMEX
# execution type as DIRECT
payIn.ExecutionDetails = PayInExecutionDetailsDirect()
payIn.ExecutionDetails.CardId = card.Id
payIn.ExecutionDetails.SecureModeReturnURL = 'http://test.com'
# create Pay-In
self.sdk.payIns.Create(payIn)
self._johnsWalletWithMoney = self.sdk.wallets.Get(wallet.Id)
return self._johnsWalletWithMoney
示例13: charge
# 需要导入模块: from mangopaysdk.entities.payin import PayIn [as 别名]
# 或者: from mangopaysdk.entities.payin.PayIn import AuthorId [as 别名]
def charge(db, participant, amount, return_url):
"""Charge the participant's credit card.
Amount should be the nominal amount. We'll compute fees below this function
and add it to amount to end up with charge_amount.
"""
typecheck(amount, Decimal)
if participant.is_suspicious:
raise UserIsSuspicious
route = ExchangeRoute.from_network(participant, 'mango-cc')
assert route
charge_amount, fee = upcharge(amount)
amount = charge_amount - fee
e_id = record_exchange(db, route, amount, fee, participant, 'pre')
payin = PayIn()
payin.AuthorId = participant.mangopay_user_id
if not participant.mangopay_wallet_id:
create_wallet(db, participant)
payin.CreditedWalletId = participant.mangopay_wallet_id
payin.DebitedFunds = Money(int(charge_amount * 100), 'EUR')
payin.ExecutionDetails = PayInExecutionDetailsDirect(
CardId=route.address,
SecureModeReturnURL=return_url,
)
payin.Fees = Money(int(fee * 100), 'EUR')
payin.PaymentDetails = PayInPaymentDetailsCard(CardType='CB_VISA_MASTERCARD')
payin.Tag = str(e_id)
try:
test_hook()
payin = mangoapi.payIns.Create(payin)
except Exception as e:
error = repr_exception(e)
return record_exchange_result(db, e_id, 'failed', error, participant)
if payin.ExecutionDetails.SecureModeRedirectURL:
raise Response(302, headers={'Location': payin.ExecutionDetails.SecureModeRedirectURL})
return record_exchange_result(db, e_id, 'succeeded', None, participant)