diff options
Diffstat (limited to '')
-rw-r--r-- | vendor/paypal/paypal-checkout-sdk/samples/CaptureIntentExamples/CaptureOrder.php | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/vendor/paypal/paypal-checkout-sdk/samples/CaptureIntentExamples/CaptureOrder.php b/vendor/paypal/paypal-checkout-sdk/samples/CaptureIntentExamples/CaptureOrder.php new file mode 100644 index 0000000..931d5d9 --- /dev/null +++ b/vendor/paypal/paypal-checkout-sdk/samples/CaptureIntentExamples/CaptureOrder.php @@ -0,0 +1,60 @@ +<?php + + +namespace Sample\CaptureIntentExamples; + +require __DIR__ . '/../../vendor/autoload.php'; +use Sample\PayPalClient; +use PayPalCheckoutSdk\Orders\OrdersCaptureRequest; + +class CaptureOrder +{ + + /** + * This function can be used to capture an order payment by passing the approved + * order id as argument. + * + * @param orderId + * @param debug + * @returns + */ + public static function captureOrder($orderId, $debug=false) + { + $request = new OrdersCaptureRequest($orderId); + + $client = PayPalClient::client(); + $response = $client->execute($request); + if ($debug) + { + print "Status Code: {$response->statusCode}\n"; + print "Status: {$response->result->status}\n"; + print "Order ID: {$response->result->id}\n"; + print "Links:\n"; + foreach($response->result->links as $link) + { + print "\t{$link->rel}: {$link->href}\tCall Type: {$link->method}\n"; + } + print "Capture Ids:\n"; + foreach($response->result->purchase_units as $purchase_unit) + { + foreach($purchase_unit->payments->captures as $capture) + { + print "\t{$capture->id}"; + } + } + // To toggle printing the whole response body comment/uncomment below line + echo json_encode($response->result, JSON_PRETTY_PRINT), "\n"; + } + + return $response; + } +} + +/** + * This is the driver function which invokes the captureOrder function with + * <b>Approved</b> Order Id to capture the order payment. + */ +if (!count(debug_backtrace())) +{ + CaptureOrder::captureOrder('0F105083N67049335', true); +}
\ No newline at end of file |