For merchant ID, public key and private key you can have a look at below link:
http://pritomkumar.blogspot.com/2017/07/braintree-create-payment-token-store.html
Below is a full PHP script:
You can also specify "customerId" instead of "paymentMethodToken" in the below variable $array (filled red color) as:
"customerId" => "brain_tree_customer_id" and then default payment method of the selected customer will be used.
'submitForSettlement' => true|false
The option that determines whether an authorized transaction is submitted for settlement.
And output/response from BrainTree API is below:
Screenshot:
http://pritomkumar.blogspot.com/2017/07/braintree-create-payment-token-store.html
Below is a full PHP script:
You can also specify "customerId" instead of "paymentMethodToken" in the below variable $array (filled red color) as:
"customerId" => "brain_tree_customer_id" and then default payment method of the selected customer will be used.
'submitForSettlement' => true|false
The option that determines whether an authorized transaction is submitted for settlement.
<?php require_once('CurlExecutor.php'); require_once "BrainTreeUtils.php"; define("MERCHANT_ID", "k9yxxxxxxj6"); define("PUBLIC_KEY", "85xxxxxxrhh7"); define("PRIVATE_KEY", "510xxxxxxxxxxxxxxxxxxxx8a00"); $array = array( "transaction" => array( "type" => "sale", 'amount' => "1.00", 'paymentMethodToken' => "6m76wy", 'orderId' => htmlentities("ORDER_ID_" . time()),'options' => array( 'submitForSettlement' => true )) ); $test = "https://api.sandbox.braintreegateway.com:443/merchants/" . MERCHANT_ID . "/transactions"; $live = "https://api.braintreegateway.com:443/merchants/" . MERCHANT_ID . "/transactions";
$headers[] = "Accept: application/xml";
$headers[] = "Content-Type: application/xml";
$headers[] = "X-ApiVersion: 4";
$closure = function(&$curl) {
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, PUBLIC_KEY . ':' . PRIVATE_KEY);
};
$result = CurlExecutor::execute(
$test, "POST", BrainTreeUtils::arrayToXml($array),
null, $headers, $closure
);
CurlExecutor::prettyPrint(BrainTreeUtils::arrayFromXml($result["response"]));
And output/response from BrainTree API is below:
Screenshot:
Array ( [transaction] => Array ( [id] => jztnv4pr [status] => Submitted For Settlement [type] => sale [currencyIsoCode] => USD [amount] => 1.00 [merchantAccountId] => fj3............z2 [subMerchantAccountId] => [masterMerchantAccountId] => [orderId] => ORDER_ID_1500087430 [createdAt] => DateTime Object ( [date] => 2017-07-15 02:57:06.000000 [timezone_type] => 3 [timezone] => UTC ) [updatedAt] => DateTime Object ( [date] => 2017-07-15 02:57:06.000000 [timezone_type] => 3 [timezone] => UTC ) [customer] => Array ( [id] => 608968099 [firstName] => Pritom [lastName] => Kumar [company] => My Company [email] => pritomkucse@gmail.com [website] => [phone] => 33303030 [fax] => ) [billing] => Array ( [id] => vt [firstName] => Pritom [lastName] => Kumar [company] => [streetAddress] => [extendedAddress] => [locality] => [region] => [postalCode] => [countryName] => [countryCodeAlpha2] => [countryCodeAlpha3] => [countryCodeNumeric] => ) [refundId] => [refundIds] => Array ( ) [refundedTransactionId] => [partialSettlementTransactionIds] => Array ( ) [authorizedTransactionId] => [settlementBatchId] => [shipping] => Array ( [id] => [firstName] => [lastName] => [company] => [streetAddress] => [extendedAddress] => [locality] => [region] => [postalCode] => [countryName] => [countryCodeAlpha2] => [countryCodeAlpha3] => [countryCodeNumeric] => ) [customFields] => [avsErrorResponseCode] => [avsPostalCodeResponseCode] => I [avsStreetAddressResponseCode] => I [cvvResponseCode] => I [gatewayRejectionReason] => [processorAuthorizationCode] => 6CWKNZ [processorResponseCode] => 1000 [processorResponseText] => Approved [additionalProcessorResponse] => [voiceReferralNumber] => [purchaseOrderNumber] => [taxAmount] => [taxExempt] => [creditCard] => Array ( [token] => 6m76wy [bin] => 444433 [last4] => 1111 [cardType] => Visa [expirationMonth] => 12 [expirationYear] => 2018 [customerLocation] => US [cardholderName] => Test [imageUrl] => https://assets.braintreegateway.com/payment_method_logo/visa.png?environment=sandbox [prepaid] => Unknown [healthcare] => Unknown [debit] => Unknown [durbinRegulated] => Unknown [commercial] => Unknown [payroll] => Unknown [issuingBank] => Unknown [countryOfIssuance] => Unknown [productId] => Unknown [uniqueNumberIdentifier] => 8a0a266..............faf06f [venmoSdk] => ) [statusHistory] => Array ( [0] => Array ( [timestamp] => DateTime Object ( [date] => 2017-07-15 02:57:06.000000 [timezone_type] => 3 [timezone] => UTC ) [status] => authorized [amount] => 1.00 [user] => j234lk2342342j3l4 [transactionSource] => api ) ) [planId] => [subscriptionId] => [subscription] => Array ( [billingPeriodEndDate] => [billingPeriodStartDate] => ) [addOns] => Array ( ) [discounts] => Array ( ) [descriptor] => Array ( [name] => [phone] => [url] => ) [recurring] => [channel] => [serviceFeeAmount] => [escrowStatus] => [disbursementDetails] => Array ( [disbursementDate] => [settlementAmount] => [settlementCurrencyIsoCode] => [settlementCurrencyExchangeRate] => [fundsHeld] => [success] => ) [disputes] => Array ( ) [authorizationAdjustments] => Array ( ) [paymentInstrumentType] => credit_card [processorSettlementResponseCode] => [processorSettlementResponseText] => [threeDSecureInfo] => ) )
These 15 minutes will change your life forever! - Cloud Token Maniacs - Paid to HODL
ReplyDeletehttps://cloudtoken.blog/these-15-minutes-will-change-your-life-forever/