Carrinho próprio

Como funciona:

Trabalhando com carrinho próprio, sua loja mantém os dados do carrinho. Todo o processo de inclusão de produtos no carrinho de compras acontece dentro da loja. Ao final do processo, quando o comprador está satisfeito com sua compra, ele é enviado ao PagSeguro uma única vez com todos os dados de seu pedido. Aqui também, você tem duas opções. Pode enviar os dados do pedido e deixar o PagSeguro solicitar os dados do comprador, ou pode solicitar todos os dados necessários para a compra em sua loja e enviá-los ao PagSeguro.

Deixando o PagSeguro cuidar dos dados do comprador

Nesta opção você envia ao PagSeguro apenas os dados da compra, assim:

Você deve notar que há dois blocos semelhantes de campos: item_id_1, item_descr_1, item_quant_1 e etc. e item_id_2, item_desc_2 e etc. Neste formulário, estamos enviando dois itens para o PagSeguro. Você pode enviar de 1 a 100 itens.

Os dados enviados são:

Campos Obrigatórios

NomeDescrição
email_cobrancaInformar aqui o seu e-mail que deverá estar cadastrado e verificado junto ao PagSeguro.
tipoInformar o tipo de POST que está sendo enviado ao PagSeguro. (CBR para usar o carrinho PagSeguro e CP para usar seu próprio carrinho). Para carrinho próprio use "CP" (que é o padrão)
moedaFormato da moeda a qual será utilizada pelo PagSeguro.
Atualmente, o único valor aceito é BRL (Brasil - Real).
item_id_xNúmero do primeiro produto do carrinho. Número único que identifica o produto em sua loja (não pode se repetir).
item_descr_xDescrição do primeiro produto no carrinho. Título do Produto.
item_quant_xQuantidade do primeiro produto adicionado ao carrinho.
item_valor_xValor do primeiro produto em seu carrinho, sem vírgulas ou pontos. Para um produto que custa R$ 1,00 você deverá informar 100 (somente números).
submitVocê poderá utilizar uma das imagens dos botões do PagSeguro, como ex:
https://p.simg.uol.com.br/out/pagseguro/i/botoes/pagamentos/99x61-pagar-assina.gif
ou poderá usar botão próprio (informando o link do mesmo).

Campos Opcionais

NomeDescrição
item_frete_xValor do frete da mercadoria sem vírgulas ou pontos. Para um frete de R$ 2,00 você deverá informar 200 (somente números).
item_peso_xInforme em gramas, o peso total dos produtos à venda. Para 1kg informe 1000 e para 30g informe 30.
ref_transacaoCódigo identificador para seu website.
Este campo é livre e poderá ser utilizado para identificar um cliente (cliente ID), ou como o número do pedido ou qualquer outra referência que você queira usar.
Obs.: Você não precisa repetir este campo para cada item do carrinho, basta incluí-lo apenas uma vez.
tipo_freteAqui você deverá informar EN para Encomenda econômica (PAC) ou SD para Sedex. Se você não enviar essa informação, o PagSeguro perguntará ao usuário que tipo de frete ele gostaria de usar.
Obs.: Você não precisa repetir este campo para cada item do carrinho, basta incluí-lo apenas uma vez.
encodingPadrão de encoding dos dados enviados. Você pode informar ao PagSeguro em qual padrão de encoding seus dados estão formatados. O PagSeguro irá converter esses dados para o padrão ISO-8859-1. Ex.: você pode enviar UTF-8, UTF-16 ou US-ASCII.
extrasUtilize este campo para acrescentar ao pedido um valor adicional, caso necessário. Exemplo: você pode incluir o valor da embalagem de presente. Você também pode enviar um valor negativo neste campo, caso deseje oferecer um desconto ao seu cliente.
Imagens PagSeguro disponíveis (botões finalizar):
Comprar com PagSeguro Pagar com PagSeguro
99x61-comprar-assina.gif 184x42-comprar-cinza-assina.gif 99x61-pagar-assina.gif 184x42-pagar-cinza-assina.gif

Quer ajuda para colocar botões do PagSeguro em sua loja? Confira nossa ferramenta para gerar botões de pagamento.

Ao enviar esse formulário, o usuário será enviado para uma tela do PagSeguro, assim (clique para ampliar):

Clique para ampliar

Ao preencher o CEP, os dados de endereço são autopreenchidos e é exibido o cadastro completo, assim (clique para ampliar):

Clique para ampliar

Trabalhar com esse método tem algumas vantagens:

Solicitando os dados do comprador em sua loja

Nesta opção você envia, junto com os dados da compra, os dados do usuário. Assim (veja o trecho indicado):

Os dados extra enviados são:

Campos Obrigatórios

NomeDescrição
cliente_nomeNome completo do cliente.
cliente_cepO CEP de 8 dígitos do cliente. Somente números (ex: 22345678)
cliente_endLogradouro do cliente (ex: Rua, Av, etc.)
cliente_numNº do imóvel do cliente (ex: 12)
cliente_complComplemento (ex: Sala 109 ou Casa 1)
cliente_bairroBairro do cliente
cliente_cidadeCidade do cliente (ex: São Paulo)
cliente_ufEstado do cliente (SP) no formato duas letras
cliente_paisPaís do cliente. Atualmente o PagSeguro só está aceitando BRA (Brasil) em breve aceitaremos outros países.
cliente_dddDDD do Telefone do cliente (ex: 11) no formato 2 números
cliente_telTelefone fixo do cliente
cliente_emailE-mail do cliente

Ao enviar esse formulário, o usuário será enviado para uma tela do PagSeguro onde ele escolhe seu meio de pagamento, assim (clique para ampliar):

Clique para ampliar

ATENÇÃO: para que isso funcione, você precisa passar todos os dados obrigatórios. Um dos erros mais comuns é deixar de enviar o DDD, ou enviar o número no campo de endereço. Isso é muito comum, por exemplo, entre os usuários de OSCommerce, porque a tela de cadastro desse sistema não possui um campo separado para número ou para DDD. Nesses casos, você pode modificar a tela de cadastro de sua loja, ou tratar os dados digitados. Se você não enviar o DDD, por exemplo, veja como vai ficar a tela para onde o usuário será enviado (clique para ampliar):

Clique para ampliar

Se você estiver trabalhando com frete por peso e não enviar o campo tipo_frete, o PagSeguro perguntará ao usuário o tipo de frete. Mas ele verá novamente a tela de cadastro. Então, se você vai pedir o cadastro do cliente em seu site, o ideal é perguntar o tipo de frete e enviar essa informação ao PagSeguro.

Encoding

Para evitar problemas com caracteres acentuados ao enviar os dados para o PagSeguro, em qualquer uma das opções acima, siga o padrão de encoding ISO-8859-1. Inclua a tag abaixo na seção <HEAD> do código HTML de integração com o PagSeguro. Se o padrão de encoding for outro, utilizar o parâmetro encoding informado em campos opcionais.

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">