5. Exemplos de transação¶
5.1. Criar transação de cartão de crédito não presente¶
5.2. Criar transação de cartão de crédito presente¶
import os
from factory.faker import Faker
from zoop_wrapper import ZoopWrapper, Transaction, Source, Token
from examples.utils import dump_response
"""
Nesse momento as constantes podem ser criadas no arquivo .py.
Mas é recomendado utilizar como variável de ambiente em um '.env'
"""
from zoop_wrapper.constants import MARKETPLACE_ID, ZOOP_KEY
client = ZoopWrapper(marketplace_id=MARKETPLACE_ID, key=ZOOP_KEY)
seller_brian = "0b05a360f4b749498f74e13004c08024"
seller_denise = "25037b2978b14e7fa5b902d9322e8426"
# Essa flag indica se a transação deve ser apenas pré autorizada ou capturada
capture_flag = True
# Equivalente à R$543,21
quantia_em_centavos = "54321"
t = Transaction(
customer=seller_brian,
description="Uma descrição breve da motivação da sua transação",
on_behalf_of=seller_denise,
payment_type="credit",
capture=capture_flag,
source=Source(
amount=quantia_em_centavos,
card=Token(
card_number=Faker("credit_card_number").generate(),
expiration_month="05",
expiration_year="2030",
holder_name="foo",
security_code=123,
),
usage="single_use",
),
)
response = client.add_transaction(t)
dump_response(response, os.path.basename(__file__).split(".")[0])
5.3. Criar transação de boleto¶
import os
from zoop_wrapper import (
Fine,
Interest,
Discount,
BillingInstructions,
Invoice,
Transaction,
ZoopWrapper,
)
from examples.utils import dump_response
"""
Nesse momento as constantes podem ser criadas no arquivo .py.
Mas é recomendado utilizar como variável de ambiente em um '.env'
"""
from zoop_wrapper.constants import MARKETPLACE_ID, ZOOP_KEY
from examples.seller.retrieve_seller import seller_id
from examples.buyer.retrieve_buyer import buyer_id
client = ZoopWrapper(marketplace_id=MARKETPLACE_ID, key=ZOOP_KEY)
# seller_id = "3b94dc92dbad422ea49d44364f3b7b4b"
buyer_or_seller_id = buyer_id
quantia_em_centavos = "3000"
vencimento = "2020-11-20"
pre_vencimento = "2020-11-10"
limite = "2020-11-30"
t = Transaction(
amount=quantia_em_centavos,
customer=buyer_or_seller_id,
description="meu boleto gerado para teste",
on_behalf_of=seller_id,
capture=True,
payment_type="boleto",
payment_method=Invoice(
expiration_date=vencimento,
payment_limit_date=limite,
billing_instructions=BillingInstructions(
late_fee=Fine(
mode=Fine.PERCENTAGE,
percentage=2,
),
interest=Interest(
mode=Interest.MONTHLY_PERCENTAGE,
percentage=1,
),
discount=[
Discount(
amount=200,
limit_date=pre_vencimento,
mode=Discount.FIXED,
),
],
),
),
)
# _data = {
# 'amount': '1000',
# 'currency': 'BRL',
# 'description': 'meu boleto gerado para teste',
# 'on_behalf_of': seller_id,
# 'customer': buyer_or_seller_id,
# 'payment_type': 'boleto',
# 'payment_method': {
# 'expiration_date': '2020-06-20',
# 'payment_limit_date': '2020-06-30',
# 'billing_instructions': {
# 'late_fee': {
# 'mode': BillingConfiguration.PERCENTAGE_MODE,
# 'percentage': 30,
# 'start_date': '2020-06-20'
# },
# 'interest': {
# 'mode': BillingConfiguration.MONTHLY_PERCENTAGE_MODE,
# 'percentage': 30,
# 'start_date': '2020-06-20'
# },
# 'discount': [{
# 'mode': BillingConfiguration.FIXED_MODE,
# 'amount': 300,
# 'limit_date': '2020-06-20'
# }]
# }
# }
# }
response = client.add_transaction(t)
dump_response(response, os.path.basename(__file__).split(".")[0])
5.4. Extornar transação de cartão¶
import os
from zoop_wrapper import ZoopWrapper
from examples.utils import dump_response
"""
Nesse momento as constantes podem ser criadas no arquivo .py.
Mas é recomendado utilizar como variável de ambiente em um '.env'
"""
from zoop_wrapper.constants import MARKETPLACE_ID, ZOOP_KEY
client = ZoopWrapper(marketplace_id=MARKETPLACE_ID, key=ZOOP_KEY)
card_transaction_id = "b8d82a6296b346f58fa02bd47b14c095"
response = client.cancel_transaction(card_transaction_id)
dump_response(response, os.path.basename(__file__).split(".")[0])
5.5. Listar transações¶
import os
from zoop_wrapper import ZoopWrapper
from examples.utils import dump_response
"""
Nesse momento as constantes podem ser criadas no arquivo .py.
Mas é recomendado utilizar como variável de ambiente em um '.env'
"""
from zoop_wrapper.constants import MARKETPLACE_ID, ZOOP_KEY
client = ZoopWrapper(marketplace_id=MARKETPLACE_ID, key=ZOOP_KEY)
response = client.list_transactions()
dump_response(response, os.path.basename(__file__).split(".")[0])
5.6. Listar transações de um seller¶
import os
from zoop_wrapper import ZoopWrapper
from examples.utils import dump_response
"""
Nesse momento as constantes podem ser criadas no arquivo .py.
Mas é recomendado utilizar como variável de ambiente em um '.env'
"""
from zoop_wrapper.constants import MARKETPLACE_ID, ZOOP_KEY
client = ZoopWrapper(marketplace_id=MARKETPLACE_ID, key=ZOOP_KEY)
response = client.list_transactions_for_seller("27e17b778b404a83bf8e25ec995e2ffe")
dump_response(response, os.path.basename(__file__).split(".")[0])
5.7. Pegar detalhes da transação¶
import os
from zoop_wrapper import ZoopWrapper
from examples.utils import dump_response
"""
Nesse momento as constantes podem ser criadas no arquivo .py.
Mas é recomendado utilizar como variável de ambiente em um '.env'
"""
from zoop_wrapper.constants import MARKETPLACE_ID, ZOOP_KEY
client = ZoopWrapper(marketplace_id=MARKETPLACE_ID, key=ZOOP_KEY)
response = client.retrieve_transaction("e8405efa7eaa49ccbca49ec667685dd3")
dump_response(response, os.path.basename(__file__).split(".")[0])