Изменить имя поля Налог на НДС
Я использую PHP PayPal Restfull SDK. Когда пользователь будет перенаправлен на сайт PayPal для оплаты. как мы знаем, отображать список элементов и количество информации. но мне нужно отобразить НДС при замене налоговой метки.
Как я могу изменить ярлык налога? Пожалуйста, дайте мне знать.
Ссылка SDK: https://github.com/paypal/PayPal-PHP-SDK
Проблема: https://github.com/paypal/PayPal-PHP-SDK/issues/460
Не знаю, почему они говорят, что это невозможно.
Вот мой код.
function paypal_payment(){
if ($config) {
set_config($config);
}
require __DIR__ . '/../bootstrap.php';
$payer = new Payer();
$payer->setPaymentMethod("paypal");
foreach ($pay_data->item_list as $item) {
$item1 = new Item();
$item1->setName($item['title'])
->setDescription($item['description'])
->setCurrency($pay_data->currency)
->setQuantity($item['quantity'])
->setTax($item['tax'])
->setPrice($item['price']);
$all_items[] = $item1;
}
$itemList = new ItemList();
$itemList->setItems($all_items);
if (!isset($pay_data->shipping_charg)) {
$pay_data->shipping_charg = 0;
}
if (!isset($pay_data->tax)) {
$pay_data->tax = 0;
}
if (!isset($pay_data->subtotal)) {
$pay_data->subtotal = 0;
}
$details = new Details();
$details->setShipping($pay_data->shipping_charg)
->setTax($pay_data->tax)
->setSubtotal($pay_data->subtotal);
$amount = new Amount();
$amount->setCurrency($pay_data->currency)
->setTotal($pay_data->total)
->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)
->setItemList($itemList)
->setDescription("Payment description")
->setInvoiceNumber($pay_data->invoice_number);
// ### Redirect urls
// Set the urls that the buyer must be redirected to after
// payment approval/ cancellation.
$baseUrl = getBaseUrl();
$redirectUrls = new RedirectUrls();
if ($is_for_order === false) {
$redirectUrls->setReturnUrl(lang_anchor('PaypalTest/payment_done'))
->setCancelUrl(lang_anchor('PaypalTest/cancel'));
} else {
$redirectUrls->setReturnUrl(lang_anchor('payment/payment_done/true'))
->setCancelUrl(lang_anchor('payment/cancel'));
}
// ### Payment
// A Payment Resource; create one using
// the above types and intent set to 'sale'
$payment = new Payment();
$payment->setIntent("sale")
->setPayer($payer)
->setRedirectUrls($redirectUrls)
->setTransactions(array($transaction));
// For Sample Purposes Only.
$request = clone $payment;
// ### Create Payment
// Create a payment by calling the 'create' method
// passing it a valid apiContext.
// (See bootstrap.php for more on `ApiContext`)
// The return object contains the state and the
// url to which the buyer must be redirected to
// for payment approval
try {
$payment->create($apiContext);
} catch (Exception $ex) {
// NOTE: PLEASE DO NOT USE RESULTPRINTER CLASS IN YOUR ORIGINAL CODE. FOR SAMPLE ONLY
$data = ResultPrinter::printError("Created Payment Using PayPal. Please visit the URL to Approve.", "Payment", null, $request, $ex);
return $data;
exit(1);
}
// ### Get redirect url
// The API response provides the url that you must redirect
// the buyer to. Retrieve the url from the $payment->getApprovalLink()
// method
$approvalUrl = $payment->getApprovalLink();
// NOTE: PLEASE DO NOT USE RESULTPRINTER CLASS IN YOUR ORIGINAL CODE. FOR SAMPLE ONLY
// ResultPrinter::printResult("Created Payment Using PayPal. Please visit the URL to Approve.", "Payment", "$approvalUrl", $request, $payment);
redirect($approvalUrl);
return $approvalUrl;
}
Спасибо:-) Анкит Вадария
1 ответ
Вам просто нужно заменить поле НДС на поле "Налог" на странице вашего сайта, где вы выполняете процесс перенаправления следующим образом:
Замените это поле:
<input name="VAT_1" value="yourAmount" type="hidden">
С:
<input name="TAX_1" value="yourAmount" type="hidden">
Обратите внимание, что: имя входа может быть изменено, но оно будет содержать VAT
,