Skip to main content

Credit card onboarding

Before you start

Your API requests are authenticated using an access token. Any request that does not include a valid access token will return an error. Learn more in Authentication.

Base URL
  • UAT: https://transactions.transactional.uat.unico.app/api/public/v1
  • Production: https://transactions.transactional.unico.app/api/public/v1
Important

Credit Card Onboarding can be performed either by requesting a selfie from the end user and completing the full registration, or by reusing biometric captures from processes executed by other Unico IDCloud platform products:

  • To reuse processes generated by other IDCloud products, provide the reference process ID in additionalInfo.processID;
  • The reference process used must have been completed no more than 1 hour prior.

Validate credit card

POST /walletid/transaction — validates a credit card.

Headers
HeaderValue
AuthorizationBearer {token} — a valid access token.
Body
{
"identity": { "key": "cpf", "value": "12345678900" },
"orderNumber": "onboarding-98765",
"company": "company-id",
"redirectUrl": "https://yourapp.com/wallet/return",
"card": {
"binDigits": "12345678",
"lastDigits": "1234",
"expirationDate": "12/2028",
"name": "John Doe"
},
"value": 5000.00
}
FieldTypeRequiredDescription
identityobjectyesUser identity information.
identity.keystringyesType of user identifier key.
identity.valuestringyesValue of the user identifier key.
orderNumberstringyesNumber associated with the onboarding. Used as an index in the portal and as a foreign key between your system and Card Not Present Verification.
companystringyesID of the company responsible for the transaction, provided by Unico.
redirectUrlstringnoURL to redirect the user after completing the transaction (an HTTPS URL for web, or a Schema URL for native mobile apps).
cardobjectyesCard information used in the transaction.
card.binDigitsstringyesFirst 8 digits of the card.
card.lastDigitsstringyesLast 4 digits of the card.
card.expirationDatestringnoCard expiration date.
card.namestringyesCardholder's name — ensure it's correct to avoid encoding issues or approval problems.
valuenumbernoMaximum secured value.
additionalInfoobjectnoSend this object with processID to reuse biometric captures from other Unico IDCloud platform products.
additionalInfo.processIDstringyes (if additionalInfo is sent)Reference process ID from the IDCloud platform.
danger

The orderNumber field must be filled with the unique order number of that purchase in the e-commerce system — using a distinct transactional ID is incorrect, and reusing values can trigger replicated transaction errors.

200 OK
{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "processing",
"link": "https://developers/regional-solutions/card-not-present-verification.unico.app/t/6ab1771e-dfab-4e47-8316-2452268e5481",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
FieldDescription
idID of the created transaction.
statusCurrent transaction status.
linkLink related to the transaction. Only returned if additionalInfo.processID is not provided.
tokenSigned token to initialize the Card Not Present Verification web SDK. Only returned if additionalInfo.processID is not provided.

Check validation status

GET /walletid/transactions/{transaction_id} — checks the current status of a specific transaction.

Headers
HeaderValue
AuthorizationBearer {token} — a valid access token.
200 OK
{
"status": "processing",
"hasIdentityChanged": false
}
FieldDescription
statusCurrent status of the transaction.
hasIdentityChangedOptional. Whether an identity swap occurred in the transaction.

See Enumerated for all possible statuses. To optimize performance, implement the Webhook instead of polling this endpoint.

For error responses, see Errors — Credit card onboarding.