Почему публикация в API песочницы PayPal не работает для меня? - PullRequest
0 голосов
/ 07 октября 2018

Я POST (с подходящим заголовком Authorization:) на https://api.sandbox.paypal.com/v1/payments/payment

{"intent": "sale", "payer": {"payment_method": "paypal"}, "transactions": [{"amount": 10.0, "currency": "USD", "details": {"subtotal": 10.0, "shipping": 0.0, "tax": 0.0}, "description": "Item 1"}], "redirect_urls": {"return_url": "https://example.com", "cancel_url": "https://example.com"}}

и получаю взамен

{"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":"815ed32bcd78e"}

Почему ошибка?В чем моя ошибка?

Ответы [ 2 ]

0 голосов
/ 07 октября 2018

Пожалуйста, проверьте PayPal документация

См. Пример на правой стороне.amount должен быть объектом - currency и details должны быть атрибутами amount, также вам не хватает обязательного атрибута total

Переработанный JSON

{
   "intent":"sale",
   "payer":{
      "payment_method":"paypal"
   },
   "transactions":[
      {
         "amount":{
            "total":"10.00",
            "currency":"USD",
            "details":{
               "subtotal":"10.00",
               "shipping":"0.00",
               "tax":"0.00"
            }
         },
         "description":"Item 1"
      }
   ],
   "redirect_urls":{
      "return_url":"https://example.com",
      "cancel_url":"https://example.com"
   }
}

Пожалуйста, будьте осторожны при указании "price-numbers" (total, subtotal, ...), они должны быть строками и следовать правилам о десятичных цифрах

0 голосов
/ 07 октября 2018

Вопрос был отредактирован, и этот ответ больше не актуален.

...