Créer une demande de paiement

L'API Payments permet d’intégrer facilement une solution de paiement sécurisée par virement simplifié (instantané ou classique) directement dans vos applications métiers.

 

Informations utiles : 

Notre API est accessible depuis les URLs suivantes :

  • api_url : https://pay.oxlin.io/v1/
  • auth_url : https://pay.oxlin.io/token

Retrouvez la documentation de référence API via ce lien.

 

La création d’un ordre de virement

La création d'un ordre de virement se fait avec la requête POST /orders.

La réponse en retour, vous permet de récupérer l'identifiant "id" (unique) de votre ordre de virement afin de suivre son statut tout au long du paiement ainsi que le lien de paiement "auth_url" à transmettre au payeur afin de réaliser le paiement. 

Base Url : POST https://pay.oxlin.io/v1/orders


Exemple requête : 

curl --request POST  --location 'https://pay.oxlin.io/v1/orders' \

--header 'Content-Type: application/json' \

--header 'Authorization: Bearer xxxxx \

--data-raw '{

  "user_reference": "my user ref",

  "instant_payment": "USER_CHOICE/EXPECTED/NO(default)",

  "redirect_url": "https://www.example.com/",

  "amount": "10",

  "currency": "EUR",

  "email": "user@example.com",

  "beneficiary":

   {

    "schema": "SEPA",

    "iban": "FR8530003000307599775722N09",

    "name": "account holder"

  },

  "label": "transaction label"

}'


Exemple réponse : 

{

   "id": "d5ffac9c-xxxx-xxxx-xxxx-eddf23d81db3",

   "instant_payment": "USER_CHOICE",

   "email": "user@example.com",

   "order_status": "NEW",

   "type": "PAYMENT",

   "creation_date": "2024-07-22T14:12:20.083939817Z",

   "auth_url":  "https://pay.oxlin.io/v1/authorize/d5ffac9c-57a4-468e-901a-eddf23d81db3?client_id=xxxxx",

   "redirect_url": "https://www.example.com/",

   "instructions": [

       {

           "id": "ea46af04-50a4-4762-9e07-ce4d7ba1b6c4",

           "amount": "10",

           "currency": "EUR",

           "beneficiary": {

               "schema": "SEPA",

               "iban": "FR8530003000307599775722N09",

               "name": "firstname lastname",

               "bic": "BICXBANKXX",

               "country": "FR"

           },

           "label": "transaction label",

           "end_to_end_id": "5b46d936e5704a4fbd4c11826083f8c5"

       }

   ],

   "payer_time_zone": "Europe/Paris",

   "refundable_amount": 0

}

Retrouvez la documentation de référence API sur le POST /orders via ce lien.

 

La création d’un ordre de virement en Sandbox

L’environnement de Sandbox est un environnement qui permet de simuler des virements sans effectuer de requêtes réelles vers les banques. 

Pour cette raison, en mode Sandbox il est seulement possible d’utiliser des IBANs bénéficiaires préenregistrés dans vos requêtes POST /orders.

Trois IBANs bénéficiaires sont disponibles : 

  • FR8530003000307599775722N09 (Société Générale)
  • FR7611306000001212121212134 (Crédit Agricole)
  • FR7630002268693434343434390 (LCL)

Exemple : 

"beneficiary":
{

"schema": "SEPA",

"iban": "FR8530003000307599775722N09",

"name": "Nom de votre choix"

},

 

Il est également possible de simuler un ordre de virement avec un payeur connu. Pour cela, une liste d'IBANs payeurs pré-enregistrés est disponible dans la documentation de référence, section : How-to-test-using-Sandbox-Mode.

Exemple de simulation d’un ordre de virement pour le statut REJECTED (iban:FR2130003000302667332151D75) :

"beneficiary":
{

"schema": "SEPA",

"iban": "FR8530003000307599775722N09",

"name": "Nom de votre choix"

},

"payer" :

{

"schema": "SEPA",

"iban": "FR2130003000302667332151D75"

},

 

La redirect_url

La "redirect_url" est l'URL vers laquelle l'utilisateur sera redirigé après avoir autorisé le paiement.

Les paramètres "client_id" et "order_id" sont ajoutés à l'URL lors de la redirection de l'utilisateur afin de rendre l'URL unique.

 

Exemple de redirection :

https://www.example.com/?client_id=xxxxx&order_id=d5ffac9c-xxxx-xxxx-xxxx-eddf23d81db3

 

 

 

Ces informations ont-elles répondu à votre question ?

Si vous rencontrez des difficultés, n'hésitez pas à contacter notre équipe Support via ce lien

 

Was this article helpful?