neo-pays

Encaissements

Encaisser, lire, suivre. La ressource centrale est l'opération ; le parcours nominal est le checkout hébergé.

Créer un encaissement

POST /v1/payments
Champ Requis Description
asset_id oui L'actif, par son identifiant (GET /v1/assets)
amount_minor oui Chaîne, en unités mineures ("500000" sur un actif à zéro décimale vaut 500 000)
country oui Pays de l'opération (ISO 3166-1 alpha-2)
platform_id oui La plateforme d'encaissement (GET /v1/corridors)
platform_account_handle Le sous-compte à créditer. Vide = le compte primaire du corridor
rail Force un rail précis au lieu de laisser le routage choisir
payer { "name", "phone", "email", "country" }
client_ref Votre référence, rendue sur les lectures et les webhooks
description Texte libre
expires_in_seconds Durée de validité de l'intention de paiement

La réponse est une opération en statut initiated, avec de quoi faire payer le client :

{
  "id": "op_01J8Z9K2QW",
  "ref": "NP-...",
  "client_ref": "commande-1042",
  "kind": "payin",
  "status": "initiated",
  "asset_id": 1,
  "amount_minor": "500000",
  "fee_minor": "...",
  "net_minor": "...",
  "payment_url": "https://pay.neo-pays.com/...",
  "is_test": true
}

rail force, il ne suggère pas. Omettez-le et le routage choisit le meilleur rail ouvert ; nommez-le et un rail indisponible fait échouer la création au lieu de basculer sur un autre.

Lire et lister

GET /v1/payments/{id}   — une opération
GET /v1/payments        — liste paginée (page, per_page)

{id} accepte l'identifiant interne, la référence de l'opération, ou votre propre client_ref.

La lecture est locale : rien n'est demandé au rail. Les coordonnées du payeur y sont masquées, parce que le modèle de lecture ne détient jamais les brutes — la réponse de création, elle, vous renvoie ce que vous venez d'envoyer.

Les listes sont servies par un réplica de lecture : aucun rapport ne peut ralentir un paiement.

Les autres familles

Le même objet, sous son propre nom : /v1/payouts, /v1/refunds, /v1/transfers, /v1/rebalances. GET /v1/payouts/{id} et ses semblables rendent la même vue masquée, avec le même contrôle de propriété.