pagseguro / pagseguro-sdk-php

Biblioteca de integração em PHP
299 stars 149 forks source link

Split Payment #52

Closed pdrolima closed 6 years ago

pdrolima commented 7 years ago

Boa noite,

O Split Payment só funciona com checkout transparente?

gabriellucius commented 7 years ago

Olá @webmasterdro Acredito que sim. Você precisaria utilizá-la em outro contexto?

pdrolima commented 7 years ago

Sim, @gabriellucius. Meu tipo de negócio, não tem nenhuma possibilidade de implemnentar Checkout Transparente (jogo online) e queria fazer um Split pra poder enviar um dinheiro automaticamente pro meu sócio, mas queria fazer isso no meio comum Checkout normal ou Ligthbox.

gabriellucius commented 7 years ago

@webmasterdro consegui aqui uma resposta oficial para você sobre o split:

"No momento o PagSeguro está reavaliando a solução e, por este motivo, o Split Payment estará indisponível para novas integrações. Caso queira ser alertado quando a ferramenta estiver disponível novamente, basta preencher o formulário na página do produto. Também faremos um post na área de novidades sobre a disponibilidade da ferramenta."

paulomartinhago commented 7 years ago

@gabriellucius estou com um projeto para implementar o split do pagseguro, será que ainda não é possível?

gabriellucius commented 7 years ago

@paulomartinhago estão ocorrendo algumas mudanças referentes ao Split no PagSeguro. Recomendo entrar em contato com o suporte deles ou no fórum que acredito que vão conseguir te responder melhor do que eu.

pranjaliPP commented 6 years ago

Oi,

Estou recebendo um problema com "Pagamento transparente com pagamento dividido" ao enviar uma solicitação através do CURL em PHP para o método de pagamento do boleto. Sempre retorna Proibido em resposta, por favor me ajude.

A seguir estão os meus dados:

{"appId":"app2688092458","appKey":"438261C045452B63345DAF8168818794","payment.mode":"default","payment.method":"boleto","currency":"BRL","item[1].id":1,"item[1].description":"Product 1 Description","item[1].amount":100,"item[1].quantity":1,"notificationURL":"https:\/\/yourstore.com.br\/notification","reference":"ORDER123","sender.name":"Customer Name","sender.CPF":22111944785,"sender.areaCode":11,"sender.phone":56273440,"sender.email":"customer@uol.com.br","sender.hash":"53fae76b4f8bd84d2e721c5c8e9d22c6b319d0d7f07785b07d2c29809e89fc88","shipping.address.street":"Av. Brig. Faria Lima","shipping.address.number":1384,"shipping.address.complement":"5o andar","shipping.address.district":"Jardim Paulistano","shipping.address.postalCode":414722,"shipping.address.city":"Sao Paulo","shipping.address.state":"SP","shipping.address.country":"BRA","shipping.type":3,"shipping.cost":0,"primaryReceiver.publicKey":"PUBB19D99786AF245C1B203E7CA48FD04E5","receiver[1].publicKey":"PUBB45327D6166E4288BEA4283DC82E5C2B","receiver[1].split.amount":20,"receiver[2].publicKey":"PUBB19D99786AF245C1B203E7CA48FD04E5","receiver[2].split.amount":30}

Desde já, obrigado !!!

pranjaliPP commented 6 years ago

IS anyone there to reply my comment above ???

gabriellucius commented 6 years ago

@pranjaliPP você estava utilizando boleto com Split ou Boleto normal?

Se for com Split, sugiro entrar em contato com o suporte do PagSeguro, pois este serviço está com algumas restrições de uso atualmente.

Caso seja um checkout transparente normal, tente atualizar a versão da biblioteca e tentar novamente.

pranjaliPP commented 6 years ago

@gabriellucius - Eu tentei com o método de pagamento por cartão de crédito para "pagamento transparente com pagamento por divisão" também, mas ainda estou recebendo "proibido" na resposta curl.

A seguir é o pedido que envio:

