Aller au contenu principal

Transactions de paiement

Avant de commencer

Vos requêtes API sont authentifiées à l'aide d'un jeton d'accès. Toute requête qui n'inclut pas un jeton d'accès valide renverra une erreur. Pour en savoir plus, consultez Authentification.

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

Créer une transaction

POST /credit/transaction — crée une nouvelle transaction.

danger

Pour garantir une meilleure conversion, créez la transaction seulement après avoir terminé toute pré-authentification ou validation susceptible de finaliser l'opération avant l'expérience Vérification sans carte présente.

danger

Le champ orderNumber doit être rempli avec le numéro de commande unique de cet achat dans le système e-commerce — utiliser un ID transactionnel distinct est incorrect. Le réutiliser peut entraîner une faible conversion (le numéro de commande aide l'utilisateur final à terminer le flux) et des erreurs API telles que replicated transaction si le même numéro de commande, CPF, BIN et les 4 derniers chiffres sont utilisés.

En-têtes
En-têteValeur
AuthorizationBearer {token} — un jeton d'accès valide.
Corps
{
"identity": { "key": "cpf", "value": "12345678900" },
"orderNumber": "order-98765",
"company": "company-id",
"redirectUrl": "https://yourapp.com/checkout/return",
"card": {
"binDigits": "12345678",
"lastDigits": "1234",
"expirationDate": "12/2028",
"name": "John Doe"
},
"value": 199.90,
"mainContacts": [
{ "key": "phone", "value": "5543999999999" }
]
}
ChampTypeRequisDescription
identityobjectouiDonnées d'identification de l'utilisateur.
identity.keystringouiType de clé d'identification de l'utilisateur. cpf est recommandé — taux de conversion plus élevé.
identity.valuestringouiValeur de la clé d'identification de l'utilisateur, sans points ni tirets.
orderNumberstringouiNuméro de commande associé à la transaction. Utilisé comme index dans le portail et comme clé étrangère entre votre système et Vérification sans carte présente.
companystringouiID de l'entreprise responsable de la transaction, fourni par Unico.
redirectUrlstringnonURL vers laquelle rediriger l'utilisateur après la fin de la transaction (une URL HTTPS pour le web, ou un schéma d'URL pour les applications mobiles natives).
cardobjectouiInformations sur la carte utilisée dans la transaction.
card.binDigitsstringouiLes 8 premiers chiffres de la carte.
card.lastDigitsstringouiLes 4 derniers chiffres de la carte.
card.expirationDatestringnonDate d'expiration de la carte.
card.namestringouiNom du titulaire de la carte. Envoyez-le correctement, en évitant les problèmes d'encodage — cette donnée est utilisée dans l'expérience utilisateur et la communication.
valuenumberouiValeur totale de l'achat.
mainContactsarraynonListe des contacts principaux (e-mails et/ou téléphones) utilisés pour notifier l'utilisateur, lorsque Vérification sans carte présente est responsable de la notification.
fallbackContactsarraynonListe des contacts de secours, déclenchés si les tentatives de notification des contacts principaux échouent.
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...",
"expiresAt": "2026-07-22T15:30:00Z"
}
ChampDescription
idID de la transaction créée.
statusStatut actuel de la transaction.
linkLien lié à la transaction.
tokenJeton signé contenant les paramètres nécessaires pour initialiser le SDK web Vérification sans carte présente.
expiresAtDate et heure d'expiration de la transaction, ISO 8601 (UTC).
avertissement

Si les validations déterminent que la capture biométrique n'est pas nécessaire, la réponse présente un statut différent et aucun lien de capture n'est généré :

{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "fast-inconclusive"
}

Cela se produit lors de l'utilisation des modules Pre ou Super Pre pour le Checkout, conformément à la Fonctionnalité.

Pour les réponses d'erreur, consultez Erreurs — Création de transaction.

Obtenir le statut de la transaction

GET /credit/transactions/{transaction_id} — vérifie le statut actuel d'une transaction spécifique.

En-têtes
En-têteValeur
AuthorizationBearer {token} — un jeton d'accès valide.
200 OK
{
"status": "processing"
}
ChampDescription
statusStatut actuel de la transaction.

Consultez Énumérations pour tous les statuts possibles. Pour optimiser les performances, implémentez le Webhook plutôt que d'interroger ce point de terminaison en continu.

Pour les réponses d'erreur, consultez Erreurs — Obtenir le statut de la transaction.

Obtenir le dossier probatoire de la transaction

GET /credit/transactions/{transaction_id}/probative — récupère le dossier probatoire d'une transaction spécifique.

avertissement

Le dossier probatoire ne peut être généré que pour les transactions approuvées.

danger

Le lien renvoyé pour le dossier probatoire est valide pendant cinq minutes après son obtention — ne le sauvegardez pas, utilisez-le pour télécharger le dossier probatoire immédiatement.

En-têtes
En-têteValeur
AuthorizationBearer {token} — un jeton d'accès valide.
200 OK
{
"link": "https://unico.io/probative.pdf"
}
ChampDescription
linkURL du fichier probatoire.

Pour les réponses d'erreur, consultez Erreurs — Récupération du dossier probatoire de la transaction.

Renvoyer la notification de transaction

POST /credit/transactions/{transaction_id}/notify — renvoie les notifications par e-mail et/ou téléphone pour une transaction spécifique.

remarque

Il est également possible de configurer le renvoi de notification via le portail, sans l'implémenter via l'API. Parlez à votre point de contact projet pour comprendre les possibilités.

En-têtes
En-têteValeur
AuthorizationBearer {token} — un jeton d'accès valide.
Corps
{
"phone": "NOTIFICATION_PHONE",
"email": "NOTIFICATION_EMAIL"
}
ChampTypeRequisDescription
phonestringouiNuméro de téléphone auquel envoyer la notification.
emailstringouiAdresse e-mail à laquelle envoyer la notification.
200 OK
{
"id": "b50ee24c-71eb-4a5d-ade1-41c48b44c240",
"link": "https://aces.so/example"
}
ChampDescription
idID unique de la notification générée.
linkLien généré pour la notification.

Pour les réponses d'erreur, consultez Erreurs — Renvoi de la notification de transaction.