Payment-FinishReservation-v2

A Barion wikiből


  • Tervezet
  • Üzlet
  • Informatika
  • Pénzügy
  • Jog
  • 90%
  • Online elfogadó
  • Mobil elfogadó
  • Pénztárgép
  • Feltöltés
  • Piactér
  • Nonprofit
  • Parkolas

Befoglalás véglegesítése

POST /v2/Payment/FinishReservation

A bolt ezzel az API hívással tudja a véglegesíteni a felhasználó által jóváhagyott befoglalásos vásárlásokat. A felhasználó a tranzakciót a Barion fizetési felületén keresztül engedélyezi. Befoglalásos fizetési tranzakció esetén a felhasználó által jóváhagyott összegnél nagyobb összeggel nem lehet a tranzakciót végrehajtani. Amennyiben a korábban jóváhagyott tranzakció a bolt oldaláról 0 forinttal kerül véglegesítésre úgy a felhasználó visszakapja a teljes összeget, ami befoglalásra került. Ha a korábban befoglalt összegnél kisebb összeggel kerül véglegesítésre a tranzakció, akkor a különbözet jóváírásra kerül a felhasználó tárcájában. Minden befoglalás véglegesítéséhet a bolt tulajdonosának azonosítania kell magát az API-n keresztül. Amennyiben a vásárló kártyával fizette ki a termékeket és a véglegesítés során a végösszeg a kevesebb, mint az eredeti összeg, akkor a vásárló kártyájára történik a visszatérítés.

Bemenet

Figyelem! Az alábbi API hívási módja megváltozott, de az eddigi működési mód továbbra is működik, csak már nem ajánlott! A változás után a bolt tulajdonosának Username/Password/POSId hármasa helyett, elég lesz egy szintén titkos, de a fizetés lebonyolításán kívül semmi másra fel nem hatalmazó POSKey megadása. A POSKey használata növeli a biztonságot, és olyan boltokban különösen előnyös, ahol a bolt tulajdonosa nem kívánja megadni Username/Password párosát a boltot üzemeltető műszaki szolgáltatónak, vagy személyzetnek.

Élesítés: Teszt és Éles rendszerben is elérhető.

Mező neve Mező típusa Kötelező Megkötések Alapértelmezett érték Leírás Formátum / Példa
POSKey Guid Kötelező nincs nincs A Barion által generált titkos azonosító, amely fizetések indítására felhatalmaz, de a Barion tárcához hozáférést nem biztosít. 999FFDDA-04FF-333F-CCCC-345FCB555FFC
PaymentId Guid Kötelező nincs nincs Fizetési tranzakció azonosítója. Ez az azonosító a Barion által generált azonosító. f1762ec3-571f-49ec-ab4c-8d4edc1c61b6
Transactions PaymentTransaction[] Kötelező nincs nincs Tranzakciót tartalmazó tömb.

Transactions[]

A tömb elemei a tranzakció beazonosításához tartalmaznak információt.

Mező neve Mező típusa Kötelező Megkötések Alapértelmezett érték Leírás Formátum / Példa
TransactionId Guid Kötelező nincs nincs Tranzakció azonosítója. Ez az azonosító a Barion által generált azonosító. ba18a01f-73ef-4062-93e1-052e6f35ce9e
Total decimal Kötelező nincs nincs A tranzakció végösszege. Az eredetileg megadott összeg ezzel lesz felülírva. Nem lehet nagyobb, mint az eredetileg megadott összeg.
Comment string Opcionális nincs nincs A tranzakcióhoz tartozó megjegyzés. Az eredetileg magadott megjegyzés ezzel lesz felülírva.
Items Item[] Opcionális nincs nincs A tranzakcióhoz tartozó termékek. Az eredetileg magadott termékek az itt megadottakkal lesznek felülírva.
PayeeTransactions PayeeTransaction[] Opcionális nincs nincs A tranzakcióhoz tartozó további tranzakciók, mint például díjvonások.

PayeeTransactions[]

A tömb elemei egy fizetési tranzakcióhoz tartozó díjvonásokat és egyéb vonatkozó tranzakció azonosításához tartalmaznak információt.

