Search: 
Available in: PAYPAL
IPN Component [PayPal Integrator V3]

Properties   Methods   Events   Configuration Settings  

The IPN component is used to validate an Instant Payment Notification, to make sure it is not fraudulent and was actually sent by PayPal.

NOTE: What follows is a very short description of the component interfaces. For more information, please consult the help files that come with the respective package.

Remarks

The IPN component can be used by the merchant to verify that a received Instant Payment Notification did indeed come from PayPal. PayPal will post the Instant Payment Notification to the merchant's web site indicated in their PayPal Profile.

When an Instant Payment Notification is received, simply pass the posted data to the FillFormVars method to automatically parse it and store it into the FormVars collection. Then call the VerifyIPN method. The Response property will then indicate whether the IPN was sent by PayPal ("VERIFIED") or was fraudulent ("INVALID").

After the Instant Payment Notification has been verified, it is parsed into properties which contain vital transaction details, such as the Payer's email, shipping address, the item sold, payment amount, etc, to further process the transaction (i.e. Ship the item, automatically send a login/password, or update a database).

The following code shows how to verify an Instant Payment Notification received from PayPal:

   
component.FillFormVars(Request.Form())
component.VerifyIPN()
If (component.Response = "VERIFIED") Then
  ProcessOrder() ' Process the order
Else
  LogError() ' Log the error and ignore this fraudulent IPN.
End If

If the programming language you are using does not allow you to request the entire form as shown above, you must manually parse the IPN, as shown below:

   
Enumeration en = request.getParameterNames();
while (en.hasMoreElements()){
  String paramName = (String) en.nextElement();
  String paramValue = request.getParameter(paramName);
  component.addFormVar(paramName, paramValue);
}
component.verifyIPN();
if (component.getResponse().equals("VERIFIED")) {
  processOrder(); // Process the order
} else {
  logError(); // Log the error and ignore this fraudulent IPN.
}

Property List


The following is the full list of the properties of the component with short descriptions. Click on the links for further details.

AddressThe address of the buyer.
FirewallA set of properties related to firewall access.
FormVarsForm variables for the current request.
IdleThe current status of the component.
ItemNameName of item purchased.
ItemNumberIdentification or product number associated with the item purchased.
MemoNote entered by customer when paying for item.
PayerDetails about the payer are described here.
PaymentPayment contains details about the payment.
ProxyA set of properties related to proxy access.
QuantityQuantity of items purchased.
RecipientEmailPrimary email address of the payment recipient (the seller).
ResponseResponse to the verification.
SSLAcceptServerCertInstructs the component to unconditionally accept the server certificate that matches the supplied certificate.
SSLCertThe certificate to be used during SSL negotiation.
SSLServerCertThe server certificate for the last established connection.
TimeoutA timeout for the component.
TransactionIdId of the transaction for which the Instant Payment Notification was sent.
TransactionTypeThe type of transaction.
URLURL to which an IPN verification request is sent.

Method List


The following is the full list of the methods of the component with short descriptions. Click on the links for further details.

AddFormVarAdds a form variable and the corresponding value.
ConfigSets or retrieves a configuration setting.
DoEventsProcesses events from the internal message queue.
FillFormVarsThis is used to fill the FormVars property.
GetValueReturns the value of the specified form variable.
InterruptInterrupt the current method.
ResetReset the internal state of the component and all properties to their default values.
VerifyIPNVerifies the IPN received by the merchant.

Event List


The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.

ErrorInformation about errors during data delivery.
SSLServerAuthenticationFired after the server presents its certificate to the client.
SSLStatusShows the progress of the secure connection.

Configuration Settings


The following is a list of configuration settings for the component with short descriptions. Click on the links for further details.

AcceptEncodingUsed to tell the server which types of content encodings the client supports
AllowHTTPCompressionThis property enables HTTP compression for receiving data
AuthorizationThe Authorization string to be sent to the server
EncodeURLIf set to true the URL will be encoded by the component
GetOn302RedirectIf set to true the component will perform a GET on the new location
HTTPVersionThe version of HTTP used by the component
IfModifiedSinceA date determining the maximum age of the desired document
KeepAliveDetermines whether the HTTP connection is closed after completion of the request
MaxHeadersInstructs component to save the amount of headers specified that are returned by the server after a Header event has been fired
MaxHTTPCookiesInstructs component to save the amount of cookies specified that are returned by the server when a SetCookie event is fired
ProxyAuthorizationThe authorization string to be sent to the proxy server
ProxyAuthSchemeThe authorization scheme to be used for the proxy
ProxyPasswordA password if authentication is to be used for the proxy
ProxyPortPort for the proxy server (default 80)
ProxyServerName or IP address of a proxy server (optional)
ProxyUserA user name if authentication is to be used for the proxy
TransferredDataLimitThe maximum number of incoming bytes to be stored by the component
UsePlatformHTTPClientWhether or not to use the platform HTTP client
UserAgentInformation about the user agent (browser)
UseWinInetIf set, the WinInet API is used for retrieving the URL
UseWinInetCookiesControls whether to send and accept cookies when making HTTP requests through WinInet
MaxLineLengthThe maximum amount of data to accumulate when no EOL is found
FirewallAutoDetectTells the component whether or not to automatically detect and use firewall system settings, if available
FirewallHostName or IP address of firewall (optional)
FirewallListenerIf true, the component binds to a SOCKS firewall as a server (IPPort only)
FirewallPasswordPassword to be used if authentication is to be used when connecting through the firewall
FirewallPortThe TCP port for the FirewallHost;
FirewallUserA user name if authentication is to be used connecting through a firewall
FirewallTypeDetermines the type of firewall to connect through
TcpNoDelayWhether or not to delay when sending packets
ReuseSSLSessionDetermines if the SSL session is reused
SSLCipherStrengthThe minimum cipher strength used for bulk encryption
SSLEnabledProtocolsUsed to enable/disable the supported security protocols
SSLProviderThe name of the security provider to use
SSLSecurityFlagsFlags that control certificate verification
OpenSSLCADirThe path to a directory containing CA certificates
OpenSSLCAFileName of the file containing the list of CA's trusted by your application
OpenSSLCipherListA string that controls the ciphers to be used by SSL
OpenSSLPrngSeedDataThe data to seed the pseudo random number generator (PRNG)
AbsoluteTimeoutDetermines whether timeouts are inactivity timeouts or absolute timeouts
FirewallDataUsed to send extra data to the firewall
InBufferSizeThe size in bytes of the incoming queue of the socket
OutBufferSizeThe size in bytes of the outgoing queue of the socket
CodePageThe system code page used for Unicode to Multibyte translations (Windows/COM only)

| About | Privacy Policy | Terms of Use |
© Copyright 2010 /n software inc.