# Créer une facture

## Requête

```bash
curl -X POST https://api.bitsby.app/invoices/create \
  -H "Authorization: Token MSvL2ltaDZdWVjmZURURMVWhqSJLT2NURjhL2Fla1Z1T1IxQTltKs1T3Ay" \
	-F "projectId=9deea1e2-0c08-41a3-bdc2-a34eada3892d" \
	-F "amountFiat=10.55" \
	-F "currencyFiat=EUR" \
	-F "description=12 months license for BITSBY" \
	-F "serviceData={\"userId\":100,\"orderId\":500}" \
	-F "timeToPay=12"
```

## Paramètres de la requête

| Paramètre      | Type de données | Description                                                                                                                                                                | Exemple                              | Obligatoire ? |
| -------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | --------- |
| `projectId`    | UUID      | ID du projet au format UUID                                                                                                                                                | 1c48b092-9878-48f5-b441-07a8a48e7b54 | oui       |
| `amountFiat`   | Float     | Montant en devise fiat                                                                                                                                                     | 10.55                                | oui       |
| `currencyFiat` | String    | Devise fiat. Valeurs autorisées : USD, EUR, RUB                                                                                                                            | EUR                                  | oui       |
| `description`  | String    | Description du produit ou du service. Affichée au client sur la page de paiement                                                                                           | 12 months license for BITSBY         | non       |
| `serviceData`  | String    | Identifiant de la commande côté boutique. Non affiché au client. Ces données relient la facture et le paiement au client dans la boutique du marchand. Le JSON est un format pratique pour cela | {"userId":100,"orderId":500}         | non           |
| `timeToPay`    | Float     | Délai de paiement de la facture, en heures. Valeurs autorisées : 0.5, 1, 3, 6, 12                                                                                          | 1                                    | oui       |

## Exemple de réponse

```json
{
   "result":"success",
   "data":{
      "id":"ade9550d-3dc7-4fd3-b94e-3b4c12aaaa0c",
      "uid":"MXNj4m8HhcM4",
      "createDatetime":"2024-02-29 15:20:24",
      "timeToPayDatetime":"2024-03-01 03:20:24",
      "commissionFiatUSD":0.1,
      "amountFiatUSD":10,
      "url":"https:\/\/dash.bitsby.app\/invoices\/pay\/MXNj4m8HhcM4"
   }
}
```

## Paramètres de la réponse

| Paramètre           | Description                                                                                                   |
| ------------------- | ------------------------------------------------------------------------------------------------------------- |
| `id`                | ID de la facture au format UUID                                                                               |
| `uid`               | ID de la facture (pour le client)                                                                             |
| `createDatetime`    | Date et heure de création de la facture (UTC)                                                                 |
| `timeToPayDatetime` | Date et heure de fin de validité de la facture (UTC). Le client doit payer la facture avant cette heure       |
| `commissionFiatUSD` | Montant de la commission du service. Calculé à partir du montant `amountFiatUSD`                              |
| `amountFiatUSD`     | Montant en USD, calculé à la création de la facture à partir de `invoice.amountFiat` au taux de change actuel |
| `url`               | Lien vers la page de paiement pour le client. Envoyez ce lien au client pour payer la facture                 |
