A customer can pay from the Messages conversation. Your order system still needs to know whether payment completed. The provider's messaging integration and your payment processing must agree on that result.
Must every provider support Apple Pay?
Yes. Apple's required features include sending an Apple Pay payment request through the bot and API path.
Apple makes the agent-triggered path optional. Confirm how your support flow will create the request, especially if a person needs to initiate it manually.
Ask the provider to demonstrate your intended purchase flow. Approval to support the message type does not establish that your merchant account and processor are integrated.
What should the provider connect to the conversation?
Connect the payment request to a gateway that handles your merchant session and payment processing.
Apple's integration tutorial demonstrates a provider-hosted gateway. Agree who operates that gateway and who maintains its connection to your payment processor.
The gateway must obtain a new merchant session for each payment request. A cached session can produce an invalid payment request on the customer's device.
For the merchant-session request, set initiative to messaging. Set initiativeContext to the publicly reachable HTTPS gateway URL. Supply only the registered hostname as domainName, with no scheme, path or trailing slash.
These values identify different parts of the integration. Substituting the gateway URL for the bare domain can prevent the Messages payment flow from working.
Which merchant details do I need to prepare?
Prepare the merchant identifier, payment certificates and verified domain with whoever manages payments for your business.
| Item | What it enables |
|---|---|
| Apple Pay merchant identifier | Associates the Messages business account with the merchant |
| Payment Processing certificate | Allows Apple Pay payment processing for that merchant |
| Merchant Identity certificate | Authenticates the merchant-session request |
| Verified merchant domain | Allows the transaction to use the registered domain |
Enter the merchant identifier under Optional Integrations > Apple Pay in Apple Business Register. Copy the identifier exactly from the developer account.
Each Messages business account can use one merchant identifier. The same merchant identifier can serve several Messages business accounts.
The Payment Processing certificate expires after 25 months. Assign responsibility for renewal so certificate expiry does not interrupt payments.
How do I confirm that payment succeeded?
Confirm the transaction in your payment system before telling the customer that the order is paid. The message reports device state, while the payment system records whether money moved.
An incoming message carries a payment-related state. Apple says to verify the transaction through the payment system. Treat that message as a prompt to check the processor's result.
Test both a completed payment and a failed payment before launch. Confirm that only the completed payment releases the order.
Handle refunds through a workflow outside Messages for Business, as Apple's integration guidance requires.
What should I agree before implementation starts?
- Confirm how the provider creates Apple Pay requests for your intended support flow.
- Assign ownership of the gateway, merchant credentials, domain verification and certificate renewal.
- Require a fresh merchant session for every payment request.
- Use the payment system's result to confirm orders and handle failures.
In short
Confirm the payment integration.
An approved provider must support Apple Pay messages. Agree how its implementation connects to your payment system.
Prepare the merchant setup.
The integration needs your merchant identifier, certificates and verified domain before Apple Pay can accept transactions.
Use a fresh merchant session.
Create a new merchant session for each payment request. Reusing one can leave the customer with an invalid request.
Confirm payment in the payment system.
An incoming Messages reply does not establish that the transaction completed. Check the processor's result before confirming the order.