EditSyntax
<dlog:PayPalHandler id={controlID} PayPalIdentityToken={token} PayPalEmailAccount={PayPay email account} Mode={Live,Test,Elite}
TargetObject={Opportunity,Asset} RecordType={Target record typeID} OpportunityStage={Opportunity stage name}
TransactionIDField={Field Name} TransactionTypeField={Field Name} PaymentTypeField={Field Name}
PaymentStatus={Field Name} Invoice={Field Name} ItemNumber={Field Name} ItemName={Field Name}
Quantity={Field Name} PaymentGross={Field Name} PaymentFee={Field Name}
PayerEmail={Field Name} PayerFirstName={Field Name} PayerLastName={Field Name}
PayerStreetAddress={Field Name} PayerCity={Field Name} PayerState={Field Name} PayerZipCode={Field Name}
PayerCountry={Field Name} PayerAddressStatus={Field Name}
PayerStatus={Field Name} VerifySign={Field Name} NotifyVersion={Field Name}>
</dlog:PayPalHandler>
EditUsage
Handles responses from
PayPal Instant Payment Notifications (IPN) and records transactions in Salesforce.
Examples include creating Closed/Won opportunities for online donations or event registrations. Creating Asset records upon purchase of a product or service.
EditAttributes
ID: (Required) A unique identifier for the control.
PayPalIdentityToken: (Required) See
PayPal PDT Configuration for acquiring the PayPal identity token.
PayPalEmailAccount: (Required) This must be set to the email that is registered for your PayPal account.
ValidationUrl: (Optional) Default="https://www.paypal.com/cgi-bin/webscr" for production transactions. For testing,use
needs test Url
Mode: (Default=Live) Determines whether transactions are assumed to be processed from a live PayPal gateway (Mode="Live"), the PayPal test Sandbox (Mode="Test") or the EliteWeaver.co.uk test server (Mode="Elite").
TargetObject: (Required) The object type to be created upon validation of a successful PayPal transactions. Most commonly this is "Opportunity". "Asset" is also supported.
RecordType: The TargetObject record type. For donation or membership Opportunities, enter the record type ID for these types.
OpportunityStage: default="Won". Override with any valid stage name.
Field Maps: PayPal returns a number of fields describing the transaction. The PayPalHandler supports declarative mapping of these fields to any field on the Target Object. The fields starting with 'Payer' are assumed to be Contact fields and equivalent default fields are used if not defined.
EditHow It Works
When a customer makes a payment to you, PayPal will post a notification to your i-Dialogue server at a URL you specify. Typically this URL will look like http://www.yourdomain.com/PayPalHandler.aspx and this control will be defined in a dialogue script editor on this page. Included in the PayPal notification will be all of your customer's payment information (e.g. customer name, amount) as well as a piece of encrypted code. When your i-Dialogue webserver receives a notification, it will then post the information, including the encrypted code, back to a secure PayPal URL. PayPal will authenticate the transaction by checking the encrypted string. This post-back of the IPN data to PayPal prevents "spoofing," so you can be sure that the IPN came from PayPal. Upon verification, PayPal will send confirmation of its validity back to your server.
Note: To activate Instant Payment Notification, you will need to enter the URL at which you would like to receive the notification posts from your Profile.
After you have activated Instant Payment Notification, your i-Dialogue server will be sent a notification every time you receive a payment, this notification will be sent as a hidden "FORM POST" to the URL you specified, and will include all of the payment information. The FORM variables for the notification are listed at the bottom of this page.
Once the payment transaction has been validate, your i-Dialogue webserver will then post the payment to your CRM system and create corresponding records.
EditOpportunity Field Mapping
The PayPal transaction fields are mapped to the following Opportunity fields when TargetObject=Opportunity
EditExample
<dlog:PayPalHandler id="PayHandlerID" TargetRecord="Opportunity"></dlog:PayPalHandler>