Pay | Start Apple Pay Session

This page provides information on sending a pay request using Apple Pay. The pay request will be different between mobile and web channels.

Sample Pay Operation for a Web Channel

Apple Pay Request for a Web Channel

When we process the Apple Pay web transaction, we need to send the session URL in the token. In this session URL and when user clicks the button, we receive this URL from the Apple Pay wallet.

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<pay client-id="10064" account="100640">
		<transaction id="9953806" store-card="false">
			<card type-id="15">
				<amount country-id="200" currency-id="840">100</amount>
				<token>https://apple-pay-gateway-cert.apple.com/paymentservices/startSession</token>
			</card>
		</transaction>
		<client-info language="us" version="1.00" platform="HTML5/1.00"/>
	</pay>
</root>

In a web channel request, we need to send the additional header parameter and the host URL in the header as the key name reference. See the example below.

Referer:https://www.mywebsite.com

Apple Pay Response for a Web Channel

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<psp-info id="14" merchant-account="merchant.com.southwest.iphone.qa" type="3">
		<head/>
		<session-data>{ "epochTimestamp":"1675290022945", "expiresAt":"1675293622945", "merchantSessionIdentifier":"SSH07B01881605A4A86B8D6C48AE30ADF4E_916523AAED1343F5BC5815E12BEE9250AFFDC1A17C46B0DE5A943F0F94927C24", "nonce":"9ec5a32f", "merchantIdentifier":"452456647831BC340A7F6E0B6BC8E0E97CADFEAA8B4A240D5F30ABE16F83CDBE", "domainName":"mobile.qa1.southwest.com", "displayName":"UATP8", "signature":"308006092a864886f70d010702a0803080020101310d300b0609608648016503040201308006092a864886f70d0107010000a080308203e330820388a00302010202084c304149519d5436300a06082a8648ce3d040302307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b3009060355040613025553301e170d3139303531383031333235375a170d3234303531363031333235375a305f3125302306035504030c1c6563632d736d702d62726f6b65722d7369676e5f5543342d50524f4431143012060355040b0c0b694f532053797374656d7331133011060355040a0c0a4170706c6520496e632e310b300906035504061302555330593013060e632e310b300906035504061302555302084c304149519d5436300b0609608648016503040201a08193301806092a864886f70d010903310b06092a864886f70d010701301c06092a864886f70d010905310f170d3233303230313232323032325a302806092a864886f70d010934311b3019300b0609608648016503040201a10a06082a8648ce3d040302302f06092a864886f70d01090431220420fa357c6c12b5e72be5f86080284e6f3c416400163792017e01192c3f1b19a836300a06082a8648ce3d04030204483046022100d8594abb4037e3de4d3d2085a7848b6bc5bf41e7f0286417200f7c2844477249022100ec25b6a7be5451bec32ddbf7634693e189e73500903e2b526dc32a72d37a3e67000000000000", "operationalAnalyticsIdentifier":"UATP8:452456647831BC340A7F6E0B6BC8E0E97CADFEAA8B4A240D5F30ABE16F83CDBE", "retries":"0", "pspId":"452456647831BC340A7F6E0B6BC8E0E97CADFEAA8B4A240D5F30ABE16F83CDBE"}</session-data>
		<name>card_holderName</name>
		<auth-token>Auth-Token</auth-token>
		<message language="us"/>
	</psp-info>
	<status code="1009">Payment Initialize with PSP</status>
</root>"

Sample Pay Operation for a Mobile

Apple Pay Request for a Mobile Channel

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<pay account="100691" client-id="10069">
		<transaction store-card="false" id="10044528">
			<card type-id="15">
				<amount country-id="200" currency-id="840">22398</amount>
			</card>
		</transaction>
		<client-info version="10.02" app-version="10.02" sdk-version="2.3.1" language="gb" platform="iOS/15.5">
			<device-id>087E575D-92BD-483A-B1AA-C4F9CDCA5674</device-id>
		</client-info>
	</pay>
</root>

Apple Pay Response for a Mobile Channel

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<psp-info id="14" merchant-account="merchant.com.southwest.iphone.qa" type="3">
		<url method="overlay"/>
		<hidden-fields>
			<card-brands>'MASTERCARD','VISA','DISCOVER','AMEX'</card-brands>
		</hidden-fields>
		<name>card_holderName</name>
		<auth-token>Auth-Token</auth-token>
		<message language="gb"/>
	</psp-info>
	<status code="1009">Payment Initialize with PSP</status>
</root>