2013-05-24 4 views
1

내 iOS 애플리케이션 용 ipn 처리기를 만들고 있습니다. 내 앱과 함께 페이팔 API를 사용하고 있습니다. 것은 내가 잘 페이팔 IPN 시뮬레이터에서 테스트 할 때 작동합니다. 또한 잘 작동하는 아래PayPal IPN 시뮬레이터 및 샌드 박스 계정

map[ 
business:[[email protected]] 
item_number1:[AK-1234] 
receiver_id:[[email protected]] 
first_name:[John] 
mc_shipping1:[1.02] 
tax:[2.02] 
residence_country:[US] 
txn_type:[cart] 
mc_shipping:[3.02] 
test_ipn:[1] 
custom:[xyz123] 
mc_handling:[2.06] 
mc_handling1:[1.67] 
payer_id:[TESTBUYERID01] 
payment_status:[Completed] 
receiver_email:[[email protected]] 
mc_currency:[USD] 
verify_sign:[AdsvkafFyuBADI8IS081RggbvUxmAu2ntBemAGacZ3Dx56qQzmc9QzhK] 
address_country:[United States] 
item_name1:[something] 
mc_fee:[0.44] 
address_state:[CA] 
mc_gross1:[9.34] 
payer_status:[unverified] 
last_name:[Smith] 
invoice:[abc1234] 
payment_date:[07:44:54 23 May 2013 PDT] 
address_city:[San Jose] 
mc_gross:[12.34] 
address_street:[123, any street] 
notify_version:[2.4] 
txn_id:[298300930] 
payer_email:[[email protected]] 
address_status:[confirmed] 
payment_type:[instant] 
address_zip:[95131] 
address_country_code:[US] 
address_name:[John Smith] 
] 

하지만 샌드 박스 계정으로 테스트하려고 할 때 난 후 메시지를 가지고 : 나는 (내가 기억 해달라고 익스프레스 체크 아웃으로) 시뮬레이터에서 아래 포스트 메시지를 받았습니다

map[ 
fees_payer:[EACHRECEIVER] 
transaction[0].id:[89799058XE923193M] 
verify_sign:[AE6aVMFpE6M3pfCoNe9gPQ4pMixOA9NNUFbTWPTrOik1CqrdIVxc3K3M] 
pay_key:[AP-9DJ400382D973781B] 
transaction[0].id_for_sender_txn:[8MC20151R46812309] 
transaction[0].status:[Completed] 
action_type:[PAY] 
transaction[0].is_primary_receiver:[false] 
sender.useCredentials:[true] 
transaction[0].pending_reason:[NONE] 
transaction[0].amount:[USD 29.00] 
payment_request_date:[Thu May 23 07:46:49 PDT 2013] 
reverse_all_parallel_payments_on_error:[false] 
test_ipn:[1] 
status:[COMPLETED] 
transaction[0].status_for_sender_txn:[Completed] 
transaction[0].paymentType:[SERVICE] 
notify_version:[UNVERSIONED] 
transaction[0].receiver:[mail[email protected]] 
return_url:[http://www.paypal.com] 
log_default_shipping_address_in_transaction:[false] 
charset:[windows-1252] 
cancel_url:[http://www.paypal.com] 
transaction_type:[Adaptive Payment PAY] 
ipn_notification_url:[http://something.com/ipnhandler/] 
] 

그러나이 두 가지 사이에는 유사점이 없으므로 여기에 유용한 것은 없습니다. 시뮬레이터를 사용하면 나는 payay 이름, 이메일 등을 얻었지만 Sandbox 계정을 사용하면 나는 지불 만한다고 스스로에게 알린다 고 생각합니다. 어째서 이런 일이 일어나고 앱이 살아있을 때 이렇게 될지 궁금합니다.

+0

잘 모르시겠습니까? – EFE

답변

0

다소 늦기는하지만 예, 트랜잭션이 다르기 때문에 적응 지불의 결과로 전송되는 IPN이 다릅니다. 예를 들어, 여러 개의 수신기가있을 수 있기 때문에 하나의 receiver_id 필드를 갖는 것이 의미가 없습니다. Paypal은 모든 필드와 가능한 값에 대한 개요를 제공합니다 : https://developer.paypal.com/docs/classic/adaptive-payments/integration-guide/APIPN/

관련 문제