#python #paypal
#python #paypal
Вопрос:
payment = Payment({
"intent": "sale",
"application_context": {
"locale": "en_IN",
"user_action": "commit",
"shipping_preference": "NO_SHIPPING",
"landing_page": "billing"
},
# Set payment method
"payer": {
"payment_method": "paypal",
"payer_info": {
"email": email,
"first_name": first_name,
"last_name": last_name,
"shipping_address": {
"phone": phone,
}
}
},
# Set redirect URLs
"redirect_urls": {
"return_url": "example.com/confpayment/",
"cancel_url": "examplecom/payment_fail/"
},
# Set transaction object
"transactions": [{
"amount": {
"total": str(amount),
# "total": "1",
"currency": "INR"
},
"description": "payment description"
}]
})
Я получаю входящий запрос JSON, который не сопоставляется с запросом API
Ошибка:
{'name': 'MALFORMED_REQUEST', 'message': 'Incoming JSON request does not map to API request', 'information_link': 'https://developer.paypal.com/webapps/developer/docs/api/#MALFORMED_REQUEST', 'debug_id': '51397a89429bd'}
Все остальные параметры предварительно заполнены, за исключением номера мобильного телефона. Пожалуйста, помогите мне в этом.
Я не уверен, правильный формат API или нет.
Комментарии:
1. Теперь я получаю сообщение «Это поле в настоящее время не поддерживается в этом запросе»
Ответ №1:
Редактировать код предварительного просмотра неверно :
Документация по payer
свойству здесь (ссылка исправлена на версию V2) :
https://developer.paypal.com/docs/api/orders/v2/?mark=payer#definition-payer
Ошибка, удалите лишнюю запятую в : "phone": "",
"payer_info": {
...
"shipping_address": {
"phone": ""
}
}
ЭТОТ КОД КАЖЕТСЯ НЕПРАВИЛЬНЫМ :
Переместите phone
за shipping_address
пределы :
"payer_info": {
...
"shipping_address": {
...
},
"phone": ""
}
Полные примеры здесь: http://www.seneca-re.com/wp-content/plugins/estatik/vendor/paypal/rest-api-sdk-php/sample/payments/ListPayments.php
Комментарии:
1. Теперь я получаю сообщение «Это поле в настоящее время не поддерживается в этом запросе»
2. Проверьте используемый вами API, кажется, он доступен в API V2, а не в V1: developer.paypal.com/docs/api/orders/v2 => Заказы / Телефон
3. Не удалось найти здесь ничего полезного для поля номера телефона
4. На самом деле позиция этого поля в формате JSON является основной проблемой, вот почему я получаю эту ошибку.
5. Не могли бы вы попробовать свой код, удалив лишнюю запятую => «phone»: телефон, а не «phone»: телефон,