Informando os dados essenciais para efetivação de uma cobrança, este recurso permite a criação de uma cobrança de pagamento com um token PagSeguro.
A Tokenização PagSeguro é o processo de armazenamento dos dados sensíveis do cartão do portador. Para o gerenciamento de compras futuras, o PagSeguro gera e retorna um token que substitui os dados do cartão.
Gerando um token PagSeguro
Na request da primeira cobrança deve ser enviado o parâmtero store com o valor "true" (como no exemplo a seguir) para indicar que além da cobrança, deverá ser realizada a tokenização do cartão da compra.
store: true;
- store - Indica a intenção de armazenamento do cartão
Os demais parâmtros relacionados ao cartão devem ser enviados normalmente:
- holder - Nome completo do portador do cartão
- number - Número do cartão de crédito
- exp_month - Mês de expiração
- exp_year - Ano de expiração
- security_code - Código de segurança
A response da chamada, retornará através do parâmetro "id" o token do cartão enviado, independente se a transação foi aceita ou rejeitada.
- id - Token do cartão
curl --location --request POST 'https://sandbox.api.pagseguro.com/charges' \
--header 'Authorization: {{token}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"reference_id": "ex-00001",
"description": "Motivo do pagamento",
"amount": {
"value": 1000,
"currency": "BRL"
},
"payment_method": {
"type": "CREDIT_CARD",
"installments": 1,
"capture": false,
"soft_descriptor": "My Store",
"card": {
"number": "4111111111111111",
"exp_month": "03",
"exp_year": "2026",
"security_code": "123",
"store": true,
"holder": {
"name": "Jose da Silva"
}
}
},
"notification_urls": [
"https://yourserver.com/nas_ecommerce/277be731-3b7c-4dac-8c4e-4c3f4a1fdc46/"
]
}'
{
"id": "CHAR_81C04758-5465-4FC3-9D0C-6FB45BC300B0",
"reference_id": "ex-00001",
"status": "AUTHORIZED",
"created_at": "2022-05-09T16:31:47.312-03:00",
"description": "Motivo do pagamento",
"amount": {
"value": 1000,
"currency": "BRL",
"summary": {
"total": 1000,
"paid": 0,
"refunded": 0
}
},
"payment_response": {
"code": "20000",
"message": "SUCESSO",
"reference": "032416400102"
},
"payment_method": {
"type": "CREDIT_CARD",
"installments": 1,
"capture": false,
"capture_before": "2022-05-14T16:31:49.565-03:00",
"card": {
"id": "CARD_5793F246-F8C6-4EFC-8840-F03A6FBD8EA0",
"brand": "visa",
"first_digits": "411111",
"last_digits": "1111",
"exp_month": "3",
"exp_year": "2026",
"holder": {
"name": "Jose da Silva"
},
"store": true
},
"soft_descriptor": "MyStore"
},
"notification_urls": [
"https://yourserver.com/nas_ecommerce/277be731-3b7c-4dac-8c4e-4c3f4a1fdc46/"
],
"links": [
{
"rel": "SELF",
"href": "https://sandbox.api.pagseguro.com/charges/CHAR_81C04758-5465-4FC3-9D0C-6FB45BC300B0",
"media": "application/json",
"type": "GET"
},
{
"rel": "CHARGE.CANCEL",
"href": "https://sandbox.api.pagseguro.com/charges/CHAR_81C04758-5465-4FC3-9D0C-6FB45BC300B0/cancel",
"media": "application/json",
"type": "POST"
},
{
"rel": "CHARGE.CAPTURE",
"href": "https://sandbox.api.pagseguro.com/charges/CHAR_81C04758-5465-4FC3-9D0C-6FB45BC300B0/capture",
"media": "application/json",
"type": "POST"
}
]
}
Cobrando com um token PagSeguro
Com o token já criado, basta o integrador enviar o parâmetro "id" no lugar dos dados do cartão.
curl --location --request POST 'https://sandbox.api.pagseguro.com/charges' \
--header 'Authorization: {{token}}' \
--header 'Content-Type: application/json' \
--header 'x-idempotency-key;' \
--data-raw '{
"reference_id": "ex-00001",
"description": "Motivo do pagamento",
"amount": {
"value": 1000,
"currency": "BRL"
},
"payment_method": {
"type": "CREDIT_CARD",
"installments": 1,
"capture": false,
"soft_descriptor": "My Store",
"card": {
"id": "CARD_5793F246-F8C6-4EFC-8840-F03A6FBD8EA0"
}
},
"notification_urls": [
"https://yourserver.com/nas_ecommerce/277be731-3b7c-4dac-8c4e-4c3f4a1fdc46/"
]
}'
{
"id": "CHAR_F9D8299D-0AD8-48BB-8EAC-E30D2E03F8A7",
"reference_id": "ex-00001",
"status": "AUTHORIZED",
"created_at": "2022-05-09T16:33:51.116-03:00",
"description": "Motivo do pagamento",
"amount": {
"value": 1000,
"currency": "BRL",
"summary": {
"total": 1000,
"paid": 0,
"refunded": 0
}
},
"payment_response": {
"code": "20000",
"message": "SUCESSO",
"reference": "032416400102"
},
"payment_method": {
"type": "CREDIT_CARD",
"installments": 1,
"capture": false,
"capture_before": "2022-05-14T16:33:52.517-03:00",
"card": {
"id": "CARD_5793F246-F8C6-4EFC-8840-F03A6FBD8EA0",
"brand": "visa",
"first_digits": "411111",
"last_digits": "1111",
"exp_month": "3",
"exp_year": "2026",
"holder": {
"name": "Jose da Silva"
}
},
"soft_descriptor": "MyStore"
},
"notification_urls": [
"https://yourserver.com/nas_ecommerce/277be731-3b7c-4dac-8c4e-4c3f4a1fdc46/"
],
"links": [
{
"rel": "SELF",
"href": "https://sandbox.api.pagseguro.com/charges/CHAR_F9D8299D-0AD8-48BB-8EAC-E30D2E03F8A7",
"media": "application/json",
"type": "GET"
},
{
"rel": "CHARGE.CANCEL",
"href": "https://sandbox.api.pagseguro.com/charges/CHAR_F9D8299D-0AD8-48BB-8EAC-E30D2E03F8A7/cancel",
"media": "application/json",
"type": "POST"
},
{
"rel": "CHARGE.CAPTURE",
"href": "https://sandbox.api.pagseguro.com/charges/CHAR_F9D8299D-0AD8-48BB-8EAC-E30D2E03F8A7/capture",
"media": "application/json",
"type": "POST"
}
]
}
IMPORTANTE
A Tokenização PagSeguro é diferente da Cobrança com token de bandeira.
Com a Tokenização PagSeguro o cartão de crédito fica armazenado para compras futuras e na resposta da requisição você terá o token do cartão em
payment_method.card.id
.Com a Cobrança com token de bandeira os dados utilizados para a criação de uma transação são os do próprio Token de Bandeira, fornecido pelas bandeiras e que possui características similiares a um cartão de crédito ou débito.