O tranzacție cu cardul de credit poate fi trimisă cu trei niveluri de date despre tranzacție: Nivelul I, nivelul II și nivelul III. Fiecare nivel este definit de cantitatea informațiilor furnizate pentru procesarea tranzacției.
Dacă acceptați cardurile de afaceri, cele corporative sau cele de achiziții, furnizarea datelor de nivel II/III pentru tranzacția dvs. poate face ca tranzacția să fie eligibilă pentru comisioane de procesare mai scăzute. Compania clientului dvs. poate beneficia, de asemenea, de extrase de card desfășurate, precum și de informații care vor facilita și optimiza procesele de afaceri precum autorizațiile de achiziție, reconcilierea și raportarea.
Rețineți că gateway-ul nu garantează faptul că datele furnizate în cadrul tranzacției sunt suficiente pentru ca aceasta să fie eligibilă pentru anumite comisioane de procesare prevăzute de schema cardului.
Atunci când creați o comandă, toate datele de nivel II sau III furnizate se vor aplica tuturor tranzacțiilor din comandă.
Dacă utilizați gateway-ul pentru a efectua autentificarea 3DS și tranzacțiile de plată, atunci puteți crea o comandă trimițând o solicitare INITIATE_AUTHENTICATION urmată de o solicitare AUTHENTICATE_PAYER cu date de Nivel II/III și furniza authentication.transactionId în solicitarea ulterioară AUTHORIZE, PAY sau VERIFY, iar datele de nivel II/III vor fi completate din autentificarea la care se face referire.
Dacă ați furnizat date de Nivel II/III în solicitarea AUTHENTICATE_PAYER, apoi furnizați authentication.transactionId în solicitarea ulterioară AUTHORIZE, PAY sau VERIFY, puteți trimite în continuare aceleași date de Nivel II/III sau date diferite în solicitarea dvs. financiară pentru a înlocui datele de nivel II/III furnizate în autentificare.
Câmpurile de Nivel II sunt acceptate începând cu versiunea 64, iar cele de Nivelul III – începând cu versiunea 77 a solicitării AUTHENTICATE_PAYER.
Referința API Authenticate Payer [REST][NVP]
Este necesar să furnizați date de nivel II/III pentru operațiunile ulterioare (Capture sau Refund) numai dacă doriți să:
Puteți suprascrie datele de nivel II/III pentru comandă furnizând date la nivel de comandă. Acest lucru poate fi util pentru corectarea informațiilor furnizate la crearea comenzii. Informațiile actualizate se vor aplica apoi tuturor tranzacțiilor ulterioare din cadrul comenzii. De exemplu, order.customerReference
order.amount
poate fi furnizat într-o solicitare de tranzacție de autorizare, dar nu și într-o solicitare ulterioară pentru o tranzacție de decontare.Consultați coloana Câmp la nivel de comandă din tabelele pentru nivelurile II/III de mai jos.
Puteți furniza numai date de nivel II/III care se aplică numai tranzacției respective. De exemplu, transaction.taxAmount
Consultați coloana Câmp la nivel de tranzacție din tabelele pentru nivelurile II/III de mai jos.
Atunci când gateway-ul trimite achizitorului date de nivel II/III, valorile furnizate în cadrul tranzacției au prioritate în raport cu cele furnizate la nivel de comandă. Dacă nu furnizați valori pentru tranzacție, gateway-ul va utiliza valorile furnizate la nivel de comandă pentru a le trimite achizitorului, numai dacă este cazul.
Pentru a furniza următoarele date de nivel II în solicitarea dvs. de tranzacție, utilizați câmpurile API corespunzătoare la nivel de comandă și/sau la nivel de tranzacție, conform tabelului de mai jos.
Datele de nivel II | Câmp la nivel de comandă | Câmp la nivel de tranzacție |
---|---|---|
Dată comandă client | order.customerOrderDate |
|
Valoarea comenzii (suma care va fi autorizată, trimisă în momentul creării unei comenzi) | order.amount Dacă furnizați orice subtotaluri (( order.itemAmount , order.shippingAndHandlingAmount , order.taxAmount , order.gratuityAmount , order.cashbackAmount ), order.discount.amount ), atunci valoarea comenzii TREBUIE să fie egală cu suma subtotalurilor, minus valoarea reducerii. |
|
Cantitate articol | order.itemAmount Dacă nu furnizați acest câmp, dar furnizați orice date privind articolele-rând, această valoare este calculată ca sumă a valorilor totale ale articolelor ( order.item[n].unitPrice x order.item[n].quantity ) pentru toate articolele-rând. Dacă furnizați atât acest câmp, cât și valorile oricăror articole-rând, valoarea din acest câmp TREBUIE să fie egală cu valoarea calculată.Dacă zecimalele din valoarea calculată depășesc unitățile secundare ale monedei plătitorului, gateway-ul va rotunji totalul folosind algoritmul de rotunjire a jumătății la un număr par. De exemplu, dacă avem valoarea 2,555 (cantitatea) înmulțită cu 3 (prețul unitar), ceea ce are ca rezultat produsul 7,665, iar moneda plătitorului (USD) are 2 unități secundare, valoarea rotunjită a articolului va fi de 7,66. Asigurați-vă că aplicați această rotunjire atunci când completați câmpurile cu valoarea articolelor în cadrul solicitării. |
transaction.itemAmount |
Sumă expediere și manipulare | order.shippingAndHandlingAmount Suma totală pentru expediere și manipulare pentru tranzacție, inclusiv orice taxe aplicabile. |
transaction.shippingAndHandlingAmount |
Valoare taxe expediere și manipulare | order.shippingAndHandlingTaxAmount Acest câmp este acceptat numai începând cu versiunea 67. Valoarea taxelor aplicate pentru expediere și manipulare pentru tranzacție. Această sumă este inclusă în costul de expediere și manipulare introdus în câmpul order.shippingAndHandlingTaxAmount .
|
transaction.shippingAndHandlingTaxAmount |
Rată taxe expediere și manipulare | order.shippingAndHandlingTaxRate Acest câmp este acceptat numai începând cu versiunea 67. Rata taxei aplicată sumei de plată pentru expediere și manipulare pentru comandă, pentru determinarea valorii taxei de expediere și manipulare. Pentru o rată a taxei de 2,5%, introduceți 0,025. |
transaction.shippingAndHandlingTaxRate |
Valoare taxe vamale | order.dutyAmount Acest câmp este acceptat numai începând cu versiunea 67. Valoarea taxelor vamale pentru tranzacție. |
transaction.dutyAmount |
Sumă taxe | order.taxAmount Dacă nu furnizați acest câmp, dar furnizați orice date privind articolele-rând, această valoare este calculată ca sumă a valorilor totale ale taxelor ( order.item[n].unitTaxAmount x order.item[n].quantity ) pentru toate articolele-rând. Dacă furnizați atât acest câmp, cât și valorile oricăror articole-rând, valoarea din acest câmp TREBUIE să fie egală cu valoarea calculată.Dacă zecimalele din valoarea calculată depășesc unitățile secundare ale monedei plătitorului, gateway-ul va rotunji totalul folosind algoritmul de rotunjire a jumătății la un număr par. De exemplu, dacă avem valoarea 2,555 (cantitatea) înmulțită cu 3 (prețul unitar), ceea ce are ca rezultat produsul 7,665, iar moneda plătitorului (USD) are 2 unități secundare, valoarea rotunjită a articolului va fi de 7,66. Asigurați-vă că aplicați această rotunjire atunci când completați câmpurile cu valoarea articolelor în cadrul solicitării. |
transaction.taxAmount |
Tip de taxă [n] | order.tax[n].type Poate fi necesar să introduceți valoarea de enumerare corectă, conform cerințelor achizitorului. Vă rugăm să contactați furnizorul de servicii de plată pentru detalii. |
transaction.tax[n].type Poate fi necesar să introduceți valoarea de enumerare corectă, conform cerințelor achizitorului. Vă rugăm să contactați furnizorul de servicii de plată pentru detalii. |
Valoare taxe [n] | order.tax[n].amount |
transaction.tax[n].amount |
Cotă taxă [n] | order.tax[n].rate |
transaction.tax[n].rate |
Marcaj scutire de taxe | order.taxStatus |
transaction.taxStatus |
Sumă reducere | order.discount.amount |
transaction.discountAmount |
Referință achiziție comerciant | order.reference Dacă această valoare nu este introdusă, gateway-ul utilizează valoarea din order.id (câmp obligatoriu). |
|
Număr factură | order.invoiceNumber |
|
Număr de referință client/posesor card | order.customerReference |
|
Nume solicitant | order.requestorName |
|
ID fiscal comerciant – federal/național | order.taxRegistrationId |
Dacă sunteți un comerciant din SUA, introduceți-vă ID-ul fiscal federal. Dacă sunteți un comerciant din Canada, introduceți-vă contul HST (Harmonized Sales Tax – taxă pe vânzări armonizată) de la Agenția fiscală canadiană. |
ID fiscal comerciant – stat/provincie/local | order.localTaxRegistrationId |
|
Cod înregistrare TVA client | customer.taxRegistrationId |
|
Adresă comerciant – cod ZIP/poștal | Valoarea configurată în profilul dvs. de comerciant va fi trimisă achizitorului. | |
Adresă comerciant – stat/provincie | Valoarea configurată în profilul dvs. de comerciant va fi trimisă achizitorului. | |
Cod zip/poștal de origine pentru expediere | shipping.origin.postcodeZip Dacă acesta nu este furnizat, valoarea configurată în profilul dvs. de comerciant poate fi trimisă achizitorului. |
|
Stradă destinație de livrare | shipping.address.street shipping.address.street2 |
|
Oraș destinație de livrare | shipping.address.city |
|
Stat/provincie destinație de livrare | shipping.address.stateProvince Trebuie să introduceți codul din trei caractere de subdiviziune a țării conform ISO 3166-2. Dacă destinația este un teritoriu S.U.A., introduceți codul de țară. De exemplu, GUM atât în câmpul shipping.address.country, cât și în câmpul shipping.address.stateProvince. Completați acest câmp numai dacă toate articolele incluse în comandă sunt expediate la aceeași destinație. |
|
Țară destinație de livrare | shipping.address.country Dacă destinația este un teritoriu S.U.A., introduceți codul de țară. De exemplu, GUM atât în câmpul shipping.address.country , cât și înb câmpul shipping.address.stateProvince . Completați acest câmp numai dacă toate articolele incluse în comandă sunt expediate la aceeași destinație.
|
|
Cod zip/poștal destinație de livrare | shipping.address.postcodeZip |
|
Nume adresă de facturare | customer.firstName customer.lastName |
|
Adresă de facturare Stradă 1 | billing.address.street |
|
Adresă de facturare Stradă 2 | billing.address.street2 |
|
Adresă de facturare Oraș | billing.address.city |
|
Adresă de facturare Stat | billing.address.stateProvince |
|
Cod ZIP/poștal adresă de facturare | billing.address.postcodeZip |
|
Adresă de facturare Țară | billing.address.country |
Datele de nivel III includ datele de la nivelul II indicate mai sus, plus detaliile articolelor-rând. Pentru a include următoarele date de nivel III în solicitarea dvs. de tranzacție, utilizați câmpurile API corespunzătoare la nivel de comandă (din grupul de parametri order.item[n]
) și/sau la nivel de tranzacție (din grupul de parametri transaction.item[n]
), din tabelul de mai jos.
Datele de nivel III | Câmp la nivel de comandă | Câmp la nivel de tranzacție |
---|---|---|
ID fiscal comerciant articol | Valoarea nu poate fi furnizată la nivel de articol. Pentru toate articolele, valoarea furnizată la nivel de comandă în câmpul order.taxRegistrationId va fi trimisă achizitorului. |
|
Total articol | Dacă mesajul de la achizitor o solicită, această valoare este calculată ca sumă a valorilor totale ale articolelor (order.item[n].unitPrice x order.item[n].quantity ) pentru toate articolele-rând. |
|
Unitate de măsură articol | order.item[n].unitOfMeasure Poate fi necesar să introduceți valoarea de enumerare corectă, conform cerințelor achizitorului. Vă rugăm să contactați furnizorul de servicii de plată pentru detalii. |
transaction.item[n].unitOfMeasure Poate fi necesar să introduceți valoarea de enumerare corectă, conform cerințelor achizitorului. Vă rugăm să contactați furnizorul de servicii de plată pentru detalii. |
Descriere articol | order.item[n].description |
transaction.item[n].description |
Marcă articol | order.item[n].brand |
transaction.item[n].brand |
Categorie articol | order.item[n].category |
transaction.item[n].category |
Categorie sector articol | order.item[n].industryCategory |
transaction.item[n].industryCategory |
Nume articol | order.item[n].name |
transaction.item[n].name |
SKU articol | order.item[n].sku |
transaction.item[n].sku |
Articol UNSPSC (Codul standard ONU pentru produse și servicii) | order.item[n].detail.unspsc |
transaction.item[n].detail.unspsc |
UPC (cod universal produs) articol | order.item[n].detail.upc |
transaction.item[n].detail.upc |
Cod marfă articol | order.item[n].detail.commodityCode |
transaction.item[n].detail.commodityCode |
Cantitate articol | order.item[n].quantity Atunci când o valoare zecimală este înmulțită cu anumite sume ( order.item[n].unitPrice , order.item[n].unitTaxAmount sau order.item[n].unitDiscountAmount ) și dacă zecimalele din valoarea calculată depășesc unitățile secundare ale monedei plătitorului, gateway-ul va rotunji totalul folosind algoritmul de rotunjire a jumătății la un număr par. De exemplu, dacă avem valoarea 2,555 (cantitatea) înmulțită cu 3 (prețul unitar), ceea ce are ca rezultat produsul 7,665, iar moneda plătitorului (USD) are 2 unități secundare, valoarea rotunjită a articolului va fi de 7,66. |
transaction.item[n].quantity |
Preț unitar articol | order.item[n].unitPrice Această valoare este înmulțită cu order.item[n].quantity pentru a calcula suma totală pentru articolul-rând. Dacă furnizați order.itemAmount , suma totală a valorilor tuturor articolelor-rând TREBUIE să fie egală cu valoarea din order.itemAmount .
|
transaction.item[n].unitPrice |
Valoare unitară taxe articol | order.item[n].unitTaxAmount Această sumă este înmulțită cu order.item[n].quantity pentru a calcula valoarea totală a taxelor pentru articolul-rând. Dacă furnizați order.taxAmount , suma totală a valorilor taxelor pentru toate articolele-rând TREBUIE să fie egală cu valoarea din order.taxAmount .
|
transaction.item[n].unitTaxAmount |
Tip de taxă articol | order.item[n].detail.unitTaxType Utilizați acest câmp pentru a introduce taxa percepută pentru articolul-rând respectiv, dacă există un singur tip de taxă. |
transaction.item[n].detail.unitTaxType |
Cotă taxă articol (procent) | order.item[n].detail.unitTaxRate Utilizați acest câmp pentru a introduce cota de taxare percepută pentru articolul-rând respectiv, dacă există o singură cotă de taxare. |
transaction.item[n].detail.unitTaxRate |
Tip de taxă articol [n] | order.item[n].detail.tax[m].type order.item[n].detail.tax[m].amount order.item[n].detail.tax[m].rate Utilizați aceste câmpuri pentru a furniza un desfășurător al valorilor taxelor aplicabile comenzii per articol-rând și tip de taxă. Se aplică dacă există mai multe tipuri de taxe percepute pentru articolul-rând respectiv. Dacă există un singur tip de taxă, utilizați order.item[n].detail.unitTaxType |
transaction.item[n].detail.tax[m].type transaction.item[n].detail.tax[m].amount transaction.item[n].detail.tax[m].rate Utilizați aceste câmpuri pentru a furniza un desfășurător al valorilor taxelor aplicabile tranzacției, per articol-rând și tip de taxă. Se aplică dacă există mai multe tipuri de taxe percepute pentru articolul-rând respectiv. Dacă există un singur tip de taxă, utilizați transaction.item[n].detail.unitTaxType |
Valoare taxe articol [n] | ||
Cotă taxă articol [n] (procent) | ||
Valoare reducere articol | order.item[n].unitDiscountAmount Această valoare este înmulțită cu order.item[n].quantity pentru a calcula valoarea totală a reducerii pentru articolul-rând. Dacă furnizați order.discount.amount , valoarea din acest câmp TREBUIE să fie egală cu valoarea totală a reducerilor pentru toate articolele-rând. |
transaction.item[n].unitDiscountAmount |
Cotă reducere articol (procent) | order.item[n].detail.unitDiscountRate |
transaction.item[n].detail.unitDiscountRate |
Copyright © 2023 UniCredit Bank