SlideShare uma empresa Scribd logo
1 de 34
Payments made Easy On Force.com Praveen Alavilli Developer Evangelist, PayPal @ppalavilli Salesforce Developer Meetup 4/1/2010
What ? A natural language processor that generates payments processing code based on human language What languages we support ? English Spanish French Hindi
Alright let’s get serious 
Agenda ,[object Object]
Adaptive Payments API
Adaptive Accounts API
New APEX Toolkit
Installing and Using Toolkit
Code Samples
Going Live
Q & A,[object Object]
The PayPal X Platform ,[object Object],	- Pay anyone, receive from anyone ! ,[object Object],	- Identity, Permissions, Accounts ,[object Object],	- Notifications, Reporting, Search
Different kinds of Payments between
PayPal The Sender A person or business whose PayPal account is being credited A person or business whose PayPal account is being debited C The Receiver The API CALLER The API access account who makes the Adaptive Payments service calls: usually owned by the developer Actors Involved
APEX toolkit ,[object Object]
Supported APIs:
Adaptive Payments API
Adaptive Accounts API,[object Object]
Split payments
Bill payments
Payroll payments
B2B payments
Remittances
Marketplace payments
Virtual currencies
Points and miles
Mass payments
Invoice payments
Recurring payments
Scheduled payments
Money transfers
Mobile/device payments
Government travel
Future payment scenarios…

Mais conteúdo relacionado

Destaque

Red dead redemption
Red dead redemptionRed dead redemption
Red dead redemptionJorge_Muni27
 
Problemas básicos del alumno de español
Problemas básicos del alumno de españolProblemas básicos del alumno de español
Problemas básicos del alumno de españoldsvmeckpomm
 
El cine y las variedades del español en la clase de E/LE
El cine y las variedades del español en la clase de E/LEEl cine y las variedades del español en la clase de E/LE
El cine y las variedades del español en la clase de E/LEdsvmeckpomm
 
地域における防災教育の実践に関する手引きテキスト 161017v
地域における防災教育の実践に関する手引きテキスト 161017v地域における防災教育の実践に関する手引きテキスト 161017v
地域における防災教育の実践に関する手引きテキスト 161017vKenya Miyazaki
 
TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...
TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...
TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...Carlos Rodriguez
 
Chapter 5 CPR
Chapter 5 CPRChapter 5 CPR
Chapter 5 CPRjgmedina1
 

Destaque (10)

El tata en exclusiva
El tata en exclusivaEl tata en exclusiva
El tata en exclusiva
 
Lindalva
LindalvaLindalva
Lindalva
 
LECTOESCRITURA
LECTOESCRITURALECTOESCRITURA
LECTOESCRITURA
 
Red dead redemption
Red dead redemptionRed dead redemption
Red dead redemption
 
Problemas básicos del alumno de español
Problemas básicos del alumno de españolProblemas básicos del alumno de español
Problemas básicos del alumno de español
 
Integrated Supply Chain
Integrated Supply ChainIntegrated Supply Chain
Integrated Supply Chain
 
El cine y las variedades del español en la clase de E/LE
El cine y las variedades del español en la clase de E/LEEl cine y las variedades del español en la clase de E/LE
El cine y las variedades del español en la clase de E/LE
 
地域における防災教育の実践に関する手引きテキスト 161017v
地域における防災教育の実践に関する手引きテキスト 161017v地域における防災教育の実践に関する手引きテキスト 161017v
地域における防災教育の実践に関する手引きテキスト 161017v
 
TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...
TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...
TEST PARA IDENTIFICAR Y HACER SEGUIMIENTO A PROBLEMAS DE LECTOESCRITURA, EXPR...
 
Chapter 5 CPR
Chapter 5 CPRChapter 5 CPR
Chapter 5 CPR
 

Mais de PayPalX Developer Network

Monetizing your Applications with PayPal X Payments Platform
Monetizing your Applications withPayPal X Payments PlatformMonetizing your Applications withPayPal X Payments Platform
Monetizing your Applications with PayPal X Payments PlatformPayPalX Developer Network
 
