Search Overlay

Traiter une commande à l’aide de Silent Post

POST /hosted/v1/orders

Lorsque vous utilisez une page de paiement hébergée par Paysafe, vous pouvez la personnaliser dans une large mesure. Cependant, il se peut que vous souhaitiez contrôler totalement l’expérience du client, ce qui signifie ne pas le rediriger vers une page hébergée. Pour ce faire, vous pouvez mettre en place une commande Silent Post (également connue sous le nom de Direct Post), qui permet à votre client d’effectuer un paiement sur votre propre page de paiement, tout en permettant à Paysafe de traiter toutes les informations sensibles relatives à la carte. Cela vous aide à réduire les frais de mise en conformité avec la norme PCI, puisque vos systèmes ne collectent ni ne stockent de données de carte.

REMARQUE : La norme PCI DSS v3.2 a introduit une nouvelle exigence d’auto-évaluation, A-EP, pour les marchands qui traitent des transactions par carte en utilisant le modèle Silent Post. Veuillez consulter la rubrique Conformité PCI DSS pour de plus amples renseignements.

Pour commencer, vous devez soumettre le même type de requête de commande que pour un paiement hébergé, sauf que vous devez inclure le paramètre extendedOptions, avec silentPost défini sur true.

Exemple de requête

curl -X POST -H "Content-Type: application/json" \
-u jTxL2wsNysJ8Jzmpdwim:NAA043a7c53c66ac3826c5e \
https://api.test.netbanx.com/hosted/v1/orders \
-d ’{
"merchantRefNum":"ABCDE12345",
"currencyCode":"GBP",
"customerNotificationEmail":"jane.smythe@emailhost.com",
"redirect":[
{
"rel":"on_success",
"uri":"https://api.test.netbanx.com/echo?payment=success"
},
{
"rel":"on_decline",
"uri":"https://api.test.netbanx.com/echo?payment=failure"
},
{
"rel":"on_error",
"uri":"https://api.test.netbanx.com/echo?payment=error"
}
],
"totalAmount":1000,
"extendedOptions":[
{
"key":"silentPost",
"value":"true"
}
]

}’

Exemple de réponse

Comme pour un paiement ordinaire, Paysafe vous fournit une URL hosted_payment dans la réponse à un appel réussi à l’API – il s’agit de l’URL de la page de paiement.

{

"currencyCode" : "GBP",
"id" : "25TWPTLHRR81AIG1LF",
"link" : [
{
"rel" : "hosted_payment",
"uri" : "https://api.test.netbanx.com/hosted/v1/payment/53616c7465645f5fc96311a769ed171ce70fac1483fa7f6d9ecfb6d427c1e12c6fc573a35f13e0ea"
},
{
"rel" : "self",
"uri" : "https://APIKEYEXAMPLEAPIKEYEXAMPLE:APIKEYEXAMPLEAPIKEYEXAMPLE@api.test.paysafe.com/hosted/v1/orders/25TWPTLHRR81AIG1LF"
}
],
"merchantRefNum" : "ABCDE12345",
"mode" : "live",
"totalAmount" : 1000,
"type" : "order"

}

Voir notre rubrique Référence de l’API pour une liste de tous les attributs et types JSON disponibles pour l’objet de commande. Les paramètres de requête et de réponse sont énumérés.

Créez un POST dans l’URL hosted_payment que vous venez de recevoir, en incluant les paramètres de carte de crédit supplémentaires suivants que vous avez collectés sur votre site de commerce électronique :

  • cardNum
  • cardExpiryMonth
  • cardExpiryYear
  • cvdNumber

REMARQUE : D’autres types de paiement peuvent nécessiter l’envoi de paramètres différents.

L’action SUBMIT de votre formulaire de paiement doit être faite à l’URL hosted_payment. Voici un exemple simple du code HTML d’une page de paiement utilisant Silent Post :

Exemple HTML

<form action="https://api.test.netbanx.com/hosted/v1/payment/53616c7465645f5fc96311a769ed171ce70fac1483fa7f6d9ecfb6d427c1e12c6fc573a35f13e0ea"
method="POST" >
<h3>Veuillez saisir les détails de votre carte de crédit ci-dessous</h3>
<table>
<tr>
<td>Numéro de la carte :</td>
<td><input type="text" name="cardNum" /></td>
</tr>
<tr>
<td>Mois d’expiration de la carte :</td>
<td><input type="text" name="cardExpiryMonth" /></td>
</tr>
<tr>
<td>ANNÉE D’EXPIRATION de la carte :</td>
<td><input type="text" name="cardExpiryYear" /></td>
</tr>
<tr>
<td>CVC :</td>
<td><input type="text" name="cvdNumber" /></td>
</tr>
<tr>
<td>Carte de magasin?</td>
<td>
<select name="storeCardIndicator">
<option value="true">Oui</option>
<option value="false">No</option>
</select>
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="Submit" value="Payer maintenant" />
</td>
<tr>
</table>
</form>

Le flux de paiement est le suivant :

Caractéristiques de la commande en option

Vous pouvez éventuellement ajouter les caractéristiques suivantes à une commande en utilisant les paramètres de l’objet Commande :

  • Notifications par courriel au client
  • Notifications par courriel au marchand
  • Emplacement

Notifications par courriel au client

Les notifications par courriel au client sont entièrement localisées et personnalisées; veuillez contacter les services au marchand pour de plus amples renseignements.

Pour envoyer un courrier électronique de notification au client, transmettez le paramètre customerNotificationEmail lors de l’étape de création de la commande comme suit :

{
"customerNotificationEmail" : "jane.smythe@emailhost.com"
}

Pour éviter l’envoi d’une notification par courriel au client, envoyez le champ suppressCustomerEmail (extendedOption) avec la valeur définie sur true.

Notifications par courriel au marchand

Pour envoyer un courrier électronique de notification au marchand, transmettez le paramètre merchantNotificationEmail lors de l’étape de création de la commande comme suit :

{
"merchantNotificationEmail" : "merchant@emailhost.com"
}

Emplacement

L’API Paiements hébergés prend en charge la localisation des pages et des courriels contenant des informations sur les paiements et les reçus. Le système tente d’établir la meilleure correspondance possible avec les informations contenues dans le paramètre locale.

REMARQUE : Si le paramètre locale n’est pas transmis, ou si un code ISO 639-1 non pris en charge est envoyé à l’API, la valeur par défaut dans la configuration de l’intégration du marchand est utilisée.

Pour ajouter des informations sur la l’emplacement à la commande, transmettez le paramètre locale comme suit :

{
"locale" : "en_GB"
}

Les valeurs du paramètre locale suivantes sont prises en charge.

  • en_US
  • en_GB
  • fr_FR
  • fr_CA