Вызовы PayPal API для подписки и мгновенных платежей

У меня есть одобренный бизнес-аккаунт PayPal, и я хочу интегрировать прямые платежи PayPal PRO на свой веб-сайт. Я нашел множество API-интерфейсов PayPal, и, конечно, API-интерфейсы задокументированы, но на самом деле это не так. Я не могу точно понять каждую цель API. Я могу понять только то, что в общих словах написано в документации, но все же я должен догадываться, и я не уверен, поэтому, пожалуйста, помогите мне прояснить следующие процедуры:

  1. Когда пользователь вводит данные своей кредитной карты, какой API мне нужно использовать для проверки данных кредитной карты и имени держателя.
  2. Какой API мне нужно использовать, чтобы запомнить данные кредитной карты пользователя, сохранить их в PayPal и получить к нему доступ, используя некоторый идентификатор.
  3. Какой API мне нужно использовать для создания ежемесячной подписки.
  4. Какой API мне нужно использовать, чтобы получить мгновенный платеж с сохраненной кредитной карты, данные которой были сохранены в пункте 2.

пожалуйста, помогите мне понять, какие API и как мне нужно их использовать.

Я думаю, я пробовал:

для 1: API: DoDirectPayment , с параметром: Авторизация, однако я ввел неправильное имя держателя карты и верные другие данные, такие как номер кредитной карты и успешный возврат PayPal. так что это не имеет смысла .. для 2: API: DoCapture . Я не уверен . Я предполагаю, что мне нужно сохранить идентификатор транзакции в моей базе данных и использовать его позже с DoCapture каждый раз, когда мне нужно получить мгновенный платеж. для 3: API: CreateRecurringPaymentsProfile Я не уверен. откуда я должен читать и заполнять данные платежа, из моей базы данных, или мне нужно снова запросить данные пользователя... для 4: API: DoDirectPayment с параметром: Sale hoever, я не уверен, как это сделать.

Пожалуйста, не обращайте особого внимания на то, о чем я думаю, и, пожалуйста, если вы знаете, скажите мне, как правильно выполнить эти 4 шага, перечисленные выше, какие API мне нужно использовать, и, если возможно, краткий пример.

ОБНОВЛЕНИЕ:

также что произойдет, если я вызову CreateRecurringPaymentsProfile с :
'PROFILESTARTDATE' => date('Ymd\TH:i:s\Z',strtotime("+30 days"))
'TRIALBILLINGPERIOD' => ' Месяц'


person Jigberto    schedule 12.05.2013    source источник


Ответы (1)


Вы можете использовать DoDirectPayment API для обработки платежей кредитной картой прямо на вашем сайте. Это будет API, который фактически взимает плату с покупателя. Это API не собирается проверять имя на карте, для этого нет никаких проверок. Вы сможете только убедиться, что карта действительна и может быть списана, а также защитный код карты и платежный адрес, связанный с картой.

Если вы хотите выставить счет покупателю позже, без необходимости повторного ввода покупателем своих данных, вы можете использовать вызов API DoReferenceTransaction. Все, что вам нужно сделать, это передать транзакцию с идентификатором последней ранее успешной транзакции. Таким образом, вам нужно будет сохранить эти идентификаторы транзакций в вашей системе, чтобы вы могли ссылаться на них позже как часть вызова API эталонной транзакции. Эталонные транзакции — это функция, которая не включена в учетных записях по умолчанию, вам нужно будет связаться с PayPal и включить ее в своей реальной учетной записи. Если вам нужно, чтобы это было включено в вашей тестовой учетной записи, если вы можете указать адрес электронной почты для своей тестовой учетной записи продавца песочницы, я могу включить это для вас.

Если вы хотите создать профиль ежемесячных регулярных платежей, вы можете сделать 1 из 2 вещей. Вы можете связаться с PayPal и подписаться на регулярные платежи в своей учетной записи. За эту услугу взимается ежемесячная плата. Затем вы должны использовать вызов API CreateRecurringPaymentsProfile, чтобы создать профиль и настроить покупателя на профиль ежемесячного выставления счетов. Другой вариант — использовать API эталонных транзакций, чтобы ваша система обрабатывала повторяющиеся платежи. Вы можете настроить задание cron или т. д., чтобы оно запускалось каждый месяц и взимало плату с ваших покупателей.

Надеюсь это поможет.

person PP_MTS_Chad    schedule 13.05.2013
comment
вы имеете в виду TRANSACTIONID или CORRELATIONID, потому что оба возвращаются, когда я вызываю DoDirectPayment/Authorization - person Jigberto; 13.05.2013
comment
Вам нужно будет использовать TRANSACTIONID, CORRELATIONID — это то, что мы используем внутри. Также вы можете настроить пробную версию и установить дату начала 30 дней, если хотите. - person PP_MTS_Chad; 15.05.2013