Tokenização do método de pagamento
A tokenização é o processo que permite armazenar os dados de pagamento confidenciais dos clientes de forma segura por meio da criação de um token.
informação
O armazenamento do método de pagamento apenas esta disponível para os pagamentos com Cartão de Crédito/Débito e MBWay e no layout basic e default.
Para criar um token devem ser seguidos os seguintes passos:
- Obter o UUID do cliente;
 - Compra através de checkout usando o id do cliente registado.
 
1. Obter o UUID do cliente
O primeiro passo é obter o UUID do cliente que pretende registar o seu método de pagamento. Isso pode ser feito através de:
2. Concluir pagamento através de checkout
Para o método de pagamento ser disponibilizado é necessário concluir um pagamento com sucesso.
- Pedido
 - Resposta
 
POST /checkouts
{
	"payment": {
		"amount": 100,
		"recurring": {
			"amountQualifier": "ESTM" // <== Montante váriável
		},
		"customer": {
			"uuid": "e2343605-cf46-43de-b20b-9b7d1c95a9b2" // <== ID do customer registado
		},
		"paymentMethod": {
			"code": "CC",
			"details": {
				"createRegistration": true // <== Indicar que é para criar token
			}
		}
	},
	"page": {
		"language": "PT"
	}
}
{
	"apiVersion": "1.0",
	"date": "2021-10-20T11:34:48+01:00",
	"success": true,
	"data": {
		"id": "Qldt1DlonfiF4HthdiCfB1DRmgM31LzmVrFjU6jk",
		"createdAt": "2021-10-20 11:34:48",
		"checkoutUrl": "http://paypay.acin.pt/paypaybeta/checkout/v2/form/Qldt1DlonfiF4HthdiCfB1DRmgM31LzmVrFjU6jk",
		"paymentId": "42380",
		"stateDetails": {
			"state": "PaymentReady",
			"timestamp": "2021-10-20T11:34:48+01:00"
		}
	}
}
3. Consultar métodos de pagamento do cliente
Após o pagamento com sucesso o método de pagamento é adicionado aos métodos de pagamento do cliente.
GET /customers/{uuid}/paymentMethods
{
	"apiVersion": "1.0",
	"date": "2021-09-24T17:57:42+01:00",
	"success": true,
	"data": [
		{
			"type": "CC",
			"uuid": "90068f83-7623-4de5-91c7-ac447c504ebf",
			"brand": "VISA",
			"last4Digitis": "0809",
			"holder": "Luís Gonçalves",
			"expireMonth": "05",
			"expireYear": "2026"
		},
		{
			"type": "MW",
			"uuid": "45668f83-7623-4de5-91c7-ac447c504ebf",
			"countryCode": "351",
			"last3Digitis": "263"
		}
	]
}
Tokenização com consentimento do cliente
- Pedido
 - Resposta
 
{
	"payment": {
		"amount": 500,
		"code": "REFPRODUTO_1",
		"summary": "Computador",
		"customer": {
			"uuid": "e2343605-cf46-43de-b20b-9b7d1c95a9b2" // <== Indicar o uuid do cliente
		},
		"billingAddress": {
			"country": "PT",
			"city": "Lisboa",
			"street1": "Rua Domingos Monteiro nº 7 A",
			"postCode": "1050-074"
		},
		"paymentMethod": {
			"code": "CC",
			"details": {
				"allowRegistration": true // <== Indicar a possibilidade de armazenar o método de pagamento
			}
		}
	},
	"page": {
		"language": "PT",
		"layout": "basic" // <== Indicar o layout que permite armazenar o método de pagamento
	}
}
{
	"apiVersion": "1.0",
	"date": "2022-01-03T14:16:17+00:00",
	"success": true,
	"data": {
		"id": "pyKP1B9IaK9J47wTSNB4mUnv2h4DJW8HzomddMp1",
		"createdAt": "2022-01-03 14:16:17",
		"checkoutUrl": "https://paypay.pt/paypay/referencia/referencia_c/pay/4d0757e6d4db52fae248e1a2e9f10a1e8cdb0a25/paypay/pyKP1B9IaK9J47wTSNB4mUnv2h4DJW8HzomddMp1",
		"paymentId": "42690",
		"stateDetails": {
			"state": "PaymentReady",
			"timestamp": "2022-01-03T14:16:17+00:00"
		}
	}
}
id
que identifica o checkout perante a API.
O
checkoutUrl
é o link para aceder a página e realizar o pagamento.
O
paymentId
é o id que identifica o pagamento.
Ao aceder ao
checkoutUrl
é apresentada a seguinte página:
