On This Page
Authorization Service
You can authorize a payment for Samsung Pay using two different types of decryption
methods:
Cybersource
or Merchant. Each decryption method requires a
different set of required API fields. In addition, depending on which card type is used,
different fields are required for requesting the authorization service. Payment Processor | Authorization and Capture Information |
---|---|
Visa Platform Connect | Visa Platform Connect limits authorization and capture
amounts to 999999999999 (twelve 9s). |
Authorizing a Payment with JCB Using Cybersource Decryption
Method
Cybersource
Decryption
MethodThis section provides the following information:
Required Fields for Authorizing a Payment Using JCB and the Cybersource
Decryption Method
Cybersource
Decryption MethodThe following fields are required when submitting an authorization request using the
Cybersource
decryption method:- encryptedPayment_data-set this field to the Base64-encoded value obtained from thepaymentDataproperty of thePKPaymentTokenobject.
- encryptedPayment_descriptor-set this field toRklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=.
- paymentSolution-set this field to008.
Related Information
Authorizing a Payment
- Request the service. Set theccAuthService_runfield totrue, and send the request to one of these endpoints:
- Include the required fields in the request.
- Include optional fields in the request as needed.
- Check the response message to make sure that the request was successful. A value ofACCEPTfor thedecisionfield indicates success. For information about reason codes, see Reason Codes for the Simple Order API.
Example: Cybersource Decryption with JCB
Using the Simple Order API
Cybersource
Decryption with JCB
Using the Simple Order APIAuthorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.121"> <merchantID>demomerchant</merchantID> <merchantReferenceCode>demorefnum</merchantReferenceCode> <billTo> <firstName>Jane</firstName> <lastName>Smith</lastName> <street1>123 Main Street</street1> <city>Small Town</city> <state>CA</state> <postalCode>98765</postalCode> <country>US</country> <email>jsmith@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>5.00</grandTotalAmount> </purchaseTotals> <encryptedPayment> <descriptor>RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=</descriptor> <data>ABCDEFabcdefABCDEFabcdef0987654321234567</data> <encoding>Base64</encoding> </encryptedPayment> <card> <cardType>007</cardType> </card> <ccAuthService run="true"/> <paymentSolution>008</paymentSolution> </requestMessage>
Authorization Response
<c:replyMessage> <c:merchantReferenceCode>demorefnum</c:merchantReferenceCode> <c:requestID>4465840340765000001541</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:token> <c:expirationMonth>07</c:expirationMonth> <c:expirationYear>2025</c:expirationYear> <c:prefix>239845</c:prefix> <c:suffix>2947</c:suffix> </c:token> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>5.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:processorResponse>100</c:processorResponse> <c:reconciliationID>11267051CGJSMQDC</c:reconciliationID> </c:ccAuthReply> </c:replyMessage>
Authorizing a Payment with Mastercard Using Cybersource Decryption
Method
Cybersource
Decryption
MethodThis section provides the following information:
Required Fields for Authorizing a Payment Using Mastercard and the Cybersource Decryption Method
Cybersource
Decryption MethodThe following fields are required when submitting an authorization request using the
Cybersource
decryption method:- ccAuthService_commerceIndicator-set this field tospa.
- encryptedPayment_data
- Set the field to the value that was returned from Samsung Pay in the3ds.datablock as follows:
- Retrieve the payment data from Samsung Pay in JSON Web Encryption (JWE) format.
- Encode it in Base64.
- Add the value to theencryptedPayment_datafield.
- encryptedPayment_descriptor-set this field toRklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=.
- paymentNetworkToken_transactionType-set this field to1.
- paymentSolution-set this field to008.
Related Information
Example: Cybersource Decryption with
Mastercard Using the Simple Order API
Cybersource
Decryption with
Mastercard Using the Simple Order APIAuthorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.121"> <merchantID>demomerchant</merchantID> <merchantReferenceCode>demorefnum</merchantReferenceCode> <billTo> <firstName>James</firstName> <lastName>Smith</lastName> <street1>1295 Charleston Road</street1> <city>Test City</city> <state>CA</state> <postalCode>99999</postalCode> <country>US</country> <email>demo@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>5.00</grandTotalAmount> </purchaseTotals> <ccAuthService run="true"> <commerceIndicator>spa</commerceIndicator> </ccAuthService> <encryptedPayment> <data>ABCDEFabcdefABCDEFabcdef0987654321234567</data> <descriptor>RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=</descriptor> </encryptedPayment> <paymentSolution>008</paymentSolution> <paymentNetworkToken> <transactionType>1</transactionType> </paymentNetworkToken> </requestMessage>
Authorization Response
<c:replyMessage> <c:merchantReferenceCode>demorefnum</c:merchantReferenceCode> <c:requestID>4465840340765000001541</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>5.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:authorizedDateTime>2015-11-03T20:53:54Z</c:authorizedDateTime> <c:processorResponse>100</c:processorResponse> <c:reconciliationID>11267051CGJSMQDC</c:reconciliationID> </c:ccAuthReply> <c:token> <c:prefix>128945</c:prefix> <c:suffix>2398</c:suffix> <c:expirationMonth>08</c:expirationMonth> <c:expirationYear>2021</c:expirationYear> </c:token> </c:replyMessage>
Authorizing a Payment with Visa Using Cybersource Decryption
Method
Cybersource
Decryption
MethodThis section provides the following information:
Required Fields for Authorizing a Payment Using Visa and the Cybersource Decryption Method
Cybersource
Decryption MethodThe following fields are required when submitting an authorization request using the
Cybersource
decryption method:- ccAuthService_commerceIndicator-set this field tointernet.
- encryptedPayment_data
- Set the field to the value that was returned from Samsung Pay in the3ds.datablock as follows:
- Retrieve the payment data from Samsung Pay in JSON Web Encryption (JWE) format.
- Encode it in Base64.
- Add the value to theencryptedPayment_datafield.
- encryptedPayment_descriptor-set this field toRklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=.
- paymentNetworkToken_transactionType-set this field to1.
- paymentSolution-set this field to008.
Related Information
Example: Cybersource Decryption with
Visa Using the Simple Order API
Cybersource
Decryption with
Visa Using the Simple Order APIAuthorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.121"> <merchantID>demomerchant</merchantID> <merchantReferenceCode>demorefnum</merchantReferenceCode> <billTo> <firstName>James</firstName> <lastName>Smith</lastName> <street1>1295 Charleston Road</street1> <city>Test City</city> <state>CA</state> <postalCode>99999</postalCode> <country>US</country> <email>demo@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>5.00</grandTotalAmount> </purchaseTotals> <ccAuthService run="true"> <commerceIndicator>internet</commerceIndicator> </ccAuthService> <encryptedPayment> <data>ABCDEFabcdefABCDEFabcdef0987654321234567</data> <descriptor>RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=</descriptor> </encryptedPayment> <paymentSolution>008</paymentSolution> <paymentNetworkToken> <transactionType>1</transactionType> </paymentNetworkToken> </requestMessage>
Authorization Response
<c:replyMessage> <c:merchantReferenceCode>demorefnum</c:merchantReferenceCode> <c:requestID>4465840340765000001541</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>5.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:authorizedDateTime>2015-11-03T20:53:54Z</c:authorizedDateTime> <c:processorResponse>100</c:processorResponse> <c:reconciliationID>11267051CGJSMQDC</c:reconciliationID> </c:ccAuthReply> <c:token> <c:prefix>294672</c:prefix> <c:suffix>4397</c:suffix> <c:expirationMonth>08</c:expirationMonth> <c:expirationYear>2021</c:expirationYear> </c:token> </c:replyMessage>
Authorizing a Payment with JCB Using Merchant Decryption Method
This section provides the following information:
Required Fields for Authorizing a Payment Using JCB and the Merchant Decryption
Method
The following fields are required when submitting an authorization request using the
Merchant decryption method:
- ccAuthService_cavv-set this field to the 3-D Secure cryptogram of the payment network token.
- card_accountNumber-set this field to the payment network token value.
- card_expirationMonth-set this field to the payment network token expiration month value.
- card_expirationYear-set this field to the payment network token expiration year value.
- ccAuthService_eciRaw-set this field to the ECI value contained in the Samsung Pay reply message.
- ccAuthService_networkTokenCryptogram-set this field to the network token cryptogram.
- paymentNetworkToken_transactionType-set this field to1.
- paymentSolution-set this field to008.
Related Information
Example: Merchant Decryption with JCB Using the Simple
Order API
Authorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.121"> <merchantID>demomerchant</merchantID> <merchantReferenceCode>demorefnum</merchantReferenceCode> <billTo> <firstName>Jane</firstName> <lastName>Smith</lastName> <street1>123 Main Street</street1> <city>Small Town</city> <state>CA</state> <postalCode>98765</postalCode> <country>US</country> <email>jsmith@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>5.00</grandTotalAmount> </purchaseTotals> <card> <accountNumber>xxxx11111111xxxx</accountNumber> <expirationMonth>12</expirationMonth> <expirationYear>2020</expirationYear> <cvNumber>123</cvNumber> <cardType>007</cardType> </card> <ccAuthService run="true"> <cavv>ABCDEFabcdefABCDEFabcdef0987654321234567</cavv> <eciRaw>5</eciRaw> </ccAuthService> <paymentNetworkToken> <transactionType>1</transactionType> </paymentNetworkToken> <paymentSolution>008</paymentSolution> </requestMessage>
Authorization Response
<c:replyMessage> <c:merchantReferenceCode>demorefnum</c:merchantReferenceCode> <c:requestID>4465840340765000001541</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>5.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:authorizedDateTime>2015-11-03T20:53:54Z</c:authorizedDateTime> <c:processorResponse>100</c:processorResponse> <c:reconciliationID>11267051CGJSMQDC</c:reconciliationID> </c:ccAuthReply> </c:replyMessage>
NVP Request
merchantID=demomerchant merchantReferenceCode=demorefnum billTo_firstName=Jane billTo_lastName=Smith billTo_street1=123 Main Street billTo_city=Small Town billTo_state=CA billTo_postalCode=98765 billTo_country=US billTo_email=jsmith@example.com purchaseTotals_currency=USD purchastTotals_grandTotalAmount=5.00 card_accountNumber=xxxx00202036xxxx card_expirationYear=2020 card_cvnNumber=123 cardType=007 ccAuthService_cavv=ABCDEFabcdefABCDEFabcdef0987654321234567 ccAuthService_eciRaw=5paymentNetworkToken_requestorID=987654321plokijuhygtfrdeswapaymentNetworkToken_transactionType=1 paymentSolution=008
NVP Response
merchantReferenceCode=demorefnum requestID=4465840340765000001541 decision=accept reasonCode=100 requestToken=Ahj/7wSR5C/4Icd2fdAKakGLadfg5535r/ghx3Z90AoBj3u purchaseTotals_currency=USD ccAuthReply_reasonCode=100 ccAuthReply_amount=5.00 ccAuthReply_authorizationCode=888888 ccAuthReply_avsCode=X ccAuthReply_avsCodeRaw=I1 ccAuthReply_authorizedDateTime=2015-11-03T20:53:54Z ccAuthReply_processorResponse=100 ccAuthReply_reconciliationID=11267051CGJSMQDC
Authorizing a Payment with Mastercard Using Merchant Decryption Method
This section provides the following information:
Required Fields for Authorizing a Payment Using Mastercard and the Merchant Decryption
Method
The following fields are required when submitting an authorization request using the
Merchant decryption method:
- card_accountNumber-set this field to the payment network token value.
- card_expirationMonth-set this field to the payment network token expiration month value.
- card_expirationYear-set this field to the payment network token expiration year value.
- ccAuthService_commerceIndicator- set this field tospa.
- ccAuthService_networkTokenCryptogram-set this field to the network token cryptogram.
- paymentNetworkToken_transactionType-set this field to1.
- paymentSolution-set this field to008.
- ucaf_authenticationData–set this field to the 3-D Secure cryptogram of the payment network token.
- ucaf_collectionIndicator-set this field to2.
Related Information
Example: Merchant Decryption with Mastercard Using the
Simple Order API
Authorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.121"> <merchantID>demomerchant</merchantID> <merchantReferenceCode>demorefnum</merchantReferenceCode> <billTo> <firstName>James</firstName> <lastName>Smith</lastName> <street1>1295 Charleston Road</street1> <city>Test City</city> <state>CA</state> <postalCode>99999</postalCode> <country>US</country> <email>demo@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>5.00</grandTotalAmount> </purchaseTotals> <card> <accountNumber>xxxx55555555xxxx</accountNumber> <expirationMonth>12</expirationMonth> <expirationYear>2020</expirationYear> </card> <ucaf> <authenticationData>ABCDEFabcdefABCDscdef0987654321234567</authenticationData> <collectionIndicator>2</collectionIndicator> </ucaf> <ccAuthService run="true"> <commerceIndicator>spa</commerceIndicator> </ccAuthService> <paymentNetworkToken> <transactionType>1</transactionType> </paymentNetworkToken> <paymentSolution>008</paymentSolution> </requestMessage>
Authorization Response
<c:replyMessage> <c:merchantReferenceCode>demorefnum</c:merchantReferenceCode> <c:requestID>4465840340765000001541</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>5.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:authorizedDateTime>2015-11-03T20:53:54Z</c:authorizedDateTime> <c:processorResponse>100</c:processorResponse> <c:reconciliationID>11267051CGJSMQDC</c:reconciliationID> </c:ccAuthReply> </c:replyMessage>
Authorizing a Payment with Visa Using Merchant Decryption Method
This section provides the following information:
Required Fields for Authorizing a Payment Using Visa and the Merchant Decryption
Method
The following fields are required when submitting an authorization request using the
Merchant decryption method:
- ccAuthService_cavv-set this field to the 3-D Secure cryptogram of the payment network token.
- card_accountNumber-set this field to the payment network token value.
- card_expirationMonth-set this field to the payment network token expiration month value.
- card_expirationYear-set this field to the payment network token expiration year value.
- ccAuthService_eciRaw-for JCB transactions, set this field to the ECI value contained in the Samsung Pay reply message.
- ccAuthService_commerceIndicator-set this field tointernet.
- ccAuthService_networkTokenCryptogram-set this field to the network token cryptogram.
- paymentNetworkToken_transactionType-set this field to1.
- paymentSolution-set this field to008.
Related Information
Example: Merchant Decryption with Visa Using the Simple
Order API
Authorization Request
<requestMessage xmlns="urn:schemas-cybersource-com:transaction-data-1.121"> <merchantID>demomerchant</merchantID> <merchantReferenceCode>demorefnum</merchantReferenceCode> <billTo> <firstName>James</firstName> <lastName>Smith</lastName> <street1>1295 Charleston Road</street1> <city>Test City</city> <state>CA</state> <postalCode>99999</postalCode> <country>US</country> <email>demo@example.com</email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>5.00</grandTotalAmount> </purchaseTotals> <card> <accountNumber>xxxx10000000xxxx</accountNumber> <expirationMonth>12</expirationMonth> <expirationYear>2020</expirationYear> </card> <ccAuthService run="true"> <cavv>ABCDEFabcdefABCDEFabcdef0987654321234567</cavv> <commerceIndicator>internet</commerceIndicator> </ccAuthService> <paymentNetworkToken> <transactionType>1</transactionType> </paymentNetworkToken> <paymentSolution>008</paymentSolution> </requestMessage>
Authorization Response
<c:replyMessage> <c:merchantReferenceCode>demorefnum</c:merchantReferenceCode> <c:requestID>4465840340765000001541</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>5.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:authorizedDateTime>2015-11-03T20:53:54Z</c:authorizedDateTime> <c:processorResponse>100</c:processorResponse> <c:reconciliationID>11267051CGJSMQDC</c:reconciliationID> </c:ccAuthReply> </c:replyMessage>