> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blockradar.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Flux fiat pour les clients

> Utilisez un client existant pour les retraits fiat, les ordres de paiement et les comptes virtuels. Le client doit être actif et appartenir à l’entreprise authentifiée. Sans customerId, le flux appartient à l’entreprise ; l’intégration du client ne débloque pas une intégration d’entreprise manquante.

Utilisez un client existant pour les retraits fiat, les ordres de paiement et les comptes virtuels. Le client doit être actif et appartenir à l’entreprise authentifiée. Sans customerId, le flux appartient à l’entreprise ; l’intégration du client ne débloque pas une intégration d’entreprise manquante.

## Identité et sessions

Commencez les retraits avec customerId dans rates et les dépôts avec customerId dans la cotation. Transmettez sessionId ensuite ; le serveur hérite du client. Un customerId répété doit correspondre. Changer le client, la route, le réseau ou les paramètres exige une nouvelle session. La découverte des actifs, devises et moyens de dépôt n’accepte pas customerId.

## Retirer en fiat

Rates, méthodes de paiement, exigences, résolution, cotation et exécution acceptent customerId facultatif. Les cotations et exécutions des adresses enfants aussi. Les retraits v1 hérités l’acceptent lorsque leur DTO inclut le contexte client. Noah et Infinia prennent actuellement en charge cette identité ; l’API ne la remplace pas par celle de l’entreprise.

```http theme={null}
GET /v2/wallets/{walletId}/withdraw/fiat/rates?assetId={assetId}&currency=USD&amount=100&amountSide=target&customerId={customerId}
```

## Résolution du paiement

Si la résolution renvoie status: requires\_action, affichez nextStep.schema et envoyez continuation avec resolutionId, stepId et data à la même opération. Conservez paymentMethodData original. Continuez jusqu’à resolved, puis envoyez la réponse complète comme resolvedPaymentMethod pour la cotation et l’exécution. Les réponses héritées sans status ni nextStep sont résolues.

```json theme={null}
{
  "sessionId": "13a36c1c-f4a6-4e49-a582-2ecded2559bc",
  "paymentMethod": "provider-method-id",
  "paymentMethodData": {
    "AccountNumber": "0123456789"
  },
  "continuation": {
    "resolutionId": "provider-resolution-id",
    "stepId": "provider-next-step-id",
    "data": {
      "Acknowledgements": {
        "CoBName": true
      }
    }
  }
}
```

## Reprise de l’intégration

Les échecs d’éligibilité sont des erreurs HTTP, pas des réponses data réussies. Consultez details.code, details.customerId, details.provider et details.onboarding.action. Suivez la méthode, le chemin et le corps renvoyés. Pour create\_case, utilisez le client existant ; pour resume\_case, consultez le dossier ; pour wait, attendez ; pour contact\_support, contactez l’assistance. Ne créez pas automatiquement un autre client ou dossier si le dossier est en attente ou rejeté.

| HTTP | details.code | Action |
| - | - | - |
| 400 | `CUSTOMER_ONBOARDING_REQUIRED` | Terminez ou reprenez l’intégration. |
| 409 | `CUSTOMER_ONBOARDING_PENDING` | Attendez ou reprenez une étape du client. |
| 403 | `CUSTOMER_ONBOARDING_REJECTED` | Affichez le rejet ; ne créez pas automatiquement un autre dossier. |
| 409 | `CUSTOMER_PROVIDER_UNAVAILABLE` | Le lien client/fournisseur est indisponible ; suivez l’action renvoyée. |

## Déposer en fiat

La cotation, la résolution des exigences et la création d’ordres acceptent customerId. Avec sessionId, assetId, currency, amount et rail sont hérités ; sans session, ils sont obligatoires. customer contient les coordonnées facultatives du payeur et ne remplace pas customerId. Pour le KYC intégré, utilisez additionalDataRequirements.data comme valeurs initiales et validez le schéma actuel avant additionalData. L’intégration hébergée est vérifiée séparément.

## Comptes virtuels

Les exigences, la création et la régénération v2 acceptent déjà customerId, y compris pour les adresses enfants. Les exigences valident l’appartenance du client et son éligibilité auprès du fournisseur. Utilisez additionalDataSchema, pas les schémas d’ordres. La création renvoie 201 avec created: true pour un nouveau compte, ou 200 avec created: false si un compte existant est réutilisé.

## Montants et frais

debitAmount est le débit total dans l’actif source. amountFiat est le paiement fiat avant deductions ; soustrayez-les une fois pour obtenir le montant du bénéficiaire. transactionFee est exprimé dans le cryptoactif source et peut inclure des frais supplémentaires autonomes, les frais totaux de méthode et le traitement. Il ne représente pas toujours tous les frais : les coûts déjà prélevés par le fournisseur peuvent être financés et le spread est inclus dans le taux. N’ajoutez pas de frais à debitAmount. Le champ transactionFeeCurrency n’existe pas.

## Voir aussi

[Webhooks d’integration des clients](https://docs.blockradar.co/fr/api-reference/customer-onboarding/webhooks.md)

[Actualiser l’integration](https://docs.blockradar.co/fr/api-reference/customer-onboarding/refresh-request.md) — Demandez de nouveaux taux de retrait ou une nouvelle cotation de dépôt pour créer une nouvelle session fiat. Ne réutilisez pas une session antérieure à l’approbation. Les changements peuvent émettre des webhooks customer.onboarding.\* ; un dossier inchangé ne garantit pas un nouvel événement.

## Operations client

Les ID du client et du dossier sont obligatoires. Le dossier actualisé est renvoyé dans data.case.

* [Modifier la demande](https://docs.blockradar.co/fr/api-reference/customer-onboarding/update-request.md)
* [Marquer une étape comme soumise](https://docs.blockradar.co/fr/api-reference/customer-onboarding/hosted-session-submission.md)
* [Rouvrir la demande](https://docs.blockradar.co/fr/api-reference/customer-onboarding/reopen-request.md)
* [Consulter les documents](https://docs.blockradar.co/fr/api-reference/customer-onboarding/document-view-urls.md)
* [Soumettre une action](https://docs.blockradar.co/fr/api-reference/customer-onboarding/submit-action.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.