Documentation/Ajouter un client
openapi.jsonOuvrir mon espace

Ajouter un client

POST/v1/customers

À qui vous vendez : un nom, et un numéro, une adresse, ou les deux.

Le numéro se garde chiffré, et ne revient que masqué. Deux clients de l’espace n’ont pas le même numéro ni la même adresse : sinon, « conflict ».

Les en-têtes

Idempotency-KeytexteConseillée : rejouée, la même clé rend la première réponse au lieu de refaire le geste.

Ce qu’on envoie

Un corps JSON. Ce qui n’est pas requis peut être omis.

nameREQUIStexteLe nom du client.
emailtexteSon adresse : ses factures y partent.
phonetexteSon numéro, au format international (+2290197000000). Il se garde chiffré.
countrytexteLe pays du numéro, quand il est écrit sans indicatif.
notetexteCe que vous en notez ; jamais montré au client.

La demande

bash
curl https://api.payiz.app/v1/customers \
  -H "Authorization: Bearer sk_test_…" \
  -H "Idempotency-Key: clients-creer-01" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Awa Houénou",
    "email": "awa.h@exemple.bj",
    "phone": "+2290197002107"
  }'

La réponse

json
{
  "object": "customer",
  "id": "cli_01j9xn4rt6m8wqv2hc5d",
  "name": "Awa Houénou",
  "email": "awa.h@exemple.bj",
  "phone": "+229 01 •• •• 21 07",
  "country": "BEN",
  "note": "Cliente depuis juin.",
  "archived_at": null,
  "created": 1789826492,
  "livemode": false
}

Ce qu’on reçoit

201 · un objet customer

object« customer »Le genre de l’objet rendu : il ne change jamais.
idtexteUn identifiant préfixé « cli_ », par exemple cli_01j9xn4rt6m8wqv2hc5d.
nametexteLe nom du client.
emailtexte ou nullSon adresse, en minuscules : ses factures y partent.
phonetexte ou nullSon numéro, masqué. En clair, il se demande à part (POST /v1/customers/{id}/phone), et le geste va au journal.
countrytexte ou nullLe pays de son numéro, en ISO 3166-1 alpha-3.
notetexte ou nullCe que vous en notez ; jamais montré au client.
archived_atentier ou nullQuand il a été archivé ; null tant qu’il ne l’est pas.
createdentier ou nullDes secondes depuis 1970, ou null.
livemodevrai ou fauxFaux en mode test : aucun argent ne circule.
© 2026 PayizUne question ? L’aide est dans le rond, en bas à droite.

Ajouter un client

POST/v1/customers

À qui vous vendez : un nom, et un numéro, une adresse, ou les deux.

Le numéro se garde chiffré, et ne revient que masqué. Deux clients de l’espace n’ont pas le même numéro ni la même adresse : sinon, « conflict ».

Les en-têtes

Idempotency-KeytexteConseillée : rejouée, la même clé rend la première réponse au lieu de refaire le geste.

Ce qu’on envoie

Un corps JSON. Ce qui n’est pas requis peut être omis.

nameREQUIStexteLe nom du client.
emailtexteSon adresse : ses factures y partent.
phonetexteSon numéro, au format international (+2290197000000). Il se garde chiffré.
countrytexteLe pays du numéro, quand il est écrit sans indicatif.
notetexteCe que vous en notez ; jamais montré au client.

La demande

bash
curl https://api.payiz.app/v1/customers \
  -H "Authorization: Bearer sk_test_…" \
  -H "Idempotency-Key: clients-creer-01" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Awa Houénou",
    "email": "awa.h@exemple.bj",
    "phone": "+2290197002107"
  }'

La réponse

json
{
  "object": "customer",
  "id": "cli_01j9xn4rt6m8wqv2hc5d",
  "name": "Awa Houénou",
  "email": "awa.h@exemple.bj",
  "phone": "+229 01 •• •• 21 07",
  "country": "BEN",
  "note": "Cliente depuis juin.",
  "archived_at": null,
  "created": 1789826492,
  "livemode": false
}

Ce qu’on reçoit

201 · un objet customer

object« customer »Le genre de l’objet rendu : il ne change jamais.
idtexteUn identifiant préfixé « cli_ », par exemple cli_01j9xn4rt6m8wqv2hc5d.
nametexteLe nom du client.
emailtexte ou nullSon adresse, en minuscules : ses factures y partent.
phonetexte ou nullSon numéro, masqué. En clair, il se demande à part (POST /v1/customers/{id}/phone), et le geste va au journal.
countrytexte ou nullLe pays de son numéro, en ISO 3166-1 alpha-3.
notetexte ou nullCe que vous en notez ; jamais montré au client.
archived_atentier ou nullQuand il a été archivé ; null tant qu’il ne l’est pas.
createdentier ou nullDes secondes depuis 1970, ou null.
livemodevrai ou fauxFaux en mode test : aucun argent ne circule.