посоветуйте плиз какиенибуть ссылочки на рускоязычные ресурсы по PayFlow Pro

tf

крылья рулят
посоветуйте плиз какиенибуть ссылочки на рускоязычные ресурсы по PayFlow Pro

никак ничего не могу найти и просветления не находит :(
 

xor

Новичок
А в чем собственно проблема? По-моему английской документации достаточно... Если есть вопросы, задавай, попробуем помочь :)
 

tf

крылья рулят
xor, единственная проблема в моем ни очень хорошем английском, то что у меня есть понимание % на 20, значит общее стремится 0
и очень неприятно осознавать свою несостоятельность в этом вопросе
сейчас читаю в переводчике, думаю со временем разерусь...


сейчас вопрос состоит в том как организовать систему оплаты через PayFlow Pro, вопрос минимум какие нужны от пользователями реквизиты чтобы составить таблицу юзер в системе, чтобы потом их юзать
ну а максимум мне вникнуть во все это :)
 

xor

Новичок
Автор оригинала: tf
...
сейчас вопрос состоит в том как организовать систему оплаты через PayFlow Pro, вопрос минимум какие нужны от пользователями реквизиты чтобы составить таблицу юзер в системе, чтобы потом их юзать
ну а максимум мне вникнуть во все это :)
Для выполнения транзакции достаточно передать PayFlow номер кредитки юзера, ее срок действия и сумму платежа. После выполнения данной транзакции будет возвращен ее ID-номер, который потом можно будет передавать в PayFlow вместо номера кредитки для выполнения новой транзакции. Т.е. у себя в системе номер кредитки можно не хранить и даже нужно, т.к. это не безопасно :)
На самом деле, там еще можно передавать кучу других параметров, такие как имя плательщика, его адрес, zip-код и т.п. Некоторые из этих полей будут проверяться на соответствие реальным данным (типа защита от мошенничества)...
Для создания таблицы с юзерами я бы использовал такие поля:
1. Name on card (имя плательщика);
2. Zip-code;
3. Expiration date (срок действия);
4. Последние четыре цифры кредитки;
5. Номер транзакции.
ну и плюс всякие свои служебные поля
 

tf

крылья рулят
xor, спасибо, а в примерчики можеш тыкнуть? :)
 

xor

Новичок
PayflowPro_Guide.pdf, страница 31. Пример "Sale" транзакции:

PHP:
<?php
$commands  = 'TRXTYPE=S&TENDER=C&USER=SuperUser&PWD=SuperUserPassword&VENDOR=SuperUser';
$commands .= '&PARTNER=PayPal&ACCT=5105105105105100&EXPDATE=1209&CVV2=123&AMT=99.00'
$commands .= '&FNAME=Bill&LNAME=Smith&STREET=123 MainSt.&CITY=Anywhere&STATE=CA&ZIP=12345'
$commands .= '&COMMENT1=Reservation&INVNUM=1234567890&PONUM=C12345&CVV2=567&VERBOSITY=MEDIUM';

putenv('PFPRO_CERT_PATH=/usr/local/share/certs');
$result = exec('/usr/local/bin/pfpro test-payflow.verisign.com 443 "' . $commands . '" 30');

var_dump($result);
?>
USER, PWD, VENDOR - данные твоего аккаунта;
ACCT - номер кредитки;
EXPDATE - срок действия кредитки;
AMT - сумма платежа.

Все остальные поля необязательные.

Имя плательщика можно передать одним полем NAME=... (так удобнее); Если имя содержит спец. символы, то нужно указывать длину этого поля, например так: NAME[13]=hello & world
Чтобы данные о кредитки брались от другой транзакции нужно указывать ORIGID=номер_транзакции

Ответ от PayFlow может быть таким:
Код:
RESULT=0&PNREF=VXYZ01234567&RESPMSG=APPROVED&AUTHCODE=123456&AVSADDR=Y&AVSZIP=N
RESULT= Если "0" значит транзакция прошла, т.е. все "хорошо" :)
PNREF= Номер транзакции, этот номер потом можно использовать в ORIGID=...
 

tf

крылья рулят
xor, спасибо :))))

-~{}~ 13.11.06 13:00:

xor, тут один вопрос, немного непонятно
для первоначальной проверки верности карточки можно использовать TRXTYPE=A
при возврате об устпехе, полученные от нее данные (ORIGID-PNREF)
мы может использовать сколь угодно долго при AMT не превышающую заданну первоначально при проверки карточки
а если мы запрашиваем в транзакции больше денег что происходит
мне просто вот эта фраза не совсем понятна
In addition, the cardholder’s open-to-buy is reduced by the sum of the original Authorization-only amount and the final Delayed Capture amount
я вообще правильно понял с авторизацией?
 

xor

Новичок
Я так понял ты говоришь об первоначальной регистрации юзера в твоей системе?
Тогда тут можно использовать несколько способов:
1) Сделать Sale-транзакцию, скажем на 1.00$, тогда PayFlow сразуже проверит кредитку на валидность и снимет деньги, после этого можно запомнить ее номер и ипользовать для дальнейших Sale-транзакциях (только указывать другую сумму AMT=...). Когда юзер больше не захочет использовать твою систему, можно будет вернуть ему деньги (сделать Credit-транзакцию с этим номером, но уже без суммы);

2) Сделать Authorization-транзакцию на какую-нибудь сумму, при этом деньги не будут списаны с кредитки. Далее нужно запомнить номер этой транзакции. Сразу же после этого нужно будет сделать Void-транзакцию, чтобы деньги с кредитки нельзя было списать Delayed Capture-транзакцией. Потом в Sale-транзакциях использовать номер Authorization-транзакции (ну и указывать другую сумму AMT=...).

P.S. Sale-транзакция это тоже самое, что и Autorization и Delayed Capture одновременно.
 

tf

крылья рулят
xor, спасибо
2. Zip-code;
3. Expiration date (срок действия);
4. Последние четыре цифры кредитки;
выходит при последующем обращении при использовании ORIGID они нам уже не нужны?
 

xor

Новичок
В руководстве на странице 41 указывается, какие поля будут использованы из предыдущей транзакции:
ACCT, EXPDATE, STREET, CITY, STATE, FIRSTNAME, MIDDLENAME, LASTNAME, ZIP, ...
 
Сверху