Créer une intention de paiement
Après avoir créé une intention de paiement, associez-y un moyen de paiement et confirmez l'intention pour finaliser la transaction.
L'utilisation de confirm=true lors de la création revient à créer et à confirmer l'intention de paiement au cours du même appel. L'application de confirm=true permet d'utiliser tous les paramètres de l'API confirm.
POST https://api.stripe.com/v1/payment_intents
Remarque
Vous devez envoyer la requête confirm via HTTPS.
Exemples
Exemple cURL :
cURL
curl -X POST https://api.stripe.com/v1/payment_intents \
-u <YOUR_SECRET_KEY>: \
-d "amount=212¤cy=usd&payment_method=pm_card_visa&confirm=true"
Réponses
Les réponses renvoient des codes standard.
200: OK
Response
{
"id": "pi_3Rsx4dDtWMrPDtgt0mUrePJ9",
"object": "payment_intent",
"amount": 212,
"amount_capturable": 0,
"amount_details": {
"tip": {}
},
"amount_received": 0,
"application": null,
"application_fee_amount": null,
"automatic_payment_methods": {
"allow_redirects": "always",
"enabled": true
},
"canceled_at": null,
"cancellation_reason": null,
"capture_method": "automatic_async",
"client_secret": "pi_3Rsx4dDtWMrPDtgt0mUrePJ9_secret_7sqfufxuIYiBhbw52Vi51Z47o",
"confirmation_method": "automatic",
"created": 1754447247,
"currency": "usd",
"customer": null,
"description": null,
"last_payment_error": null,
"latest_charge": null,
"livemode": false,
"metadata": {},
"next_action": null,
"on_behalf_of": null,
"payment_method": null,
"payment_method_configuration_details": {
"id": "pmc_1RsGk1DtWMrPDtgtcaQ0d3Sg",
"parent": null
},
"payment_method_options": {
"amazon_pay": {
"express_checkout_element_session_id": null
},
"card": {
"installments": null,
"mandate_options": null,
"network": null,
"request_three_d_secure": "automatic"
},
"cashapp": {},
"klarna": {
"preferred_locale": null
},
"link": {
"persistent_token": null
}
},
"payment_method_types": [
"card",
"klarna",
"link",
"cashapp",
"amazon_pay"
],
"processing": null,
"receipt_email": null,
"review": null,
"setup_future_usage": null,
"shipping": null,
"source": null,
"statement_descriptor": null,
"statement_descriptor_suffix": null,
"status": "requires_payment_method",
"transfer_data": null,
"transfer_group": null
}
Réponses d'erreur
400: Bad Request
Response
{
"error": {
"code": "parameter_invalid_integer",
"doc_url": "https://stripe.com/docs/error-codes/parameter-invalid-integer",
"message": "Invalid integer: <integer>",
"param": "amount",
"request_log_url": "https://dashboard.stripe.com/test/logs/req_UQf6XBwBl9yk66?t=1734829676",
"type": "invalid_request_error"
}
}
401: Unauthorized
Response
{
"error": {
"type": "invalid_request_error",
"message": "Invalid API Key provided: sk_test_********************1234"
}
}
Paramètres
Paramètres du corps
| Paramètre | Type | Description |
|---|---|---|
amount | entier | (Obligatoire) Montant total à facturer. Saisissez un nombre entier positif exprimé dans l'unité la plus petite de la devise (par exemple, 100 cents pour 1,00 $). |
currency | chaîne | (Obligatoire) Code ISO de devise à trois lettres, en minuscules. La devise doit figurer parmi celles prises en charge. |
confirm | booléen | Définissez cette valeur sur « true » pour tenter de confirmer immédiatement cette intention de paiement (PaymentIntent). |
customer | chaîne | Identifiant du client auquel appartient cette intention de paiement (PaymentIntent), s'il existe. |
description | chaîne | Chaîne de caractères arbitraire associée à l'objet. |
payment_method | chaîne | Identifiant du moyen de paiement à associer à cette PaymentIntent. |
payment_method_types[] | tableau de chaînes | Liste des types de modes de paiement que cette PaymentIntent peut utiliser. |
shipping | objet | Informations d'expédition pour PaymentIntent. |
statement_descriptor | chaîne | Chaîne de caractères arbitraire affichée sur le relevé de carte bancaire de votre client. |
statement_descriptor_suffix | chaîne | Fournit des informations supplémentaires qui apparaissent sur le relevé de carte bancaire de votre client. |
expand[] | tableau de chaînes | Identifie les objets de réponse imbriqués à enrichir et à renvoyer en ligne. |