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 and pushing them to a Visa or Mastercard card. Pulling funds from non-Visa cards will be available in the future.
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 blocks:
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
block 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":"john.smith@email.com", "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":"john.smith@email.com" }, "deviceDetails":{ "ipAddress":"<customer's IP address>" } }, "recipientDetails":{ "userTokenId":"<unique customer identifier in merchant system>", "firstName":"RecFirstName", "lastName":"RecLastName", "paymentOption":{ "card":{ "cardNumber":"4761344136141390", "cardHolderName":"test card holder 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": "john.smith@email.com" }, "deviceDetails": { "ipAddress": "<customer's IP address>" } }, "recipientDetails": { "userTokenId": "<unique customer identifier in merchant system>", "firstName": "RecFirstName", "lastName": "RecLastName", "paymentOption": { "card": { "cardNumber": "4761344136141390", "cardHolderName": "test card holder 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
block (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":"john.smith@email.com" }, "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 user 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 will include:
- Under the
senderDetails.payment
block,transactionStatus
: “approved” - Under the
recipientPayoutDetails
block,transactionStatus
: “approved” - In the root
transactionStatus
: “approved”
- Under the
- Two DMNs will be sent: a DMN for the payment transaction and a DMN for the payout transaction.
- In the Control Panel, two transactions will be presented: payment and payout.
P2P payment status is “approved” and payout status is “declined”
- P2P response includes:
- Under the
senderDetails.payment
block,transactionStatus
: “approved” - Under the
senderDetails.voidTransaction
block,transactionStatus
: “approved” - Under the
recipientPayoutDetails
block,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
block,transactionStatus
: “declined” recipientPayoutDetails
block will not return 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
block,transactionStatus
: “approved” - Under
senderDetails.voidTransaction
block,transactionStatus
: “approved” - Under the
recipientPayoutDetails
block,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
block,transactionStatus
: “error” recipientPayoutDetails
block will not return 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.