Mező neve Mező típusa Kötelező Megkötések Alapértelmezett érték Leírás Formátum / Példa
TransactionId Guid Kötelező nincs nincs Tranzakció azonosítója. Ez az azonosító a Barion által generált azonosító. d9f631a4-1e1c-4fb7-9c89-4daeed2176e1
Total decimal Kötelező nincs nincs A tranzakció végösszege. Az eredetileg megadott összeg ezzel lesz felülírva. Nem lehet nagyobb, mint az eredetileg megadott összeg.
Comment string Opcionális nincs nincs A tranzakcióhoz tartozó megjegyzés. Az eredetileg magadott megjegyzés ezzel lesz felülírva.

Kimenet

A befoglalás véglegesítésére adott válasz sikertelen esetben egy Errors tömb formájában kerül vissza a hívó oldalára. Sikeres esetben a tranzakciók Barion rendszerben ismert adatai kerülnek a hívóhoz.

Mező Típus Leírás Formátum / Példa
IsSuccessful bool A tranzakció végrehajtásának az eredménye. true
PaymentId Guid A tranzakció azonosítója. 50146b9f-fcbd-49af-b35f-bef761eca783
PaymentRequestId string A bolt által megadott tranzakció azonosító . TesztTranzakcióAzonosító01
Status PaymentStatus A tranzakció státusza. Succeeded
Transactions TransactionResponseModel[] A fizetési tranzakcióhoz tartozó tranzakciók.

Fontos: a Transactions tömb tartalma eltérő attól függően, hogy Barion tárcával vagy bankkártyával történt a fizetés! Előbbi esetben az eredeti tranzakció(k) mellé létrejön egy-egy új, melyek befejezett bolti vásárlás típusú tranzakciók. A jövőbeli API hívásoknál (pl. Refund) ezt kell használni! Kártyás fizetés esetén az eredeti tranzakció státusza változik, de továbbra is használható későbbi API hívásokhoz.

Példák

Bemenet

{
    POSKey: "999FFDDA-04FF-333F-CCCC-345FCB555FFC",
    PaymentId: "4fb5e9ea-d1b7-42be-94a1-e1f3b6f39e68",
    Transactions: [
        {
            TransactionId: "0775f818-522a-471a-90e2-1d1edd88da68",
            Total: "500",
            Comment: "Teszt tranzakció",
            Items: [
                {
                    Name: "Teszt termék",
                    Description: "Teszt termék leírása",
                    Quantity: 1,
                    Unit: "db",
                    UnitPrice: 500,
                    ItemTotal: 500,
                    SKU: "SM-01"
                }
            ],
            PayeeTransactions: [
                {
                    TransactionId: "0e5e6df6-fdcb-4789-b348-6a04be5be384",
                    Total: 30,
                    Comment: "Termelői díj"
                }
            ]
        }
    ]
}

Kimenet

Hibás eset, a tranzakció már véglegesítve lett:

{
    "Errors": [
    {
        "ErrorCode": "InvalidPaymentStatus",
        "Title": "The given payment status is invalid",
        "Description": "The given payment(4fb5e9ea-d1b7-42be-94a1-e1f3b6f39e68) status is invalid!"
    }
    ]
}

Sikeres esetben a tranzakciók információi kerülnek a válaszba:

{
    "IsSuccessful": true,
    "PaymentId": "4fb5e9ea-d1b7-42be-94a1-e1f3b6f39e68",
    "PaymentRequestId": "TEST-01",
    "Status": "Succeeded",
    "Transactions": [
    {
        "POSTransactionId": "TEST-01-01",
        "TransactionId": "0775f818-522a-471a-90e2-1d1edd88da68",
        "Status": "Succeeded",
        "TransactionTime": "2015-03-31T13:58:52.543"
    },
    {
        "POSTransactionId": "TEST-01-AGENTFEE-02",
        "TransactionId": "0e5e6df6-fdcb-4789-b348-6a04be5be384",
        "Status": "Succeeded",
        "TransactionTime": "2015-03-31T13:58:52.554"
    }
    ],
    "Errors": [ ]
}