Fowa University Session Monetizing in any ecosystem
Fowa University Session Monetizing in any ecosystemFowa University Session Monetizing in any ecosystem
Fowa University Session Monetizing in any ecosystemPayPalX Developer Network
 
Accept PayPal in 5 Minutes or Less Using Button Manager and Button Manager API
Accept PayPal in 5 Minutes or Less Using Button Manager and Button Manager APIAccept PayPal in 5 Minutes or Less Using Button Manager and Button Manager API
Accept PayPal in 5 Minutes or Less Using Button Manager and Button Manager APIPayPalX Developer Network
 
One Gateway for All Kinds of Payments—the Payflow Integration
One Gateway for All Kinds of Payments—the Payflow IntegrationOne Gateway for All Kinds of Payments—the Payflow Integration
One Gateway for All Kinds of Payments—the Payflow IntegrationPayPalX Developer Network
 
Cool New Advances in PayPal Express Checkout
Cool New Advances in PayPal Express CheckoutCool New Advances in PayPal Express Checkout
Cool New Advances in PayPal Express CheckoutPayPalX Developer Network
 
Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...
Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...
Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...PayPalX Developer Network
 
Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...
Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...
Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...PayPalX Developer Network
 
Developing Secure Applications and Defending Against Common Attacks
Developing Secure Applications and Defending Against Common AttacksDeveloping Secure Applications and Defending Against Common Attacks
Developing Secure Applications and Defending Against Common AttacksPayPalX Developer Network
 
Opening Our Platform to Developers: PayPal's New Application Model and Develo...
Opening Our Platform to Developers: PayPal's New Application Model and Develo...Opening Our Platform to Developers: PayPal's New Application Model and Develo...
Opening Our Platform to Developers: PayPal's New Application Model and Develo...PayPalX Developer Network
 
Adaptive Payments: Changing How We Pay with PIN, Pre-approved and Split Payments
Adaptive Payments: Changing How We Pay with PIN, Pre-approved and Split PaymentsAdaptive Payments: Changing How We Pay with PIN, Pre-approved and Split Payments
Adaptive Payments: Changing How We Pay with PIN, Pre-approved and Split PaymentsPayPalX Developer Network
 

Mais de PayPalX Developer Network (20)

Payments Anywhere with PayPal
Payments Anywhere with PayPalPayments Anywhere with PayPal
Payments Anywhere with PayPal
 
Trends in social commerce
Trends in social commerceTrends in social commerce
Trends in social commerce
 
Online Payments For Developers
Online Payments For DevelopersOnline Payments For Developers
Online Payments For Developers
 
Monetizing with PayPal on Mobile
Monetizing with PayPal on MobileMonetizing with PayPal on Mobile
Monetizing with PayPal on Mobile
 
Fueling the Wallet.Next
Fueling the Wallet.NextFueling the Wallet.Next
Fueling the Wallet.Next
 
Monetizing your Applications with PayPal X Payments Platform
Monetizing your Applications withPayPal X Payments PlatformMonetizing your Applications withPayPal X Payments Platform
Monetizing your Applications with PayPal X Payments Platform
 
Social Media Metrics
Social Media MetricsSocial Media Metrics
Social Media Metrics
 
In Search of your Wallet ?
In Search of your Wallet ?In Search of your Wallet ?
In Search of your Wallet ?
 
Fowa University Session Monetizing in any ecosystem
Fowa University Session Monetizing in any ecosystemFowa University Session Monetizing in any ecosystem
Fowa University Session Monetizing in any ecosystem
 
Sm Metrics from Social Media Week
Sm Metrics from Social Media WeekSm Metrics from Social Media Week
Sm Metrics from Social Media Week
 
Monetization with PayPal Payments Platform
Monetization with PayPal Payments PlatformMonetization with PayPal Payments Platform
Monetization with PayPal Payments Platform
 
