Nuvei REST gateway guide
Adding a Nuvei REST gateway
To add a Nuvei Gateway
curl https://core.spreedly.com/v1/gateways.xml \
-u '{environment_key}:{access_secret}' \
-H 'Content-Type: application/xml' \
-d '<gateway>
<gateway_type>nuvei</gateway_type>
<merchant_id>Your merchant id</merchant_id>
<merchant_site_id>Your merchant site id</merchant_site_id>
<secret_key>Your secret key</secret_key>
</gateway>'
<gateway>
<token>2FB23SDPYZ997SPM9NGNM8BFN0</token>
<gateway_type>nuvei</gateway_type>
<name>Nuvei</name>
<description nil="true"/>
<merchant_profile_key nil="true"/>
<sub_merchant_key nil="true"/>
<characteristics>
<supports_purchase type="boolean">true</supports_purchase>
<supports_authorize type="boolean">true</supports_authorize>
<supports_capture type="boolean">true</supports_capture>
<supports_credit type="boolean">true</supports_credit>
<supports_general_credit type="boolean">true</supports_general_credit>
<supports_void type="boolean">true</supports_void>
<supports_adjust type="boolean">false</supports_adjust>
<supports_verify type="boolean">true</supports_verify>
<supports_reference_purchase type="boolean">false</supports_reference_purchase>
<supports_purchase_via_preauthorization type="boolean">false</supports_purchase_via_preauthorization>
<supports_offsite_purchase type="boolean">false</supports_offsite_purchase>
<supports_offsite_authorize type="boolean">false</supports_offsite_authorize>
<supports_offsite_synchronous_purchase type="boolean">false</supports_offsite_synchronous_purchase>
<supports_offsite_synchronous_authorize type="boolean">false</supports_offsite_synchronous_authorize>
<supports_3dsecure_purchase type="boolean">false</supports_3dsecure_purchase>
<supports_3dsecure_authorize type="boolean">false</supports_3dsecure_authorize>
<supports_3dsecure_2_mpi_purchase type="boolean">false</supports_3dsecure_2_mpi_purchase>
<supports_3dsecure_2_mpi_authorize type="boolean">false</supports_3dsecure_2_mpi_authorize>
<supports_store type="boolean">true</supports_store>
<supports_remove type="boolean">false</supports_remove>
<supports_fraud_review type="boolean">false</supports_fraud_review>
<supports_network_tokenization type="boolean">false</supports_network_tokenization>
<supports_populate_mit_fields type="boolean">true</supports_populate_mit_fields>
<supports_inquire_by_gateway_transaction_id type="boolean">false</supports_inquire_by_gateway_transaction_id>
<supports_inquire_by_order_id type="boolean">false</supports_inquire_by_order_id>
<supports_transaction_retry type="boolean">false</supports_transaction_retry>
<supports_stored_stored_credentials type="boolean">false</supports_stored_stored_credentials>
<supports_stored_credentials type="boolean">true</supports_stored_credentials>
<supports_card_scheme_ntid type="boolean">true</supports_card_scheme_ntid>
</characteristics>
<credentials>
</credentials>
<gateway_settings>
</gateway_settings>
<gateway_specific_fields>
<gateway_specific_field>user_token_id</gateway_specific_field>
<gateway_specific_field>is_partial_approval</gateway_specific_field>
<gateway_specific_field>related_transaction_id</gateway_specific_field>
<gateway_specific_field>save_payment_method</gateway_specific_field>
</gateway_specific_fields>
<payment_methods>
<payment_method>credit_card</payment_method>
<payment_method>bank_account</payment_method>
<payment_method>apple_pay</payment_method>
<payment_method>google_pay</payment_method>
</payment_methods>
<state>retained</state>
<redacted type="boolean">false</redacted>
<sandbox type="boolean">false</sandbox>
<mode>default</mode>
<created_at type="dateTime">2024-10-31T15:19:34Z</created_at>
<updated_at type="dateTime">2024-10-31T15:19:34Z</updated_at>
</gateway>
To learn more about creating and managing gateways in our Marketplace, review the Gateway user guide. For gateways not included in the Marketplace, review the steps below.
Create a gateway
Visit your Connections area to review all gateways and add new ones. When creating your gateways, select the gateway name and authentication mode (if prompted) before completing required fields. Select ☑️Sandbox to create a gateway in Sandbox mode, for processing test card data and transactions in your Spreedly environment.
Gateway Specific Fields
When interacting with a Nuvei gateway to run transactions, there are several gateway specific fields you can specify.
When making any request you can specify user_token_id
; this maps to the gateway's userTokenId
field. It is the unique customer identifier the in merchant system. It is a required field for processing Payouts through Spreedly's General Credit transaction type.
When making purchase/payment request to process a partial approval transaction, you should specify is_partial_approval
as true
(boolean); this maps to the gateway's isPartialApproval
field.
When making any request you can specify save_payment_method
to false
(boolean) to override the default store/register of the payment method.
When making a 3DS Gateway Specific request you can specify force_3d_secure
field, as true
or false
(boolean), this maps to the gateway's challengePreference
field to set 01 – Challenge
or 02 – Exemption
values.
When making any request especially for Stored Credentials you can specify authentication_only_type
field, this maps to the gateway's authenticationOnlyType
field. The allowed vales are RECURRING
, INSTALLMENTS
or ADDCARD
.
When making 3DS Global requests you can specify challenge_preference
; this maps to the gateway's challengePreference
field. The use of this parameter is only for "advanced" situations to force 3DS exemptions or challenges.
When making 3DS Global requests you can specify exemption_request_reason
; this maps to the gateway's exemptionRequestReason
field. The use of this parameter is required if challengePreference
= ExemptionRequest
. Possible values: AddCard
, AccountVerification
, LowValuePayment
, or TransactionRiskAnalysis
.
When making any request, you can specify Gateway Specific Field is_aft
as true
(boolean), which allows Account Funding Transactions (AFTs) to be sent. For more information, please refer to the Gateway's AFT guide.. In addition to supporting non-domestic AFT requests, you should send the recipient information in the following Gateway Specific Fields: aft_recipient_first_name
and aft_recipient_last_name
When making a payout request, you have to specify Gateway specific field is_payout
as true
(boolean), which allows payout to be sent. For more information, refer to the Gateway's Payout guide.
When making any request with amount 0
you can specify perform_name_verification
field, which allows Cardholder Name Verification, For more information, please refer to the Gateway's guide.
Third-party 3D Secure Auth Data
Spreedly will automatically handle the field mapping for sending third-party 3DS2 authentication data to Nuvei. For more information about how to use this feature, see the 3DS2 Third-party Authentication Guide. Spreedly fields map to the relevant Nuvei fields as described in the following table. Please see Nuvei’s third-party 3DS2 documentation for detailed descriptions of each of these fields and when to use them.
Spreedly field | Nuvei field |
---|---|
eci | eci |
cavv | cavv |
ds_transaction_id | dsTransId |
challenge_preference (GSF) | challengePreference |
exemption_request_reason (GSF) | exemptionRequestReason |
3DS Request
curl https://core.spreedly.test/v1/gateways/{gateway_token}/purchase.xml \
-u '{environment_key}:{access_secret}' \
-H 'Content-Type: application/xml' \
-d '<transaction>
<amount>100</amount>
<currency_code>USD</currency_code>
<payment_method_token>EyjG8inHFr89M2R06xIb1YOOYt6</payment_method_token>
<email>[email protected]</email>
<retain_on_success>true</retain_on_success>
<ip>127.0.0.1</ip>
<three_ds>
<ecommerce_indicator>05</ecommerce_indicator>
<authentication_value>e1E3SN0xF1lDp9js723iASu3wrA=</authentication_value>
<directory_server_transaction_id>ODUzNTYzOTcwODU5NzY3Qw==</directory_server_transaction_id>
</three_ds>
</transaction>
'
Response
<transaction>
<on_test_gateway type="boolean">true</on_test_gateway>
<created_at type="dateTime">2024-11-06T14:22:12Z</created_at>
<updated_at type="dateTime">2024-11-06T14:22:17Z</updated_at>
<succeeded type="boolean">true</succeeded>
<state>succeeded</state>
<token>PHe4ytVmRe8UOr5xhVX87TV0XZS</token>
<transaction_type>Purchase</transaction_type>
<order_id>b421eb9d6f02579156027af691cebe6c69d7c93c601896694d7f3c55c8af518d</order_id>
<ip>127.0.0.1</ip>
<description nil="true"/>
<email>[email protected]</email>
<merchant_name_descriptor nil="true"/>
<merchant_location_descriptor nil="true"/>
<merchant_profile_key nil="true"/>
<gateway_specific_fields nil="true"/>
<gateway_specific_response_fields>
<nuvei>
<requested_amount>100</requested_amount>
<requested_currency>USD</requested_currency>
<procceed_amount>100</procceed_amount>
<procceed_currency>USD</procceed_currency>
</nuvei>
</gateway_specific_response_fields>
<gateway_transaction_id>7110000000006278761</gateway_transaction_id>
<sub_merchant_key nil="true"/>
<gateway_latency_ms type="integer">1667</gateway_latency_ms>
<warning nil="true"/>
<application_id nil="true"/>
<risk_data nil="true"/>
<merchant_metadata nil="true"/>
<customer_data nil="true"/>
<order_data nil="true"/>
<workflow_key nil="true"/>
<amount type="integer">100</amount>
<local_amount nil="true"/>
<currency_code>USD</currency_code>
<retain_on_success type="boolean">true</retain_on_success>
<payment_method_added type="boolean">false</payment_method_added>
<smart_routed type="boolean">false</smart_routed>
<stored_credential_initiator nil="true"/>
<stored_credential_reason_type nil="true"/>
<stored_credential_alternate_gateway nil="true"/>
<populate_mit_fields type="boolean">false</populate_mit_fields>
<message key="messages.transaction_succeeded">Succeeded!</message>
<gateway_token>6X8XDF3ZR68DJSN2QP9RF3266Z</gateway_token>
<gateway_type>nuvei</gateway_type>
<shipping_address>
<name>Apple Smith</name>
<address1>12345 Example Way</address1>
<address2 nil="true"/>
<city>Atlanta</city>
<state>GA</state>
<zip>30301</zip>
<country>US</country>
<phone_number nil="true"/>
</shipping_address>
<response>
<success type="boolean">true</success>
<message>APPROVED</message>
<avs_code nil="true"/>
<avs_message nil="true"/>
<cvv_code nil="true"/>
<cvv_message nil="true"/>
<pending type="boolean">false</pending>
<result_unknown type="boolean">false</result_unknown>
<error_code>0</error_code>
<error_detail nil="true"/>
<cancelled type="boolean">false</cancelled>
<fraud_review nil="true"/>
<created_at type="dateTime">2024-11-06T14:22:15Z</created_at>
<updated_at type="dateTime">2024-11-06T14:22:17Z</updated_at>
</response>
<api_urls>
</api_urls>
<payment_method>
<token>EyjG8inHFr89M2R06xIb1YOOYt6</token>
<created_at type="dateTime">2024-11-06T13:30:18Z</created_at>
<updated_at type="dateTime">2024-11-06T14:07:54Z</updated_at>
<email>[email protected]</email>
<data nil="true"/>
<storage_state>retained</storage_state>
<test type="boolean">true</test>
<metadata>
<key>testing apple pay</key>
<another_key type="integer">123</another_key>
<final_key type="boolean">true</final_key>
</metadata>
<callback_url nil="true"/>
<last_four_digits>1111</last_four_digits>
<first_six_digits>411111</first_six_digits>
<card_type>visa</card_type>
<first_name>Apple</first_name>
<last_name>Smith</last_name>
<month type="integer">12</month>
<year type="integer">2028</year>
<full_name>Apple Smith</full_name>
<address1>12345 Example Way</address1>
<address2 nil="true"/>
<city>Atlanta</city>
<state>GA</state>
<zip>30301</zip>
<country>USA</country>
<phone_number nil="true"/>
<company nil="true"/>
<shipping_address1>12345 Example Way</shipping_address1>
<shipping_address2 nil="true"/>
<shipping_city>Atlanta</shipping_city>
<shipping_state>GA</shipping_state>
<shipping_zip>30301</shipping_zip>
<shipping_country>USA</shipping_country>
<shipping_phone_number nil="true"/>
<eligible_for_card_updater type="boolean">false</eligible_for_card_updater>
<payment_method_type>apple_pay</payment_method_type>
<stored_credential_usage>
<scheme_issued>
<original_network_transaction_id nil="true"/>
<network_transaction_id nil="true"/>
</scheme_issued>
<nuvei>
<original_network_transaction_id nil="true"/>
<network_transaction_id nil="true"/>
</nuvei>
</stored_credential_usage>
<errors>
</errors>
</payment_method>
<attempt_3dsecure type="boolean">false</attempt_3dsecure>
</transaction>
Additional notes |
---|
For every transaction, Nuvei requires an IP value to be sent. Ensure that the ip field is always included in the body of the request.To make a straightforward purchase, simply omit the three_ds object from your request. |
ACH/ Bank Account Transactions
Additional notes |
---|
- ACH only supports US-based IPs. IP addresses outside the US do not work. |
- In addition to payment request responses, the system sends Direct Merchant Notifications (DMNs) containing the transaction processing results to a specified notificationUrl provided |
- The SEC code is derived from the customer’s account type |
ACH only supports US-based IPs. IP addresses outside the US do not work and the Transactions are conducted in US Dollars.
The first time a customer uses a bank account, Nuvei captures their bank account details and stores these details in an encrypted UPO (User Payment Option) record in the Nuvei system for use in future transactions.
Testing
To create a bank account (ACH) payment method, consider the following values and refer to the Spreedly API for detailed guidance.
- Amount must be 1.25
- Country must be US and include a state
Fields mapping
Spreedly field | Nuvei field |
---|---|
routing_number | RoutingNumber |
account_number | AccountNumber |
notification_url (GSF) | urlDetails.notification_url |
billing_address.country | billingAddress.country |
billing_address.state | billingAddress.state |
ip | deviceDetails.ipAddress |
The notification_url
should be sent as a Gateway Specific Field.
ACH Request
curl https://core.spreedly.test/v1/gateways/{gateway_token}/purchase.xml \
-u '{environment_key}:{access_secret}' \
-H 'Content-Type: application/xml' \
-d '<transaction>
<bank_account>
<first_name>Joe</first_name>
<last_name>Smith</last_name>
<bank_routing_number>021000021</bank_routing_number>
<bank_account_number>9876543210</bank_account_number>
</bank_account>
<amount>100</amount>
<currency_code>USD</currency_code>
<order_id>{{$guid}}</order_id>
<email>[email protected]</email>
<retain_on_success>true</retain_on_success>
<billing_address>
<country>US</country>
<state>MA</state>
</billing_address>
<ip>127.0.0.1</ip>
</transaction>
'
Google Pay
Since Spreedly decrypts the Google Pay token, you need to collect the following details from Google Pay:
Payment Data: This includes the signature
, protocolVersion
, and signedMessage
provided by Google Pay. These values represent the tokenized card information and the cryptogram.
Spreedly will decrypt the Google Pay data and automatically handle the mapping of the necessary fields for the required Nuvei fields, including externalTokenProvider
, cryptogram
, and eciProvider
, as well as the basic card data.
Google Pay Request
curl https://core.spreedly.test/v1/gateways/6X8XDF3ZR68DJSN2QP9RF3266Z/purchase.xml \
-u '1B58V8AYEG8HRB4C5QE075WM3T:T9DcGB1kYyLQjlR8aQKHnbwOGowWsbeETPif2UPLEBDQVqm03Mu3UavnpMpqgwfy' \
-H 'Content-Type: application/xml' \
-d '<transaction>
<google_pay>
<payment_data>
<signature>YOUR_SIGNATURE</signature>
<protocolVersion>YOUR_PROTOCOL_VERSION</protocolVersion>
<signedMessage>YOUR_SIGNED_MESSAGE</signedMessage>
</payment_data>
<first_name>Cure</first_name>
<last_name>Tester</last_name>
<country>USA</country>
<number>4761344136141390</number> <!-- success -->
<verification_value>123</verification_value>
</google_pay>
<amount>100</amount>
<currency_code>USD</currency_code>
<order_id>{{$guid}}</order_id>
<email>[email protected]</email>
<retain_on_success>true</retain_on_success>
<ip>127.0.0.1</ip>
</transaction>
'
CardHolder Name Verification
Nuvei supports card scheme services that verify the name a customer provides to a merchant and matches the cardholder name on file with the card issuer. These services provide an additional security check during card onboarding and pre-transaction checks, when amount=0
.
When Making a cardholder name verification you should to send the Gateway Specific Field (GSF) perform_name_verification
as true
(boolean), this maps to the gateway's cardHolderNameVerification.performNameVerification
field.
Gateway Specific Response Fields
A response from Nuvei may contain the following fields:
Nuvei GSRF | Possible values |
---|---|
name_verification_request_result | NameVerificationPerformed NameVerificationNotPerformed NameVerificationNotSupported |
name_verification_result | Match , PartialMatch , NoMatch , Unverified |
first_name_verification_result | Match , PartialMatch , NoMatch , Unverified |
middle_name_verification_result | Match , PartialMatch , NoMatch , Unverified |
last_name_verification_result | Match , PartialMatch , NoMatch , Unverifed |
If name_verification_request_result
: "NameVerificationNotPerformed"
or "NameVerificationNotSupported"
, the only possible value for each of the four Verification Result parameters is Unverified
.
Account Funding Transactions (AFTs)
An Account Funding Transaction (AFT) pulls funds from a card and deposits or transfers those funds into another account.
AFTs are relevant only for merchants offering funding transactions. To begin using AFTs, contact Nuvei to configure your merchant account to use this transaction type
When Making a AFT transaction you should to send the Gateway Specific Field (GSF) is_aft
as true
(boolean), this will map the next required fields.
Spreedly field | Nuvei field |
---|---|
payment_method.first_name * | billingAddress.FirstName |
payment_method.last_name | billingAddress.LastName |
billingAddress.country * | billingAddress.country |
billing_address.city | billingAddress.city |
billing_address.state * | billingAddress.state |
billing_address.address1 | deviceDetails.address1 |
aft_recipient_first_name (GSF) | recipientDetails.firstName |
aft_recipient_last_name (GSF) | recipientDetails.lastName |
* For non-domestic AFT requests, they must contain the sender details to be marked by Nuvei for AFT.
Gateway Specific Response Fields
is_aft
: trueis_aft_overriden
: true
Verify transaction
A merchant may want to perform a zero-authorization card transaction in order to verify if a credit card is a chargeable card and available for purchases.
Verify transactions can be used in order to:
- Store card details for future use
- Add a card (card registration)
- Verify a card
When making a verify request Spreedly sets the amount
: 0 and transactionType
: Auth. The authentication_only_type
GSF should be included in the request. Below lists the possible values for authentication_only_type
.
Values | Description |
---|---|
RECURRING | For when multiple transactions are submitted by the Merchant separately based on an agreement between the Merchant and the cardholder. |
INSTALLMENTS | For when a single transaction is divided into multiple charges. |
ADDCARD | For when a cardholder adds their card to be used for future transactions |
MAINTAINCARD | For when a Merchant wants to verify that an existing card is still valid. |
ACCOUNTVERIFICATION | For a verification different than those listed above. |
Payouts
-
Nuvei supports sending payout requests with no connection to a previous transaction. Aka unreferenced refund. Please refer to Nuvei documentation for further details.
•
is_payout
GSF is Required
Payout request
`curl https://core.spreedly.test/v1/gateways/{gateway_token}/purchase.xml \
-u '{environment_key}:{access_secret}' \
-H 'Content-Type: application/xml' \
-d '<transaction>
<amount>100</amount>
<currency_code>USD</currency_code>
<payment_method_token>E5g6rB46gli2vupsXjyxQfaRbaz</payment_method_token>
<email>[email protected]</email>
<retain_on_success>true</retain_on_success>
<ip>127.0.0.1</ip>
<gateway_specific_fields>
<nuvei>
<user_token_id>123456</user_token_id>
<is_payout>true</is_payout>
</nuvei>
</gateway_specific_fields>
</transaction>
'
Response
`<transaction>
<on_test_gateway type="boolean">true</on_test_gateway>
<created_at type="dateTime">2024-11-27T20:17:31Z</created_at>
<updated_at type="dateTime">2024-11-27T20:17:37Z</updated_at>
<succeeded type="boolean">true</succeeded>
<state>succeeded</state>
<token>HZoag0dNJfNTWnSKpuocbz6qC1G</token>
<transaction_type>Purchase</transaction_type>
<order_id nil="true"/>
<ip>127.0.0.1</ip>
<description nil="true"/>
<email>[email protected]</email>
<merchant_name_descriptor nil="true"/>
<merchant_location_descriptor nil="true"/>
<merchant_profile_key nil="true"/>
<gateway_specific_fields>
<nuvei>
<user_token_id>123456</user_token_id>
<is_payout>true</is_payout>
</nuvei>
</gateway_specific_fields>
<gateway_specific_response_fields>
<nuvei>
<requested_amount>100</requested_amount>
<requested_currency>USD</requested_currency>
<procceed_amount>100</procceed_amount>
<procceed_currency>USD</procceed_currency>
<user_payment_option_id>133567018</user_payment_option_id>
<network_transaction_id>7110000000007208682</network_transaction_id>
</nuvei>
</gateway_specific_response_fields>
<gateway_transaction_id>7110000000007208682</gateway_transaction_id>
<sub_merchant_key nil="true"/>
<gateway_latency_ms type="integer">1839</gateway_latency_ms>
<warning nil="true"/>
<application_id nil="true"/>
<risk_data nil="true"/>
<merchant_metadata nil="true"/>
<customer_data nil="true"/>
<order_data nil="true"/>
<workflow_key nil="true"/>
<amount type="integer">100</amount>
<local_amount nil="true"/>
<currency_code>USD</currency_code>
<retain_on_success type="boolean">true</retain_on_success>
<payment_method_added type="boolean">false</payment_method_added>
<smart_routed type="boolean">false</smart_routed>
<stored_credential_initiator nil="true"/>
<stored_credential_reason_type nil="true"/>
<stored_credential_alternate_gateway nil="true"/>
<populate_mit_fields type="boolean">false</populate_mit_fields>
<message key="messages.transaction_succeeded">Succeeded!</message>
<gateway_token>6GA3HM28GD8T9SPDQ54981HZ1B</gateway_token>
<gateway_type>nuvei</gateway_type>
<shipping_address>
<name>Cure Tester</name>
<address1 nil="true"/>
<address2 nil="true"/>
<city nil="true"/>
<state nil="true"/>
<zip nil="true"/>
<country nil="true"/>
<phone_number nil="true"/>
</shipping_address>
<response>
<success type="boolean">true</success>
<message>APPROVED</message>
<avs_code nil="true"/>
<avs_message nil="true"/>
<cvv_code nil="true"/>
<cvv_message nil="true"/>
<pending type="boolean">false</pending>
<result_unknown type="boolean">false</result_unknown>
<error_code>0</error_code>
<error_detail nil="true"/>
<cancelled type="boolean">false</cancelled>
<fraud_review nil="true"/>
<created_at type="dateTime">2024-11-27T20:17:35Z</created_at>
<updated_at type="dateTime">2024-11-27T20:17:37Z</updated_at>
<network_transaction_id>7110000000007208682</network_transaction_id>
</response>
<api_urls>
</api_urls>
<payment_method>
<token>E5g6rB46gli2vupsXjyxQfaRbaz</token>
<created_at type="dateTime">2024-11-26T19:47:14Z</created_at>
<updated_at type="dateTime">2024-11-26T21:48:58Z</updated_at>
<email>[email protected]</email>
<data nil="true"/>
<storage_state>retained</storage_state>
<test type="boolean">false</test>
<metadata nil="true"/>
<callback_url nil="true"/>
<last_four_digits>6034</last_four_digits>
<first_six_digits>510108</first_six_digits>
<card_type>master</card_type>
<first_name>Cure</first_name>
<last_name>Tester</last_name>
<month type="integer">9</month>
<year type="integer">2035</year>
<address1>157 Simonis Loaf</address1>
<address2>Apartment 4</address2>
<city>Marilietown</city>
<state>NJ</state>
<zip>31331</zip>
<country>USA</country>
<phone_number>919.331.3313</phone_number>
<company nil="true"/>
<full_name>Cure Tester</full_name>
<eligible_for_card_updater type="boolean">true</eligible_for_card_updater>
<shipping_address1 nil="true"/>
<shipping_address2 nil="true"/>
<shipping_city nil="true"/>
<shipping_state nil="true"/>
<shipping_zip nil="true"/>
<shipping_country nil="true"/>
<shipping_phone_number nil="true"/>
<issuer_identification_number>51010810</issuer_identification_number>
<click_to_pay type="boolean">false</click_to_pay>
<managed type="boolean">true</managed>
<payment_method_type>credit_card</payment_method_type>
<stored_credential_usage>
<scheme_issued>
<original_network_transaction_id>7110000000007132934</original_network_transaction_id>
<network_transaction_id>7110000000007208682</network_transaction_id>
</scheme_issued>
<nuvei>
<original_network_transaction_id>7110000000007132934</original_network_transaction_id>
<network_transaction_id>7110000000007208682</network_transaction_id>
</nuvei>
</stored_credential_usage>
<errors>
</errors>
<verification_value></verification_value>
<number>XXXX-XXXX-XXXX-6034</number>
<bin_metadata>
<message>BIN Metadata is available only to Advanced Vault enrolled customers and payment methods. Reach out to your account representative for more details.</message>
</bin_metadata>
<fingerprint nil="true"/>
</payment_method>
<attempt_3dsecure type="boolean">false</attempt_3dsecure>
</transaction>
To make a payout request with connection to a previous transaction, you have to send a normal refund request. To get more information see Spreedly Api reference Partial Refund and full amount refund
Payout with Google and Apple pay
Spreedly supports sending payout requests for Google and Apple pay, to get more details see Nuvei Documentation
Required GSF's
Spreedly field | Nuvei field |
---|---|
user_payment_option_id | userPaymentOptionId |
notification_url | notificationUrl |
userPaymentOptionId
=> user_payment_option_idnotificationUrl
=> notification_url
Gateway Specific Response Fields
A response from Nuvei may contain the following fields:
GSRF | Description |
---|---|
requested_amount | The original amount requested in a partial approval transactions |
requested_currency | The currency of the original requested in a partial approval transactions |
procceed_amount | The amount that was actually deposited in the partial approval transaction. |
procceed_currency | The currency used in the processed transaction request. |
user_payment_option_id | Payment identifier received from previous deposit |
network_transaction_id | Transaction identifier received from previous request |
is_aft | Indicates whether the transaction was processed as a Sale (False) or as an AFT transaction (True). |
is_aft_overriden | Merchant can submit Sales and AFT transactions or Merchant can only submit AFT transactions |
name_verification_request_result | Name verification result in a Cardholder Name Verification |
name_verification_result | Name verification result in a Cardholder Name Verification |
first_name_verification_result | First Name verification result in a Cardholder Name Verification |
middle_name_verification_result | Middle Name verification result in a Cardholder Name Verification |
last_name_verification_result | Last Name verification result in a Cardholder Name Verification |
Updated 2 days ago