{"appId": "app2688092458", "appKey": "438261C045452B63345DAF8168818794", "payment.mode": "default", "payment.method": "creditCard", "currency": "BRL", "sender.phone" : "1234566878", "sender.email": "test@webkul.com", "shipping.address.street": "1 main st.", "Shipping.address.number": 13, "shipping.address.complement ":" 1 main st. "," Shipping.address.district ":" São Paulo "," shipping.address.postalCode ":" 123456 "," shipping.address.city ":" São Paulo "," envio ". endereço.state ":" S \ u00e3o Paulo "," shipping.address.country ":" BR "," shipping.type ": 3," shipping.cost ":" 25.0000 "," contingment.quantity ": 1, "provisionment.value": 100, "installment.noInterestInstallmentQuantity": 1, "creditCard.token": "4badc70948774e3bbb6ebae6698d78eb", "creditCard.holder.name": "john Doe", "creditCard.holder.CPF": "11111111111" , "creditCard.holder.birthDate": "27 \ / 10 \ / 1987", "creditCard.holder.areaCode": "11", "creditCard.holder.phone": "1234566878", "billingAddress.street": " 1 main st. "," BillingAddress.number ": 58," billingAddress.complement ":" 1 main st. "," Cobrança Address.district ":" Sao Paulo "," billingAddress.postalCode ":" 123456 "," billingAddress.city ":" Sao Paulo "," billingAddress.state ":" S \ u00e3o Paulo "," billingAddress.country ": "BR", "item [1] .id": "12880", "item [1] .description": "test product 4", "item [1] .amount": "7.0000", "item [1] .quantidade ": 1," notificationURL ":" http: \ / \ / magento2user.webkul.com \ / magento214 \ / mppagsegurocheckout \ / notify \ / "," reference ":" 597 "," sender.name ":" john Doe "," sender.CPF ":" 11111111111 "," sender.areaCode ":" 11 "," sender.hash ":" a5c18ecadcceceb41817772ffcb753098760bd176a170892da53d5e9ffa2d7e5 "," primaryReceiver.publicKey ":" PUBB45327D6166E4288BEA4283DC82E5C2B "," receptor [1]. publicKey ":" PUBB19D99786AF245C1B203E7CA48FD04E5 "," receptor [1] .split.amount ": 5.6," receptor [2] .publicKey ":" PUBB45327D6166E4288BEA4283DC82E5C2B "," receptor [2] .split.amount ": 26.4}

Resposta: "Proibido"

Por favor, ajude se você souber sobre isso.

gabriellucius commented 6 years ago

Então @pranjaliPP , esse pagamento com divisão é o split que citei antes. Então sugiro que primeiro você entre em contato com o PagSeguro para validar a disponibilidade desse serviço e confirmar se sua conta está habilitada para usar esse tipo de checkout. Como eu disse, este serviço está com algumas restrições de uso, então pode ser esse o problema.

pranjaliPP commented 6 years ago

@gabriellucius - OK obrigado por me avisar

santanamic commented 4 years ago

@pranjaliPP Eu também recebo o retorno "forbidden" você conseguiu uma solução?

peuweb commented 3 years ago

Estou ressuscitando esse código porque recebi o "forbidden" também. Então resolvi revisar a documentação.

Comecei seguindo a documentação normal onde você passa seu email e token para gerar tudo. Porém, para o split de pagamento você precisará fazer tudo via "transação(Aplicação)". tem na documentação.

  1. Como criar aplicação - https://dev.pagseguro.uol.com.br/reference/aplicacoes-introducao
  2. Split de pagamento com aplicação - https://dev.pagseguro.uol.com.br/reference/split

Vamos aos erros que cometi e as correções: Ps. os exemplos estão em sandbox(teste).

Session

Antes: https://ws.sandbox.pagseguro.uol.com.br/v2/sessions?email=email@emailpagseguro.com&token=XXXXXXXXX

Depois(com aplicação): https://ws.sandbox.pagseguro.uol.com.br/sessions?appId=appId&appKey=appKey Perceba, a url está sem o /v2/ e os parâmetros são appId e appKey.

Transactions

Antes: https://ws.sandbox.pagseguro.uol.com.br/v2/transactions?email=email@emailpagseguro.com&token=XXXXXXXXX

Depois(com aplicação): https://ws.sandbox.pagseguro.uol.com.br/transactions?appId=appId&appKey=appKey

Importante. Precisa adicionar esses dois headers para funcionar:

Content-Type: application/{xml or x-www-form-urlencoded};charset={ISO-8859-1 or UTF-8}
Accept: application/vnd.pagseguro.com.br.v3+xml

Eu enviei com XML com UTF-8 então a versão do meu header ficou:

Content-Type: application/xml;charset=UTF-8
Accept: application/vnd.pagseguro.com.br.v3+xml

De resto, não esqueçam de passar os valores para e . No receivers, precisei passar o valor e o percentual para funcionar... enfim.

Espero ter ajudado alguém com esse mesmo tipo de problema.

natopedroso commented 2 years ago

Boa Noite! Recebo forbiden tb! mesmo com as dicas do @peuweb Se alguem tiver uma luz aí ficarei grato dmais!

santanamic commented 2 years ago

Olá Pessoal. Na época eu recebia esse erro pois o split não estava habilitado na minha conta. Entrei em contato com o suporte e eles libertaram a funcionalidade.

xxdannilinxx commented 1 year ago

Se vocês estão tomando erro 403, é pq não autorizaram o vendedor a utilizar a aplicação.

POST EM https://ws.sandbox.pagseguro.uol.com.br/v2/authorizations/request/?appId=&appKey= pega o código na resposta, depois faz vai pra url

https://sandbox.pagseguro.uol.com.br/v2/authorization/request.jhtml?code=codigo_gerado_anteriormente

loga com o vendedor gerado no sandbox e autoriza.

Pronto, 403 nunca mais.