2.85.118 ProntoPayments v2
Release Date: 09/05/2024
URL: /packaging/installPackage.apexp?p0=04tIU000001E7EP
Upgrade Risks
When upgrading to version 2.71 or higher, make sure to re-save existing gateway records to have the password field encrypted .
Enhancement
Batch Process Payment
When processing Direct Debit payments via the Batch Payment Processing in the ProntoPayments Settings → Scheduler,
If the Payment Transaction’s Payment Status = Success,
If the Gateway = SecurePay,
The Payment Transaction’s Opportunity → Stage is NOT be updated (stays to open)
When processing Bank payments with an Opportunity record via the Batch Payment Processing batch (run batch immediately or by schedule),
If the Opportunity’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the payment processing is successful (not yet settled but successfully added to the gateway portal - waiting to be processed),
The Payment Transaction record of the Opportunity record will be updated where:
Payment Status = Pending
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the payment processing is failed,
The Payment Transaction record of the Opportunity record will be updated where:
Payment Status = Failed
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the Opportunity’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = FALSE,
The Bank payments will NOT be processed
An ASPP Log record will be created where:
Message = The 3D Secure Payments should be enabled to allow support of Direct Debit.
When processing Bank payments with a PPayment record via the Batch Payment Processing batch (run batch immediately or by schedule),
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the payment processing is successful (not yet settled but successfully added to the gateway portal - waiting to be processed),
The PPayment record will be updated where:
Payment Status = Pending
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the payment processing is failed,
The PPayment record will be updated where:
Payment Status = Failed
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = FALSE,
The Bank payments will NOT be processed
An ASPP Log record will be created where:
Message = The 3D Secure Payments should be enabled to allow support of Direct Debit.
Process Payment
When processing a Direct Debit payment via the Process Payment button in an Opportunity record,
If the Payment Transaction’s Payment Status = Success,
If the Gateway = SecurePay,
The Payment Transaction’s Opportunity → Stage is NOT be updated (stays to open)
When processing Bank payments with an Opportunity record via the Process Payment button,
If the Opportunity’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the payment processing is successful (not yet settled but successfully added to the gateway portal - waiting to be processed),
The Payment Transaction record of the Opportunity record will be updated where:
Payment Status = Pending
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the payment processing is failed,
The Payment Transaction record of the Opportunity record will be updated where:
Payment Status = Failed
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the Opportunity’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = FALSE,
The Bank payments will NOT be processed
An error message will display: The 3D Secure Payments should be enabled to allow support of Direct Debit.
When processing Bank payments with a PPayment record via the Process Payment button,
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the payment processing is successful (not yet settled but successfully added to the gateway portal - waiting to be processed),
The PPayment record will be updated where:
Payment Status = Pending
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the payment processing is failed,
The PPayment record will be updated where:
Payment Status = Failed
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = FALSE,
The Bank payments will NOT be processed
An error message will display: The 3D Secure Payments should be enabled to allow support of Direct Debit.
Reusable Component
When processing Bank payments where the Reusable Component class is called,
If the provided Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
Regardless of whether Bank Account details or Customer Reference Number and Token are provided, the Bank payments will be processed in the gateway portal (internally)
After the payment processing,
If the payment processing is successful (not yet settled but successfully added to the gateway portal - waiting to be processed),
A Payment Transaction record will be created where:
Payment Status = Pending
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
The result will be returned with the following values:
Payment Transaction Id = *The newly created Payment Transaction record
Status = Pending
If the payment processing is failed,
A Payment Transaction record will be created where:
Payment Status = Failed
Other fields will be populated based on the parsed response
Multiple ASPP Log records will be created based on the payment process
The result will be returned with the following values:
Payment Transaction Id = *The newly created Payment Transaction record
Status = Failed
If the provided Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = FALSE,
The Bank payments will NOT be processed
The result will be returned with the following values:
Message = The 3D Secure Payments should be enabled to allow support of Direct Debit.
Error Code = 001
Limit = TRUE
Get Payment Status/Batch Get Payment Status
When retrieving the status of the Payment Transaction record via the Get Payment Status button or Batch Get Payment Status batch (run batch immediately or by schedule),
If the Payment Transaction’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the Payment Transaction’s Payment Type = Bank AND Payment ID = EMPTY,
The Payment Transaction record will be updated based on the retrieved details from the gateway portal where:
Payment Status = Based on the retrieved transaction status
Payment ID = Balance Transaction ID
Other fields will be populated based on the parsed response
If the Payment Transaction’s Payment Type = Bank AND Payment ID != EMPTY,
The Payment Transaction record will be updated based on the retrieved details from the gateway portal where:
Payment Status = Based on the retrieved transaction status
Other fields will be populated based on the parsed response
When retrieving the status of the PPayment record via the Get Payment Status button or Batch Get Payment Status batch (run batch immediately or by schedule),
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the PPayment’s Payment Type = Bank AND Payment ID = EMPTY,
The PPayment record will be updated based on the retrieved details from the gateway portal where:
Payment Status = Based on the retrieved transaction status
Payment ID = Balance Transaction ID
Other fields will be populated based on the parsed response
If the PPayment’s Payment Type = Bank AND Payment ID != EMPTY,
The PPayment record will be updated based on the retrieved details from the gateway portal where:
Payment Status = Based on the retrieved transaction status
Other fields will be populated based on the parsed response
When retrieving the settlement date of Payment Transaction records via the Get Payment Transaction Settlement batch (run batch immediately or by schedule),
If the Payment Transaction’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
If the Payment Transaction’s Payment Type = Bank AND Payment ID = EMPTY,
The Payment Transaction record will be updated based on the retrieved details from the gateway portal where:
Payment ID = Balance Transaction ID
Settlement Date (ASPHPP__Settlement_Date__c) = Based on the transaction settlement date
Settlement Date (ASPHPP__SettlementDate__c) = Based on the transaction settlement date
If the Payment Transaction’s Payment Type = Bank AND Payment ID != EMPTY,
The Payment Transaction record will be updated based on the retrieved details from the gateway portal where:
Settlement Date (ASPHPP__Settlement_Date__c) = Based on the transaction settlement date
Settlement Date (ASPHPP__SettlementDate__c) = Based on the transaction settlement date
If the Payment Transaction’s Payment Type = Credit Card,
The Payment Transaction record will be updated based on the retrieved details from the gateway portal where:
Settlement Date (ASPHPP__Settlement_Date__c) = Based on the transaction settlement date
Settlement Date (ASPHPP__SettlementDate__c) = Based on the transaction settlement date
Gateway
When creating/updating a Gateway record manually or via Data Loader,
If Record Type = Stripe,
When saving the Gateway record by clicking the Save button,
If Accept Bank = TRUE,
If Enable 3D Secure Payments = FALSE,
An error message will display: Please enable the 3D Secure Payments to allow support of Direct Debit.
If Enable 3D Secure Payments = TRUE,
If the Multi Currency does NOT contain AUD,
An error message will display: Support AUD currency to allow support of Direct Debit.
If the Multi Currency does contain AUD,
The gateway will be saved successfully
If Accept Bank = FALSE,
The gateway will be saved successfully
Payment Source
When tokenising Bank Account details using a Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
When saving the Payment Source record by clicking the Save button,
The provided Bank Account details will be tokenised (internally)
After the Payment Source record is successfully saved,
The SYSPPReference field is populated based on the returned Payment Method ID from the response
The Token field is populated based on the returned Customer ID from the response
When tokenising Bank Account details using a Stripe gateway record where Name of Remitter (3D Secure Payments) = FALSE,
When saving the Payment Source record by clicking the Save button,
The provided Bank Account details will NOT be tokenised
An error message will display: The 3D Secure Payments should be enabled to allow support of Direct Debit.
The Payment Source record will NOT be saved
Refund
When processing a full Bank payment refund via the Refund Payment button on the Payment Transaction record,
If the Payment Transaction’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
As the Bank payment refund will take a couple of days to be actually refunded, the refund will NOT be directly reflected in the Payment Transaction record
A cloned Opportunity record will be created based on the refunded Opportunity record
The Payment Transaction record will be updated where:
Payment Status = Pending
A Payment Refund record will be created where:
The updated Payment Transaction record where Payment Status = Pending is linked
The cloned Opportunity record is linked
Refund Status = Pending
A Refund Log record will be created where:
The updated Payment Transaction record where Payment Status = Pending is linked
The newly created Payment Refund record is linked
Assuming the Bank payment refund has actually been refunded, retrieve the refund status via the Get Refund Status button on the Payment Refund record under the Payment Transaction record,
If the payment refund processing is successful,
The Payment Transaction record will be updated where:
Payment Status = Refunded
The Payment Refund record will be updated where:
Refund Status = Refunded
If the payment refund processing is failed,
The Payment Transaction record will be updated where:
Payment Status = Failed
The Payment Refund record will be updated where:
Refund Status = Failed
When processing a partial Bank payment refund via the Refund Payment button on the Payment Transaction record,
If the Payment Transaction’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
As the Bank payment refund will take a couple of days to be actually refunded, the refund will NOT be directly reflected in the Payment Transaction record
A cloned Opportunity record will be created based on the refunded Opportunity record
The Payment Transaction record will be updated where:
Payment Status = Pending
A Payment Refund record will be created where:
The updated Payment Transaction record where Payment Status = Pending is linked
The cloned Opportunity record is linked
Refund Status = Pending
A Refund Log record will be created where:
The updated Payment Transaction record where Payment Status = Pending is linked
The newly created Payment Refund record is linked
Assuming the Bank payment refund has actually been refunded, retrieve the refund status via the Get Refund Status button on the Payment Refund record under the Payment Transaction record,
If the payment refund processing is successful,
The Payment Transaction record will be updated where:
Payment Status = Partial Refund
The Payment Refund record will be updated where:
Refund Status = Refunded
If the payment refund processing is failed,
The Payment Transaction record will be updated where:
Payment Status = Failed
The Payment Refund record will be updated where:
Refund Status = Failed
When processing a full Bank payment refund via the Refund Payment button on the PPayment record,
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
As the Bank payment refund will take a couple of days to be actually refunded, the refund will NOT be directly reflected in the PPayment record
The PPayment record will be updated where:
Payment Status = Pending
A PRefund record will be created where:
The updated PPayment record where Payment Status = Pending is linked
Refund Status = Pending
A Refund Log record will be created where:
The updated PPayment record where Payment Status = Pending is linked
The newly created PRefund record is linked
Assuming the Bank payment refund has actually been refunded, retrieve the refund status via the Get Refund Status button on the PRefund record under the PPayment record,
If the payment refund processing is successful,
The PPayment record will be updated where:
Payment Status = Refunded
The PRefund record will be updated where:
Refund Status = Refunded
If the payment refund processing is failed,
The PPayment record will be updated where:
Payment Status = Failed
The PRefund record will be updated where:
Refund Status = Failed
When processing a partial Bank payment refund via the Refund Payment button on the PPayment record,
If the PPayment’s Gateway = Stripe gateway record where Name of Remitter (3D Secure Payments) = TRUE,
As the Bank payment refund will take a couple of days to be actually refunded, the refund will NOT be directly reflected in the PPayment record
The PPayment record will be updated where:
Payment Status = Pending
A PRefund record will be created where:
The updated PPayment record where Payment Status = Pending is linked
Refund Status = Pending
A Refund Log record will be created where:
The updated PPayment record where Payment Status = Pending is linked
The newly created PRefund record is linked
Assuming the Bank payment refund has actually been refunded, retrieve the refund status via the Get Refund Status button on the PRefund record under the PPayment record,
If the payment refund processing is successful,
The PPayment record will be updated where:
Payment Status = Partial Refund
The PRefund record will be updated where:
Refund Status = Refunded
If the payment refund processing is failed,
The PPayment record will be updated where:
Payment Status = Failed
The PRefund record will be updated where:
Refund Status = Failed
Bug Fix
When updating Stripe gateway records where the Name Of Remitter is true
When disabling the 3D Secure payment and saving after hitting a validation in the gateway
The Name Of Remitter will be set to false.
When processing a payment in PPayment Record using Process Payment button
Payment ID will be populated based on gateway response