
Gateway Developer Guide and Reference 07 January 2014 157
Payflow Header Parameters
Posting Transactions Directly Without the Payflow SDK
C
Payflow Message Protocol Headers
In addition to the Payflow parameters that you pass in your request, you must set the request
headers described in the following table.
Required Payflow Headers
Header Name Description
X-VPS-REQUEST-ID (Required) A unique identifier for each request, whether the request is a single
name-value transaction or an XMLPay 2.0 document with multiple
transactions. This identifier is associated with all the transactions in that
particular request.
X-VPS-REQUEST-ID is made up of 1 to 32 printable characters. You must
provide the X-VPS-REQUEST-ID value in the transaction request. The server
uses the X-VPS-REQUEST-ID to check for duplicate transaction requests.
When a transaction request is received, the server checks the requests table to
see if the X-VPS-REQUEST-ID has been used before by this merchant.
If the X-VPS-REQUEST-ID has been used before, the server views it as a retry
transaction and the transaction is treated as a duplicate. The response to the
original transaction request is returned and “DUPLICATE=1” is appended to the
response indicating that this transaction is a duplicate. In Manager, you will see
these DUPLICATE transactions with a TENDER type of “N”.
IMPORTANT: If you send in a NEW transaction with a previously used X-
VPS-REQUEST-ID, the server ignores the new data and returns
the response to the original transaction associated with that X-
VPS-REQUEST-ID.
It is VERY IMPORTANT that you check for DUPLICATE=1 and if you receive
it and the transaction is not a re-attempt of the original request of a failed
transaction, you must change the Request ID.
If the X-VPS-REQUEST-ID has not been used before, the server stores the X-
VPS-REQUEST-ID to ensure that the X-VPS-REQUEST-ID is not reused and
then runs the associated transactions. Duplicate checking is designed for short-
term retries (a few minutes to a few hours after the original transaction). The X-
VPS-REQUEST-ID is stored for a minimum of 7 to 8 days; however, retries
should not be sent so long after the original transaction.
NOTE: Any transaction with an ID older than 8 days will be treated as a new
transaction.
The X-VPS-REQUEST-ID check is only available if the database is up and
available. If for some reason the database is down, transactions (authorizations
and sales) will continue to be processed as normal; however, DUPLICATE=-1
(negative one) will be returned to alert you that the database is down and there
is no duplicate check being performed.
NOTE: Buyer Authentication: E-Verify Enrollment, Z-Validate Authentication
transactions and PayPal Express Checkout: SetExpressCheckout and
GetExpressCheckout transactions do not use duplicate suppression and
will not return
DUPLICATE=1
Komentarze do niniejszej Instrukcji