2017-03-24 4 views
1

Je suis en mesure d'autoriser & Capture Paiement.PHP Paypal API: Comment capturer un paiement autorisé partiellement?

https://developer.paypal.com/docs/api/payments/#authorization_capture

Autorisez Mon Montant de la commande est: 100

$data = '{ 
      "amount": { 
      "currency": "USD", 
      "total": "10" 
      }, 
      "is_final_capture": false 
      }'; 

Ci-dessous API J'utilise

https://api.sandbox.paypal.com/v1/payments/authorization/<authorizationId>/capture 

Je ne Capturer 10 USD & Marquage is_final_capture comme false. Il marque comme Ordre Terminé.

Quand je lance à nouveau avec 90 USD il dit

stdClass Object 
(
    [name] => PAYMENT_ALREADY_DONE 
    [message] => Payment has been done already for this cart. 
    [information_link] => https://developer.paypal.com/docs/api/payments/#errors 
    [debug_id] => ce22df5392497 
) 

Sur Sandbox, il marque comme commande terminée

Comment faire pour capturer en attente 90 USD?

+1

Dont envoyer "is_final_capture": false dans la moitié capture –

+1

envoyer uniquement cette valeur à true lorsque sa capture réellement finale –

+0

Ainsi @TejasMehta Il sera donc 1er '{ "quantité": { "monnaie": "USD", "total": "10" } }; ' 2' { "quantité": { "monnaie": "USD", "total": "90" }, "is_final_capture": true }; '? –

Répondre

1

Merci à @Tejas & ça marche

1st Time vous pouvez capturer avec ceux ci-dessous

$data = '{ 
      "amount": { 
      "currency": "USD", 
      "total": "10" 
      } 
      }'; 

2ème temps vous pouvez capturer avec ceux ci-dessous

$data = '{ 
      "amount": { 
      "currency": "USD", 
      "total": "90" 
      }, 
      "is_final_capture": true 
      }'; 

Sur le chemin au-dessus de vous peut capturer partiellement le paiement autorisé

+0

Super, Si vous voulez utiliser la bibliothèque la plus facile pour PayPal, puis utilisez le mien un https://github.com/angelleye/paypal-php-library J'ai créé REST Partie de la bibliothèque avec @angelleye –

+0

Ok Merci @TejasMehta En fait, j'ai besoin de l'implémenter dans Magento –

+1

Oui, il est compatible avec tous les frameworks car il suffit de remplir uniquement les valeurs du tableau. Vérifiez également la page des échantillons. –