Overview
Nuvei offers new functionality to merchants operating person-to-person (P2P) payments, in which funds are pulled from one card account and subsequently pushed to another individual’s account. For example, loans from person to person.
P2P is currently available for pulling funds from a Visa card or a Mastercard card and pushing them to a Visa or Mastercard card. P2P does not support Google Pay and Apple Pay.
This guide describes how to implement P2P payments using Nuvei’s Server-to-Server REST API.
REST API Implementation
Nuvei has created a new single endpoint dedicated to P2P payment /p2pPayment
that combines both pull and push functionality in a single request.
You only need to integrate into /p2pPayment
.
If the push transaction is declined, the pull transaction is automatically reversed.
This functionality is relevant for non-3DS payments, 3DS payments, and payments with external MPI.
- To start the P2P payment flow, send the
/getSessionToken
request. - In comparison to a regular payment flow, the
/p2pPayment
request is divided into two main classes:
senderDetails
class containing:
-
userTokenId
paymentOption.card
class containing:cardNumber
,cardHolderName
,expirationMonth
,expirationYear
,CVV
,threeD
, etc.paymentOption.card.threeD
class containing:methodCompletionInd
,version
,notificationURL
,merchantURL
,platformType
,v2AdditionalParams
,browserDetails
,account
, etc.billingAddress
class containing:firstName
,lastName
,address
, etc.deviceDetails
class containing:ipAddress
, etc.
recipientDetails
class containing:
-
userTokenId
firstName
lastName
paymentOption.card
class containing:cardNumber
,cardHolderName
,expirationMonth
,expirationYear
,CVV
Non-3D-Secure Payment
Example Non-3DS /p2pPayment
Request
{ "sessionToken":"<sessionToken from /getSessionToken>", "merchantId":"<your merchantId>", "merchantSiteId":"<your merchantSiteId>", "clientRequestId":"<unique request ID in merchant system>", "currency":"USD", "amount":"100", "senderDetails":{ "userTokenId":"<unique customer identifier in your system>", "paymentOption":{ "card":{ "cardNumber":"4000027891380961", "cardHolderName":"CL-BRW1", "expirationMonth":"12", "expirationYear":"25", "CVV":"217" } }, "billingAddress":{ "firstName":"John", "lastName":"Smith", "address":"22 Main Street", "cell":"6175553333", "phone":"6175551414", "zip":"02460", "city":"Botson", "country":"US", "state":"MA", "email":"[email protected]", "county":"Suffolk", "addressMatch":"N", "addressLine2":"Billing Addres Line 2", "addressLine3":"Billing Addres Line 3", "homePhone":"6175551414", "workPhone":"6175551414" }, "deviceDetails":{ "deviceType":"TABLET", "deviceName":"iPad", "deviceOS":"iOS", "browser":"safari", "ipAddress":"<customer's IP address>" } }, "recipientDetails":{ "userTokenId":"<unique customer identifier in your system>", "firstName":"RecFirstName", "lastName":"RecLastName", "paymentOption":{ "card":{ "cardNumber":"4123407439043051", "cardHolderName":"Rec Cardname", "expirationMonth":"12", "expirationYear":"25", "CVV":"675" } } }, "timeStamp":"<YYYYMMDDHHmmss>", "checksum":"<calculated checksum>" }
Example Non-3DS /p2pPayment
Response
{ "internalRequestId":707872868, "status":"SUCCESS", "errCode":0, "reason":"", "merchantId":"850502379161961074", "merchantSiteId":"229708", "version":"1.0", "clientRequestId":"20230702155935", "sessionToken":"2a321522-5515-45d2-8f06-d392663a310e", "orderId":"374448258", "operationStatus":"APPROVED", "senderDetails":{ "payment":{ "userTokenId":"<unique request ID in merchant system>", "paymentOption":{ "userPaymentOptionId":"90422508", "card":{ "ccCardNumber":"4****1390", "bin":"476134", "last4Digits":"1390", "ccExpMonth":"12", "ccExpYear":"25", "acquirerId":"19", "cvv2Reply":"", "avsCode":"", "cardType":"Credit", "cardBrand":"VISA", "issuerBankName":"", "issuerCountry":"SG", "isPrepaid":"false", "threeD":{ } }, "paymentAccountReference":"f4iK2pnudYKvTALGdcwEzqj9p4" }, "transactionStatus":"APPROVED", "gwErrorCode":0, "gwExtendedErrorCode":0, "issuerDeclineCode":"", "issuerDeclineReason":"", "transactionType":"Sale", "transactionId":"711000000024399711", "externalTransactionId":"", "authCode":"111426", "customData":"", "fraudDetails":{ "finalDecision":"Accept" }, "externalSchemeTransactionId":"" } }, "recipientPayoutDetails":{ "userTokenId":"<unique request ID in merchant system>", "transactionStatus":"APPROVED", "gwErrorCode":0, "gwExtendedErrorCode":0, "userPaymentOptionId":"92210198", "externalTransactionId":"", "transactionId":"711000000024399712", "cardData":{ "acquirerId":"19", "visaDirect":"NO" } } }
3D-Secure v2 Payment
Example 3DS v2 /p2pPayment
Request
{ "sessionToken":"<sessionToken from /getSessionToken>", "merchantId":"<your merchantId>", "merchantSiteId":"<your merchantSiteId>", "clientRequestId":"<unique request ID in merchant system>", "currency":"USD", "amount":"200", "senderDetails":{ "relatedTransactionId":"<transactionId returned from initPayment>", "userTokenId":"<unique customer identifier in merchant system>", "paymentOption":{ "card":{ "cardNumber":"4000020951595032", "cardHolderName":"CL-BRW1", "expirationMonth":"12", "expirationYear":"25", "CVV":"217", "threeD":{ "methodCompletionInd":"U", "version":"2.1.0", "notificationURL":"< notificationURL > ", "merchantURL":"<merchantURL>", "platformType":"02", "v2AdditionalParams":{ "challengeWindowSize":"05" }, "browserDetails":{ "acceptHeader":"text/html,application/xhtml+xml", "ip":"192.168.1.11", "javaEnabled":"TRUE", "javaScriptEnabled":"TRUE", "language":"EN", "colorDepth":"48", "screenHeight":"400", "screenWidth":"600", "timeZone":"0", "userAgent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47" } } } }, "billingAddress":{ "country":"US", "email":"[email protected]" }, "deviceDetails":{ "ipAddress":"<customer's IP address>" } }, "recipientDetails":{ "userTokenId":"<unique customer identifier in merchant system>", "firstName":"RecFirstName", "lastName":"RecLastName", "paymentOption":{ "card":{ "cardNumber":"4761344136141390", "cardHolderName":"test cardholder details", "expirationMonth":"12", "expirationYear":"25", "CVV":"675" } } }, "timeStamp":"<YYYYMMDDHHmmss>", "checksum":"<calculated checksum>" }
Example 3DS v2 /p2pPayment
Response
{ "internalRequestId":707876068, "status":"SUCCESS", "errCode":0, "reason":"", "merchantId":"850502379161961074", "merchantSiteId":"229708", "version":"1.0", "clientRequestId":"20230702161208", "sessionToken":"fce32c34-ccab-4267-ac58-427ba4a1fb0e", "orderId":"374448488", "operationStatus":"REDIRECT", "senderDetails":{ "payment":{ "userTokenId":"<unique customer identifier in merchant system>", "paymentOption":{ "userPaymentOptionId":"91785768", "card":{ "ccCardNumber":"4****5032", "bin":"400002", "last4Digits":"5032", "ccExpMonth":"12", "ccExpYear":"25", "acquirerId":"19", "cvv2Reply":"", "avsCode":"", "cardType":"Credit", "cardBrand":"VISA", "issuerBankName":"River Valley Credit Union", "issuerCountry":"GB", "isPrepaid":"false", "threeD":{ "threeDFlow":"1", "acsUrl":"https://3dsn.sandbox.safecharge.com/ThreeDSACSEmulatorChallenge/api/ThreeDSACSChallengeController/ChallengePage?eyJub3RpZmljYXRpb25VUkwiOiJodHRwczovL2RvY3MubnV2ZWkuY29tLzNEc2ltdWxhdG9yL25vdGlmaWNhdGlvblVybC5waHAiLCJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImRlYTc1YThhLTk5YzctNDUzNS1iN2E0LWU3ODhkZDFmN2Y1NiIsImFjc1RyYW5zSUQiOiIyMjRkYjIwZi0yYzA5LTRmNWYtOTkyOS1lNDcwYTA3YWE2MjQiLCJkc1RyYW5zSUQiOiIyZGJjNWM0Zi1lM2Y2LTRkOTEtYjFiOC00ZTkwNzc4Y2Y2MGMiLCJkYXRhIjpudWxsLCJNZXNzYWdlVmVyc2lvbiI6IjIuMS4wIn0=", "eci":"7", "version":"2.1.0", "whiteListStatus":"", "cavv":"", "acsChallengeMandated":"Y", "cReq":"eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImRlYTc1YThhLTk5YzctNDUzNS1iN2E0LWU3ODhkZDFmN2Y1NiIsImFjc1RyYW5zSUQiOiIyMjRkYjIwZi0yYzA5LTRmNWYtOTkyOS1lNDcwYTA3YWE2MjQiLCJjaGFsbGVuZ2VXaW5kb3dTaXplIjoiMDUiLCJtZXNzYWdlVHlwZSI6IkNSZXEiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIn0", "authenticationType":"01", "cardHolderInfoText":"", "sdk":{ "acsSignedContent":"Rm5EQjc3Z0tzVmVNUTFiVXZmemM=" }, "result":"C", "acsTransID":"224db20f-2c09-4f5f-9929-e470a07aa624", "dsTransID":"2dbc5c4f-e3f6-4d91-b1b8-4e90778cf60c", "threeDReasonId":"", "isExemptionRequestInAuthentication":"0", "challengePreferenceReason":"12", "flow":"challenge", "acquirerDecision":"ExemptionRequest", "decisionReason":"NoPreference" } } }, "transactionStatus":"REDIRECT", "gwErrorCode":0, "gwExtendedErrorCode":0, "issuerDeclineCode":"", "issuerDeclineReason":"", "transactionType":"Auth3D", "transactionId":"711000000024399820", "externalTransactionId":"", "authCode":"", "customData":"", "externalSchemeTransactionId":"" } } }
Example 3DS v2 /p2pPayment
Request with Liability Shift
{ "sessionToken": "<sessionToken from /getSessionToken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientRequestId": "<unique request ID in merchant system>", "timeStamp": "<YYYYMMDDHHmmss>", "checksum": "<calculated checksum>", "currency": "USD", "amount": "200", "senderDetails": { "relatedTransactionId": "<transactionId returned from previous payment request>", "userTokenId": "<unique customer identifier in merchant system>", "paymentOption": { "card": { "cardNumber": "4000020951595032", "cardHolderName": "CL-BRW1", "expirationMonth": "12", "expirationYear": "25", "CVV": "217" } }, "billingAddress": { "firstName": "John", "lastName": "Smith", "address": "22 Main Street", "city": "Boston", "country": "MA", "email": "[email protected]" }, "deviceDetails": { "ipAddress": "<customer's IP address>" } }, "recipientDetails": { "userTokenId": "<unique customer identifier in merchant system>", "firstName": "RecFirstName", "lastName": "RecLastName", "paymentOption": { "card": { "cardNumber": "4761344136141390", "cardHolderName": "test cardholder details", "expirationMonth": "12", "expirationYear": "25", "CVV": "675" } } } }
Example 3DS v2 /p2pPayment
Response with Liability Shift
{ "internalRequestId":707876068, "status":"SUCCESS", "errCode":0, "reason":"", "merchantId":"850502379161961074", "merchantSiteId":"229708", "version":"1.0", "clientRequestId":"20230702161208", "sessionToken":"fce32c34-ccab-4267-ac58-427ba4a1fb0e", "orderId":"374448488", "operationStatus":"REDIRECT", "senderDetails":{ "payment":{ "userTokenId":"<unique customer identifier in merchant system>", "paymentOption":{ "userPaymentOptionId":"91785768", "card":{ "ccCardNumber":"4****5032", "bin":"400002", "last4Digits":"5032", "ccExpMonth":"12", "ccExpYear":"25", "acquirerId":"19", "cvv2Reply":"", "avsCode":"", "cardType":"Credit", "cardBrand":"VISA", "issuerBankName":"River Valley Credit Union", "issuerCountry":"GB", "isPrepaid":"false", "threeD":{ "threeDFlow":"1", "acsUrl":"https://3dsn.sandbox.safecharge.com/ThreeDSACSEmulatorChallenge/api/ThreeDSACSChallengeController/ChallengePage?eyJub3RpZmljYXRpb25VUkwiOiJodHRwczovL2RvY3MubnV2ZWkuY29tLzNEc2ltdWxhdG9yL25vdGlmaWNhdGlvblVybC5waHAiLCJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImRlYTc1YThhLTk5YzctNDUzNS1iN2E0LWU3ODhkZDFmN2Y1NiIsImFjc1RyYW5zSUQiOiIyMjRkYjIwZi0yYzA5LTRmNWYtOTkyOS1lNDcwYTA3YWE2MjQiLCJkc1RyYW5zSUQiOiIyZGJjNWM0Zi1lM2Y2LTRkOTEtYjFiOC00ZTkwNzc4Y2Y2MGMiLCJkYXRhIjpudWxsLCJNZXNzYWdlVmVyc2lvbiI6IjIuMS4wIn0=", "eci":"7", "version":"2.1.0", "whiteListStatus":"", "cavv":"", "acsChallengeMandated":"Y", "cReq":"eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImRlYTc1YThhLTk5YzctNDUzNS1iN2E0LWU3ODhkZDFmN2Y1NiIsImFjc1RyYW5zSUQiOiIyMjRkYjIwZi0yYzA5LTRmNWYtOTkyOS1lNDcwYTA3YWE2MjQiLCJjaGFsbGVuZ2VXaW5kb3dTaXplIjoiMDUiLCJtZXNzYWdlVHlwZSI6IkNSZXEiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIn0", "authenticationType":"01", "cardHolderInfoText":"", "sdk":{ "acsSignedContent":"Rm5EQjc3Z0tzVmVNUTFiVXZmemM=" }, "result":"C", "acsTransID":"224db20f-2c09-4f5f-9929-e470a07aa624", "dsTransID":"2dbc5c4f-e3f6-4d91-b1b8-4e90778cf60c", "threeDReasonId":"", "isExemptionRequestInAuthentication":"0", "challengePreferenceReason":"12", "flow":"challenge", "acquirerDecision":"ExemptionRequest", "decisionReason":"NoPreference" } } }, "transactionStatus":"REDIRECT", "gwErrorCode":0, "gwExtendedErrorCode":0, "issuerDeclineCode":"", "issuerDeclineReason":"", "transactionType":"Auth3D", "transactionId":"711000000024399820", "externalTransactionId":"", "authCode":"", "customData":"", "externalSchemeTransactionId":"" } } }
External MPI P2P Payment
If you use an external 3D-Secure MPI (Merchant Plugin) provider to process your 3D-Secure authentications, then you can use the 3D-Secure authentication values received from them to complete the payment processing with Nuvei. For details, refer to 3DS External MPI.
To process a P2P payment, send a /p2pPayment
request and include the relevant 3D-Secure authentication values received from the external MPI provider in an externalMpi
class (located under senderDetails.paymentOption.card.threeD
) as shown in the example below.
Example of External MPI /p2pPayment
Request
{ "sessionToken":"<sessionToken from /getSessionToken>", "merchantId":"<your merchantId>", "merchantSiteId":"<your merchantSiteId>", "clientRequestId":"<unique request ID in merchant system>", "currency":"USD", "amount":"100", "senderDetails":{ "userTokenId":"<unique customer identifier in merchant system>", "paymentOption":{ "card":{ "cardNumber":"4000020951595032", "cardHolderName":"CL-BRW1", "expirationMonth":"12", "expirationYear":"25", "CVV":"217", "threeD":{ "externalMpi":{ "eci":"5", "threeDProtocolVersion":"2", "cavv":"ejJRWG9SWWRpU2I1M21DelozSXU=", "dsTransID":"d8dd306c-8fb5-4590-bb35-3131516b2b00" } } } }, "billingAddress":{ "country":"US", "email":"[email protected]" }, "deviceDetails":{ "ipAddress":"<customer's IP address>" } }, "recipientDetails":{ "userTokenId":"blkakadsf", "firstName":"RecFirstName", "lastName":"RecLastName", "paymentOption":{ "userPaymentOptionId":"<ID of a previously stored payment option>" } }, "timeStamp":"<YYYYMMDDHHmmss>", "checksum":"<calculated checksum>" }
Example of External MPI /p2pPayment
Response
{ "internalRequestId":707900128, "status":"SUCCESS", "errCode":0, "reason":"", "merchantId":"850502379161961074", "merchantSiteId":"229708", "version":"1.0", "clientRequestId":"20230702170739", "sessionToken":"928f043d-6083-44e1-a528-aae1422c058d", "orderId":"374454148", "operationStatus":"APPROVED", "senderDetails":{ "payment":{ "userTokenId":"GabiTest90811", "paymentOption":{ "userPaymentOptionId":"92212638", "card":{ "ccCardNumber":"4****5032", "bin":"400002", "last4Digits":"5032", "ccExpMonth":"12", "ccExpYear":"25", "acquirerId":"19", "cvv2Reply":"", "avsCode":"", "cardType":"Credit", "cardBrand":"VISA", "issuerBankName":"River Valley Credit Union", "issuerCountry":"GB", "isPrepaid":"false", "threeD":{ "eci":"5", "whiteListStatus":"", "cavv":"ejJRWG9SWWRpU2I1M21DelozSXU=", "result":"", "acsTransID":"", "dsTransID":"d8dd306c-8fb5-4590-bb35-3131516b2b00", "threeDReasonId":"", "challengeCancelReasonId":"", "challengeCancelReason":"", "isLiabilityOnIssuer":"1", "challengePreferenceReason":"" } } }, "transactionStatus":"APPROVED", "gwErrorCode":0, "gwExtendedErrorCode":0, "issuerDeclineCode":"", "issuerDeclineReason":"", "transactionType":"Sale", "transactionId":"711000000024401007", "externalTransactionId":"", "authCode":"111197", "customData":"", "fraudDetails":{ "finalDecision":"Accept" }, "externalSchemeTransactionId":"" } }, "recipientPayoutDetails":{ "userTokenId":"blkakadsf", "transactionStatus":"APPROVED", "gwErrorCode":0, "gwExtendedErrorCode":0, "userPaymentOptionId":"90420488", "externalTransactionId":"", "transactionId":"711000000024401008", "cardData":{ "acquirerId":"19", "visaDirect":"NO" } } }
DMNs
After the transaction is processed, the merchant receives a DMN (sent to the notificationUrl
parameter you can provide in the request), which includes the result of the transaction.
Sale Transaction DMN
...'ppp_status=OK&Status=APPROVED&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=39161731&userid=W00E6LPTDRWA&merchant_unique_id=695701003&customData=Custom+Data+Inserted+By+Darin%21&productId=NA&first_name=Zilsijihrw&last_name=Jgethizxrr&email=mhsbg.xxnbx%40udapl.rg¤cy=EUR&clientUniqueId=695701003&cardType=Credit&isPrepaid=false&cardIssuerCountry=GB&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=340689+Billing+Str.&address2=&country=Brazil&state=&city=Billing+City&zip=48957&phone1=359888526527&phone2=&phone3=&client_ip=FE80%3A0000%3A0000%3A0000%3A0202%3AB3FF%3AFE1E%3A8329&nameOnCard=CL-BRW1&cardNumber=4****1010&bin=410923&noCVV=&acquirerId=103&acquirerBank=Nuvei+Acquirer+-+Visa&expMonth=12&expYear=25&Token=cAAxAG8AMABQAEYARgBuADAAZAAwAEYAbgB2AFkANAB1AEsAOABdAHwAYABzAEUANAArAFoAbwBQAHMAKwBkAFoAPQBvAFkAMwBxAHUAdAAxAEYAUAA1ACwAJgBOAGMALgAyAHYAMwA%3D&tokenId=68121598&AuthCode=090309&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=126006&merchant_status=&action=&requestVersion=&message=APPROVED&merchantLocale=&unknownParameters=&payment_method=cc_card&ID=&merchant_id=2502136204546424962&responseTimeStamp=2023-05-15.20%3A33%3A32&buyButtonProductId=&webMasterId=BRT1MU83D0C4&appliedPromotions=&uniqueCC=rrRSfZ%2Bc8L4EILxuj2y%2BZIgzc88%3D&transactionType=Sale&externalEmail=&cardCompany=Visa&user_token_id=W00E6LPTDRWA&userPaymentOptionId=2152911161&TransactionID=2110000000009448586&externalAccountDescription=nameOnCard%3ACL-BRW1&finalFraudDecision=Accept&fraudScore=0&totalAmount=10.23&dynamicDescriptor=Darin+Cashier+API&item_name_1=NA&item_number_1=&item_amount_1=10.23&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&houseNumber=&customCurrency=&externalToken_blockedCard=&externalToken_cardAcquirerId=&externalToken_cardAcquirerName=&externalToken_cardBin=&externalToken_cardBrandId=&externalToken_cardBrandName=&externalToken_cardExpiration=&externalToken_cardLength=&externalToken_cardMask=&externalToken_cardName=&externalToken_cardTypeId=&externalToken_cardTypeName=&externalToken_clubName=&externalToken_creditCompanyId=&externalToken_creditCompanyName=&externalToken_extendedCardType=&externalToken_Indication=&externalToken_tokenValue=&externalToken_tokenProvider=&ECIRaw=&upoRegistrationDate=20230515&type=DEPOSIT&clientRequestId=BE0E0XA5I&relatedTransactionId=&recipientFirstName=RecFirstName&recipientLastName=RecLastName&lastFourDigits=1010&responsechecksum=8a6f462bbfae75cb2cc8fe6211ce31bb&advanceResponseChecksum=a9911976f1ce14f4f09c514687ea6bb8',
Credit Transaction DMN
...'ppp_status=OK&Status=APPROVED&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=39161751&userid=UA4C9QTFSBFH&merchant_unique_id=695701003&customData=Custom+Data+Inserted+By+Darin%21&productId=&first_name=&last_name=&email=¤cy=EUR&clientUniqueId=695701003&cardType=Credit&isPrepaid=false&cardIssuerCountry=HK&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=&address2=&country=&state=&city=&zip=&phone1=&phone2=&phone3=&client_ip=&nameOnCard=Rec+Cardname&cardNumber=4****2837&bin=476118&noCVV=&acquirerId=103&expMonth=12&expYear=25&Token=ZgBlAG8ARgBQAEYARgAwAG4ARgBGAG4AMAA5ADAANABXAGQAdwBMAEgAXwAvAD4ALAAzAHkAagAwADMAaAB7AG4AbABwADwAUgBdAC4ASgBbACsALQBwADYAUABtAGsAQQB0ACMAMwA%3D&tokenId=235679744&AuthCode=038500&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=126006&merchant_status=&action=&requestVersion=&message=APPROVED&merchantLocale=&unknownParameters=&payment_method=cc_card&ID=&merchant_id=2502136204546424962&responseTimeStamp=2023-05-15.20%3A33%3A35&buyButtonProductId=&webMasterId=&appliedPromotions=&uniqueCC=2PPBmpX%2B13hTjulYHScnWlxr4G8%3D&transactionType=Credit&externalEmail=&cardCompany=Visa&user_token_id=UA4C9QTFSBFH&userPaymentOptionId=2152911151&TransactionID=2110000000009448587&externalAccountDescription=nameOnCard%3ARec+Cardname&totalAmount=10.23&dynamicDescriptor=Darin+Cashier+API&feeAmount=&houseNumber=&customCurrency=&externalToken_blockedCard=&externalToken_cardAcquirerId=&externalToken_cardAcquirerName=&externalToken_cardBin=&externalToken_cardBrandId=&externalToken_cardBrandName=&externalToken_cardExpiration=&externalToken_cardLength=&externalToken_cardMask=&externalToken_cardName=&externalToken_cardTypeId=&externalToken_cardTypeName=&externalToken_clubName=&externalToken_creditCompanyId=&externalToken_creditCompanyName=&externalToken_extendedCardType=&externalToken_Indication=&externalToken_tokenValue=&externalToken_tokenProvider=&ECIRaw=&upoRegistrationDate=20230515&type=DEPOSIT&clientRequestId=BE0E0XA5I&relatedTransactionId=&lastFourDigits=2837&responsechecksum=0cbe6a8e6f93e3802b428d434e3cfea1&advanceResponseChecksum=a0b742c0d77829f736053e9fa001f8c9',
Void Transaction DMN
...'ppp_status=OK&Status=APPROVED&ExErrCode=0&ErrCode=0&errApmCode=0&errApmDescription=&errScCode=0&errScDescription=&Reason=&ReasonCode=0&PPP_TransactionID=39161791&userid=DCOR9SJ5KRO3&merchant_unique_id=695701003&customData=Custom+Data+Inserted+By+Darin%21&productId=NA&first_name=Zilsijihrw&last_name=Jgethizxrr&email=mhsbg.xxnbx%40udapl.rg¤cy=EUR&clientUniqueId=695701003&cardType=Credit&isPrepaid=false&cardIssuerCountry=GB&customField1=&customField2=&customField3=&customField4=&customField5=&customField6=&customField7=&customField8=&customField9=&customField10=&customField11=&customField12=&customField13=&customField14=&customField15=&invoice_id=&address1=340689+Billing+Str.&address2=&country=Brazil&state=&city=Billing+City&zip=48957&phone1=359888526527&phone2=&phone3=&client_ip=FE80%3A0000%3A0000%3A0000%3A0202%3AB3FF%3AFE1E%3A8329&nameOnCard=CL-BRW1&cardNumber=4****1010&bin=410923&noCVV=&acquirerId=103&expMonth=12&expYear=25&Token=MgBHAFEAUAAwAEYAUAAwAFAAbgBGAEYAUAA2ADUAbgBKAGwAbgBwADEANQA1AHAAKwA1AHkAOgBhACkAJwBEAG4AbQBaADMAUwBqAGQAbQA%2BAG8AVQA0AEIAZgBpACkAWQAoAFQAMwA%3D&tokenId=1607873278&AuthCode=062747&AvsCode=&Cvv2Reply=&shippingCountry=&shippingState=&shippingCity=&shippingAddress=&shippingZip=&shippingFirstName=&shippingLastName=&shippingPhone=&shippingCell=&shippingMail=&total_discount=0.00&total_handling=0.00&total_shipping=0.00&total_tax=0.00&buyButtonProductBundleId=&merchant_site_id=126006&merchant_status=&action=&requestVersion=&message=APPROVED&merchantLocale=&unknownParameters=&payment_method=cc_card&ID=&merchant_id=2502136204546424962&responseTimeStamp=2023-05-15.21%3A03%3A36&buyButtonProductId=&webMasterId=YHXQX0MZIC2E&appliedPromotions=&uniqueCC=rrRSfZ%2Bc8L4EILxuj2y%2BZIgzc88%3D&transactionType=Void&externalEmail=&cardCompany=Visa&user_token_id=DCOR9SJ5KRO3&userPaymentOptionId=2152911201&TransactionID=2110000000009448605&externalAccountDescription=nameOnCard%3ACL-BRW1&totalAmount=10.23&dynamicDescriptor=MerchantSiteRestApiDescriptorDarin&item_name_1=NA&item_number_1=&item_amount_1=10.23&item_quantity_1=1&item_discount_1=0.00&item_handling_1=0.00&item_shipping_1=0.00&feeAmount=&houseNumber=&customCurrency=&externalToken_blockedCard=&externalToken_cardAcquirerId=&externalToken_cardAcquirerName=&externalToken_cardBin=&externalToken_cardBrandId=&externalToken_cardBrandName=&externalToken_cardExpiration=&externalToken_cardLength=&externalToken_cardMask=&externalToken_cardName=&externalToken_cardTypeId=&externalToken_cardTypeName=&externalToken_clubName=&externalToken_creditCompanyId=&externalToken_creditCompanyName=&externalToken_extendedCardType=&externalToken_Indication=&externalToken_tokenValue=&externalToken_tokenProvider=&ECIRaw=&upoRegistrationDate=20230516&type=DEPOSIT&clientRequestId=A3D9BK2TU&relatedTransactionId=2110000000009448603&lastFourDigits=1010&responsechecksum=5f139839f84de0faf06ede8966ce4523&advanceResponseChecksum=a3aa9a2a0f0b587b4717318ff56f8bf0',
P2P Payment Scenarios
There are five possible scenarios of the P2P payment.
P2P payment and payout status is “approved”
- Full payment is performed.
- P2P response includes:
- Under the
senderDetails.payment
class,transactionStatus
: “approved” - Under the
recipientPayoutDetails
class,transactionStatus
: “approved” - In the root
transactionStatus
: “approved”
- Under the
- Two DMNs are sent: a DMN for the payment transaction and a DMN for the payout transaction.
- In the Control Panel, two transactions are presented: payment and payout.
P2P payment status is “approved” and payout status is “declined”
- P2P response includes:
- Under the
senderDetails.payment
class,transactionStatus
: “approved” - Under the
senderDetails.voidTransaction
class,transactionStatus
: “approved” - Under the
recipientPayoutDetails
class,transactionStatus
: “decline” - In the root
transactionStatus
: “declined”
- Under the
- Three DMNs is sent: a DMN for the payment transaction and a DMN for the payout and for the void transaction.
- In the Control Panel three transactions is presented: payment, payout, and a void.
P2P payment status is “declined”
- P2P response includes:
- Under the
senderDetails.payment
class,transactionStatus
: “declined” recipientPayoutDetails
class is not returned in the response.- In the root
transactionStatus
: “declined”
- Under the
- One DMN is sent: a DMN for the payment transaction.
- In the Control Panel only a payment transaction is presented.
P2P payment status is “approved” and payout status is “error”
- P2P response includes:
- Under the
senderDetails.payment
class,transactionStatus
: “approved” - Under
senderDetails.voidTransaction
class,transactionStatus
: “approved” - Under the
recipientPayoutDetails
class,transactionStatus
: “error” - In the root
transactionStatus
: “error”
- Under the
- Three DMN is sent: DMN for the payment transaction and a DMN for the payout and for the void transaction.
- In the Control Panel three transactions is presented: payment, payout and a void.
P2P payment status is “error”
- P2P response includes:
- Under the
senderDetails.payment
class,transactionStatus
: “error” recipientPayoutDetails
class is not returned in the response- In the root
transactionStatus
: “error”
- Under the
- One DMN is sent: a DMN for the payment transaction.
- In the Control Panel one transactions is presented: payment.