Accept PayPal in 5 Minutes or Less Using Button Manager and Button Manager API
Accept PayPal in 5 Minutes or Less Using Button Manager and Button Manager APIAccept PayPal in 5 Minutes or Less Using Button Manager and Button Manager API
Accept PayPal in 5 Minutes or Less Using Button Manager and Button Manager API
 
Bill Me Later
Bill Me LaterBill Me Later
Bill Me Later
 
One Gateway for All Kinds of Payments—the Payflow Integration
One Gateway for All Kinds of Payments—the Payflow IntegrationOne Gateway for All Kinds of Payments—the Payflow Integration
One Gateway for All Kinds of Payments—the Payflow Integration
 
Cool New Advances in PayPal Express Checkout
Cool New Advances in PayPal Express CheckoutCool New Advances in PayPal Express Checkout
Cool New Advances in PayPal Express Checkout
 
Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...
Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...
Developing Bullet-Proof Payment Applications for Mobile and Consumer Electron...
 
Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...
Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...
Maximizing PayPal's New Identity Services to Create Seamless and Safe User Ex...
 
Developing Secure Applications and Defending Against Common Attacks
Developing Secure Applications and Defending Against Common AttacksDeveloping Secure Applications and Defending Against Common Attacks
Developing Secure Applications and Defending Against Common Attacks
 
Opening Our Platform to Developers: PayPal's New Application Model and Develo...
Opening Our Platform to Developers: PayPal's New Application Model and Develo...Opening Our Platform to Developers: PayPal's New Application Model and Develo...
Opening Our Platform to Developers: PayPal's New Application Model and Develo...
 
