<button type="button" onclick="showPAN()">Show Card Number</button>
<button type="button" onclick="showCVV()">Show CVV</button>
<p><strong>Card Number:</strong></p>
<div id="cardNumber"></div>
<p><strong>CVV2:</strong></p>
<div id="cvv2"></div>
<script src="https://js.securepro.xyz/sudo-show/1.1/ACiWvWF9tYAez4M498DHs.min.js"></script>
<script>
const vaultId = "YOUR_VAULT_ID";
const cardToken = "SECURE_TOKEN_FROM_API"; // secure.token
const cardId = "CARD_ID"; // provider_card_id (card._id)
// Use separate instances (recommended by Sudo docs)
const numberSecret = SecureProxy.create(vaultId);
const cvv2Secret = SecureProxy.create(vaultId);
function showPAN() {
const req = numberSecret.request({
name: 'pan',
method: 'GET',
path: `/cards/${cardId}/secure-data/number`,
headers: { Authorization: `Bearer ${cardToken}` },
htmlWrapper: 'text',
jsonPathSelector: 'data.number',
serializers: [
numberSecret.SERIALIZERS.replace('(\\d{4})(\\d{4})(\\d{4})(\\d{4})', '$1 $2 $3 $4')
]
});
req.render('#cardNumber');
}
function showCVV() {
const req = cvv2Secret.request({
name: 'cvv2',
method: 'GET',
path: `/cards/${cardId}/secure-data/cvv2`,
headers: { Authorization: `Bearer ${cardToken}` },
htmlWrapper: 'text',
jsonPathSelector: 'data.cvv2'
});
req.render('#cvv2');
}
</script>