Introduction
Post Pay allows merchants to authorize a specific dollar amount up front, which a buying consumer cannot exceed while making smaller purchases on the merchant’s website. This allows the merchant to ensure that the consumer’s credit card is valid and has the funds available. After the initial authorization, merchants track how much of the authorized amount the consumer has spent on their smaller purchases/sessions. When the consumer is either finished buying or has spent the entire amount authorized, an on-demand capture request is sent to finalize the transaction.
Post Pay is designed for webcam (“cam”) sites or similar services where a merchant allows a consumer to initiate multiple buying sessions on the site, but prefers to finalize just one overall transaction, to minimize risk impact.
Post Pay Authorization
Post Pay is available only for Digital Purchase and Dynamic price points. Recurring or One Time price points are not eligible for Post Pay. Price points using Post Pay are not eligible for Dynamic Multi-Currency (DMC).
To enable Post Pay, please contact [email protected].
Making the Authorization Request
Once your price point is enabled for Post Pay, set up a connection string to request the authorization, via server-to-server Post, as follows:
(The eticketid, purchaseid and amounts below are examples only; you will enter your own values for those parameters).
<form method="post" action="https://transactions.segpay.com/PostPay/PostPayAuth/">
<input type="hidden" name="eticketid" value="109595:13925">
<input type="hidden" name="purchaseid" value="847263533">
<input type="hidden" name="amount" value="20.00">
<input type="submit" value="Submit">
</form>
Note: When you contact Segpay to enable Post Pay, please also include the IP addresses of all servers where Post Pay Authorization and Capture requests will originate, so they can be whitelisted for security purposes. If you were set up for Segpay’s One Click service in the past, then it’s possible we already have your IPs whitelisted. Please check with tech support to make sure.
Definition of Parameters:
Parameter |
Definition |
Eticketid |
Identifies the payment package, price point(s) and website associated with the purchase. The eticketid value above is an example only; get your actual eticketid from the button code in your payment package. |
Purchaseid |
The Purchase ID associated with the original membership purchase (your auth request must be within 6 months of the original purchase). |
Amount |
The amount you want to authorize for this consumer.
For Digital Purchases, the amounts in the auth request and in your post pay-enabled price point must match.
For Dynamic Pricing, the amount in the auth must be within the minimum and maximum amounts specified in your price point.
|
Success Response
If an authorization is successful, you will receive a response string similar to the following example:
{"AuthorizationCode":"OK:0","Message":"Transaction Authorized","PurchaseId":847263533,"TransactionId":867449597,"WasSuccessful":true}
Error Conditions and Responses
You will receive an error response if an authorization is not successful, for example in one of the following scenarios:
You attempt to authorize a different amount than what is in the price point (for Digital Purchase price points only)
The following error response is sent:
{"AuthorizationCode":"N/A","Message":"The requested authorization amount, 6.89, is not valid.","PurchaseId":0,"TransactionId":0,"WasSuccessful":false}
Your Digital Purchase or Dynamic price point is not enabled for Post Pay
The following error response is sent:
{"AuthorizationCode":"N/A","Message":"This price point is not enabled for Post Pay processing.","PurchaseId":0,"TransactionId":0,"WasSuccessful":false}
You attempt an authorization for a price point which is not eligible for Post Pay (e.g., a One Time or Recurring price point)
The following error response is sent:
{"AuthorizationCode":"N/A","Message":"This price point type is not eligible for Post Pay processing.","PurchaseId":0,"TransactionId":0,"WasSuccessful":false}
Postback Example
If you have a Transaction post back set up, it will be triggered by Post Pay authorizations. There is no need to make changes to your post back string, as long as it includes the parameters action, transactiontype and stage. They will be populated according to the example below (of a postback following a successful authorization).
No Email Sent
No email is sent to the consumer following a successful Post Pay authorization.
Post Pay Capture
You can send a Post Pay capture request for the full amount authorized, or a partial amount. However, only one capture request can be made. Additional requests will return an error. Note that if you do not initiate a post pay capture, the original authorization request will remain open and the consumer won’t be charged.
Making the Capture Request
Once your price point is enabled for Post Pay, make your Post request to capture all or part of the authorized amount, via server-to-server call, as follows:
(The eticketid, purchaseid, transactionid and amounts below are examples only; you will enter your own values for those parameters).
<form method="post" action="https://transactions.segpay.com/PostPay/PostPayCapture/">
<input type="hidden" name="eticketid" value="109595:13925">
<input type="hidden" name="purchaseid" value="847263533">
<input type="hidden" name="transactionid" value="867449600">
<input type="hidden" name="amount" value="10.00">
<input type="submit" value="Submit CAPTURE">
</form>
Definition of Parameters:
Parameter |
Definition |
Eticketid |
Identifies the payment package, price point(s) and website associated with the purchase. The eticketid value above is an example only; get your actual eticketid from the button code in your payment package. |
Purchaseid |
The Purchase ID associated with the original membership purchase. |
Transactionid |
The Transaction ID associated with the original authorization. See “Success Response” under Post Pay Authorization section above. |
Amount |
The amount you want to capture. |
Success Response
If an capture is successful, you will receive a response string similar to the following example:
{"AuthorizationCode":"OK:0","Message":"Transaction Captured","PurchaseId":847263533,"TransactionId":867449597,"WasSuccessful":true}
Note that a new Transaction ID is created for the capture request.
Error Conditions and Responses
You will receive an error response if the capture is not successful, for example in one of the following scenarios: (Note: if you trigger one of these errors, try updating your capture request accordingly, and re-try).
You attempt to capture a transaction that was already captured
Results:
{"AuthorizationCode":"N/A","Message":"This transaction has already been captured by Post Pay Processing.","PurchaseId":0,"TransactionId":0,"WasSuccessful":false}
You attempt to capture an amount greater than the original amount authorized
Results:
{"AuthorizationCode":"N/A","Message":"This transaction cannot be captured as the capture amount is greater than the authorized amount.","PurchaseId":0,"TransactionId":0,"WasSuccessful":false}
You attempt to capture a transaction that had been declined
Results:
{"AuthorizationCode":"N/A","Message":"This transaction cannot be captured for Post Pay processing as the intial authorization was declined.","PurchaseId":0,"TransactionId":0,"WasSuccessful":false}
Postback Example
Following is an example of a postback after a successful capture:
Email Sent
An email is sent to the consumer after a successful capture request. The email will include the Purchase ID, Transaction ID and amount captured. Like a normal transaction receipt email, it can be customized.
Post Pay Reporting
You can find important details about your Post Pay Transactions in the Post Pay Report, found under the Performance Reporting menu of the Segpay Merchant Portal. The report includes each Auth and Capture transaction. Click the Transaction ID for any Capture in the report to find its associated Post Pay Authorization (see image below).
Post Pay transactions are also included in Segpay’s Transaction Detail Report.
Please let us know any thoughts or suggestions you have about Post Pay or anything else, by emailing [email protected].