Adaptive Payments: Changing How We Pay with PIN, Pre-approved and Split Payments
Adaptive Payments: Changing How We Pay with PIN, Pre-approved and Split PaymentsAdaptive Payments: Changing How We Pay with PIN, Pre-approved and Split Payments
Adaptive Payments: Changing How We Pay with PIN, Pre-approved and Split Payments
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Payments made easy on Force.com

  • 1. Payments made Easy On Force.com Praveen Alavilli Developer Evangelist, PayPal @ppalavilli Salesforce Developer Meetup 4/1/2010
  • 2. What ? A natural language processor that generates payments processing code based on human language What languages we support ? English Spanish French Hindi
  • 3. Alright let’s get serious 
  • 4.
  • 11.
  • 12.
  • 13. Different kinds of Payments between
  • 14. PayPal The Sender A person or business whose PayPal account is being credited A person or business whose PayPal account is being debited C The Receiver The API CALLER The API access account who makes the Adaptive Payments service calls: usually owned by the developer Actors Involved
  • 15.
  • 18.
  • 36. Pay: Transfer funds between parties. Supports simple, chained, parallel, preapproved payments, etc.
  • 41. CancelPreapproval: Cancel an existing preapproval
  • 42. Refund: Refund a payment (complete, partial, etc.)
  • 43.
  • 44.
  • 45. Allows an API caller to make payments on behalf of a sender within the constraints specified
  • 46. PIN optional for future payments made within the authorized amount
  • 47. Useful for single/multi use, and subscription paymentsC Pre Approval Sample Use Cases: Pay as you use, Micropayments for Digital goods, Subscriptions
  • 48.
  • 49. Future interactions with each transaction can be separate
  • 51. Facilitates multiple use cases: marketplace payments, service fees, multi-merchant checkout, and so on$10 $100 Sender Visibility $40 $50 Sample Use Cases: Payouts, Disbursements, Affiliate fees, MarketPlaces
  • 52.
  • 53. Facilitates multiple use cases: marketplace payments, service fees, multi-merchant checkout, and so on$100 $10 $40 Sender Visibility Primary $50 Sample Use Cases: Multi-Merchant Marketplaces, Gaming platform, Referral programs, Property Management (Rent Payments)
  • 54. Combine Parallel and Preapprovals C Primary AND Pre Approval
  • 55. Combine chained and Preapprovals C AND Pre Approval
  • 56. Sample Interaction Flow A Rental App that allows tenants to pay rent to a property management that splits the payment to the actual owner and the HOA.
  • 57. API WEB Sender Rental App Pay API Pay Key Redirect User to PayPal Return URL User Name = Rental_admin.api Secondary Receiver [2] = Sec Receiver_2@mail.com Password = keep$secret Amount = 50.00 Signature = 23KJHO5AS09I32SDROR Tracking ID = 234235986 Sender Email = john_m@mail.com Cancel URL = www.PayRent.com/home Currency = USD Return URL = www.PayRent.com/apstore Primary Receiver [0] = Prim Receiver@mail.com Amount = 1000.00 Secondary Receiver [1] = Sec Receiver_1@mail.com Amount = 40.00 Request IPN= https://www.Rental.com/IPN Sender Email: john_m@mail.com Receiver Email: PrimReceiver@paypal.com Pay Key = PA-84HK2A57FCOP3RW Response Notification Confidential and Proprietary 18 Confidential and Proprietary 18
  • 58.
  • 59. Account created can be used with any PayPal APIs, including Adaptive Payment APIs
  • 60. Currently supports creation of Personal and Premier accounts. Business account creation to come soon.
  • 64.
  • 66. Use cases for Adaptive Accounts As part of new employee enrollment, business collects information used to create a PayPal account Small Business As part of the onboarding for a buyer and seller, a PayPal account can be created so that the user experience can be localized and personalized Marketplace Create PayPal accounts to enable payments for games, social networking widgets and more Social Media 21
  • 67. PayPal Development Process Submit for application review Get API credentials Go Live Design and build application Create Sandbox account Get APP ID Signup on x.com
  • 68.
  • 69. Takes care of transport and protocol bindings
  • 70. Provides easy way to securely manage API Credentials and common request parameters
  • 71. Supports both Adaptive Payments and Adaptive Accounts API
  • 72. Supports PayPal Sandbox, Beta and Live environments
  • 73.
  • 76. Create PayPal Sandbox Test Accounts
  • 78. Create test accounts (buyer/seller) for Sandbox
  • 81. From CodeShare (package or source code)
  • 86.
  • 89.
  • 90. PPAdaptiveToolkit object with the required API Credentials
  • 91. PPAdaptiveToolkittoolkit = new PPAdaptiveToolkit('SandboxCert');
  • 94. payRequest.CancelUrl = 'https://' + host + '/PayApiTest?MainMessage=cancel';
  • 95. payRequest.ReturnUrl = 'https://' + host + '/PayDetailTest?payKey=${payKey}';
  • 98. Handle the response objectif(payResponse.PaymentExecStatus.equalsIgnoreCase('Created') ) { // send user to paypal for confirmation } else if(payResponse.PaymentExecStatus.equalsIgnoreCase('Completed') ) { // success } else { /*handle error */ }
  • 99. Code Samples – Simple Payment // create request envelope and set the common request parameters object name PPPayRequest request = newPPPayRequest('MyRequestParams', paypalSenderId); // set success and cancel urls request.CancelUrl = 'https://' + host + '/StoreFront?status=cancel'; request.ReturnUrl = 'https://' + host + '/StoreFront?status=success'; // set a note associated with the payment request.Memo = message; // set Receiver info List<PPReceiver> receiverList = new List<PPReceiver>(); PPReceiver receiver1 = newPPReceiver(); // set the receiver email (receiver's PayPal Id) receiver1.email = paypalReceiverId; // set amount to be credited to the receiver's account receiver1.amount = amount; receiverList.Add(receiver1); // set receiver info in the request request.receiverList = receiverList; // create the Adaptive Toolkit object instance w/ API Credentials PPAdaptiveToolkit toolkit = newPPAdaptiveToolkit('SandboxCert'); try { // send the PayRequest using the Adaptive toolkit object PPPayResponse response = toolkit.pay(request); // check the response payment status if ( response.PaymentExecStatus.equalsIgnoreCase('Created') ) { // payment status is 'Created' - send the user to approval page returnPage= toolkit.commitpayment(response.payKey); } elseif( response.PaymentExecStatus.equalsIgnoreCase('Completed') ) { // the payment is 'Completed' (when no approval is required // - returned in case of pre-approvals or implicit approvals) // send the user to the return url returnPage = newpagereference(request.returnUrl); } returnreturnPage; } catch(PPFaultMessageExceptionfaultMsg) { /* handle errors */}
  • 100. Code Sample – Chained/Parallel Payment PPReceiverreceiver1 = newPPReceiver(); // set the receiver email (receiver's PayPal Id) receiver1.email = paypalReceiverId1; // set amount to be credited to the receiver's account receiver1.amount = amount1; // set the primary flag to indicate if it’s a chained (true) or parallel (false) payment receiver1.Primary = true; receiverList.Add(receiver1);   PPReceiverreceiver2 = newPPReceiver(); // set the receiver email (receiver's PayPal Id) receiver1.email = paypalReceiverId2; // set amount to be credited to the receiver's account receiver1.amount = amount2; receiverList.Add(receiver2);    // set receiver info in the request request.receiverList = receiverList;
  • 101. Code Sample – Preapprovals // create request envelope and set the common request parameters object name PPPreapprovalRequestrequest = newPPPreapprovalRequest ('MyRequestParams', paypalSenderId); // set success and cancel urls request.CancelUrl = 'https://' + host + '/StoreFront?status=cancel'; request.ReturnUrl = 'https://' + host + '/StoreFront?status=success'; // set a note associated with the payment request.Memo = message; // set Date of Month when the payment can be made using this preapproval request.DateOfMonth = 1; // set Day of week when the payment can be made using this preapproval request.DayOfWeek = 'WEDNESDAY'; // set the end date request.EndingDate = DateTime.newInstance(2010, 12, 31); // set the max amount per payment request.MaxAmountPerPayment = 10; // set max number of payment made using this preapproval request.MaxNumberOfPayments = 5; // set max number of payments made using this preapproval per period request.MaxNumberOfPaymentsPerPeriod = 1; // set max total payments using this preapproval request.maxTotalAmountOfAllPayment = 100; // set the payment period request.PaymentPeriod = 'DAILY'; // set a request pin to be associated with the preapproval request.PinType = ‘REQUIRED'; // or NOT_REQUIRED request.StartingDate = DateTime.newInstance(2009, 11, 8); // create the Adaptive Toolkit object instance w/ API Credentials PPAdaptiveToolkit toolkit = newPPAdaptiveToolkit('SandboxCert'); try { // send the PayRequest using the Adaptive toolkit object PPPayResponse response = toolkit.preapproval(request); // check the response payment status if ( response.PaymentExecStatus.equalsIgnoreCase('Created') ) { // if the payment status is 'Created' - send the user to approval page returnPage= toolkit.commitpreapproval(response.payKey); } elseif( response.PaymentExecStatus.equalsIgnoreCase('Completed') ) { // if the payment is 'Completed' (when no approval is required // - returned in case of pre-approvals or implicit approvals) // send the user to the return url returnPage = newpagereference(request.returnUrl); } returnreturnPage; } catch(PPFaultMessageExceptionfaultMsg) { /* handle exceptions */ }
  • 102. Going Live Upgrade to a PayPal Business Account Get Verified Obtain Live API Credentials Submit App on X.com for review Follow the Salesforce “How to Publish” guide.
  • 103.
  • 104. Support for creating Business Accounts
  • 105. Support for obtaining Account Verification Status
  • 106.

Notas do Editor

  1. Like what force.com is for Salesforce !
  2. As a developer, the sender and receiver may have many different names, depending on their role and objective. PayPal X Open Payments Platform enables almost any of them.
  3. The API Caller also needs a PayPal Business Account as the application is moving money between multiple parties and could possibly take it’s own cut/commission.
  4. Before we talk more about the toolkit, classes and objects it provides, let’s first take a look at the APIs it supports.