- class pagseguro.Payment[source]¶
Esta é a classe principal do PagSeguro-Python. Todo o processo de pagamento é realizado através dela.
O mínimo necessário para fazer uma solicitação de pagamento é:
- Criar uma instância de Payment passando o seu email e token.
- Adicionar um ou mais itens.
- Chamar o método request()
- Ler o atributo payment_url para obter a URL para a qual o comprador deve ser redirecionado
Mas é possível também definir outros atributos:
- Payment(email, token, receiver_email=None, currency='BRL', reference=None, extra_amount=None, redirect_url=None, notification_url=None, max_uses=None, max_age=None, **kwargs)¶
Classe que implementa a requisição à API do PagSeguro versão 2
Parameters:
- email (str) – (obrigatório) O email da sua conta no PagSeguro
- token (str) – (obrigatório) O seu token de acesso ao PagSeguro
- receiver_email (str) – (opcional)
- currency (str) – (opcional) A moeda a ser utilizada. Nesta versão apenas o valor BRL é aceito e ele é definido por padrão. Não se preocupe com este parâmetro.
- reference (str) – (opcional) Um identificador para a transação. Você irá utilizar este valor posteriormente para identificar as transações.
- extra_amount (float) – (opcional) Um valor extra que deve ser adicionado ou subtraído ao valor total do pagamento.
- redirect_url (str) – (opcional) URL para a qual o comprador será redirecionado após o final do fluxo de pagamento. Tamanho máximo de 255 caracteres.
- notification_url (str) – (opcional) URL para a qual o PagSeguro enviará os códigos de notificação relacionados ao pagamento. Toda vez que houver uma mudança no status da transação e que demandar sua atenção, uma nova notificação será enviada para este endereço.
- max_uses (int) – Determina o número máximo de vezes que o código de pagamento criado pela chamada à API de Pagamentos poderá ser usado. Este parâmetro pode ser usado como um controle de segurança.
- max_age (int) – (opcional) Determina o prazo (em segundos) durante o qual o código de pagamento criado pela chamada à API de Pagamentos poderá ser usado. Este parâmetro pode ser usado como um controle de segurança
Exemplos:
>>> payment = Payment(email=local_settings.PAGSEGURO_ACCOUNT_EMAIL, token=local_settings.PAGSEGURO_TOKEN) >>> payment.add_item(item_id=u'id-do-item-1', description=u'Desc. do produto', amount=7, quantity=2) >>> payment.add_item(item_id=u'id-do-item-2', description=u'Um outro produto', amount=24.1, quantity=2) >>> payment.set_client(name=u'Adam Yauch', phone_area_code=11, phone_number=12341234, cpf='93537621701') >>> payment.set_shipping(cost=1.2) >>> payment.request() >>> url = payment.payment_url
- Payment.set_client()[source]¶
Se você possui informações cadastradas sobre o comprador você pode utilizar este método para enviar estas informações para o PagSeguro. É uma boa prática pois evita que seu cliente tenha que preencher estas informações novamente na página do PagSeguro.
Parameters:
- name (str) – (opcional) Nome do cliente
- email (str) – (opcional) Email do cliente
- phone_area_code (str) – (opcional) Código de área do telefone do cliente. Um número com 2 digitos.
- phone_number (str) – (opcional) O número de telefone do cliente.
- cpf – (str): (opcional) Número do cpf do comprador
- born_date – (date): Data de nascimento no formato dd/MM/yyyy
- Exemplo:
>>> from pagseguro import Payment >>> from pagseguro import local_settings >>> payment = Payment(email=local_settings.PAGSEGURO_ACCOUNT_EMAIL, token=local_settings.PAGSEGURO_TOKEN) >>> payment.set_client(name=u'Adam Yauch', phone_area_code=11)
- Payment.set_shipping()[source]¶
Define os atributos do frete
Parameters:
- type (int) – (opcional) Tipo de frete. Os valores válidos são: 1 para ‘Encomenda normal (PAC).’, 2 para ‘SEDEX’ e 3 para ‘Tipo de frete não especificado.’
- cost (float) – (opcional) Valor total do frete. Deve ser maior que 0.00 e menor ou igual a 9999999.00.
- street (str) – (opcional) Nome da rua do endereço de envio do produto
- address_number – (opcional) Número do endereço de envio do produto.
- complement – (opcional) Complemento (bloco, apartamento, etc.) do endereço de envio do produto.
- district – (opcional) Bairro do endereço de envio do produto.
- postal_code – (opcional) CEP do endereço de envio do produto.
- city – (opcional) Cidade do endereço de envio do produto.
- state – (opcional) Estado do endereço de envio do produto.
- country – (opcional) País do endereço de envio do produto. Apenas o valor ‘BRA’ é aceito.