Salesforce Certified Integration Architect — Question 53
A business-to-consumer (B2C) enterprise customer has the following use case that involves processing payment from an external payment gateway service in Salesforce.
1. Customer requests Customer Service Representative (CSR) for a Service upgrade.
2. Customer provides credit card details to CSR for payment.
3. CSR submits payment information in Salesforce, and it is processed in an external payment gateway.
4. CSR receives confirmation of payment.
5. CSR upgrades service for customer and confirms customer.
This use case requires the CSR to obtain confirmation of payment before upgrading the service. The integration with the payment gateway needs to be reliable and monitored for audit purposes. The payment gateway service is an external RESTful service that the B2C enterprise customer has subscribed for.
What should an integration architect recommend for this integration?
Answer options
- A. Platform events allow integration to the payment gateway through the exchange of real-time event data; platform events are scalable and secure.
- B. Make a callout to the payment gateway through ESB supporting error handling and logging for audit purposes.
- C. Use External Services feature to integrate payment gateway to Salesforce to ensure real-time updates to the CSR and support post payment processes.
- D. Build a custom Apex callout to external payment gateway service and provide a success message to the CSR; the details of callouts and responses are logged for audit purposes.
Correct answer: B
Explanation
Option B is correct because it emphasizes making a callout to the payment gateway while ensuring proper error handling and logging, which are crucial for monitoring and audit purposes. Other options do not emphasize the necessary reliability and auditing capabilities; for instance, option A talks about platform events, which may not directly handle payment confirmations, while option C, although useful, doesn't focus on the necessary error handling and logging. Option D suggests a custom solution that may not be as robust as using an ESB for error handling.