The Merchant services API allows you to access Rabo OmniKassa and extract your payment history.
Using the API
After your account set up is complete, subscribe the Merchant services API to your application.
Request and Response
The POST Payment and GET Status requests must contain a digital signature. You can generate a digital signature using the private key of your certificate. For the Sandbox environment, you can use an example certificate available in the Signing documentation.
POST
- You can query transaction data with POST/transactions.
<https://api-sandbox.rabobank.nl/openapi/sandbox/omnikassa/merchant/transactions>
{
"transactions": [
{
"omnikassa_transaction_id": "f37fcd46-600a-45f2-b6e9-d9522074d953",
"date_time": "2020-06-08T14:41:04+02:00",
"created_or_updated_at": "2020-09-21T17:23:01+02:00",
"reference": "000016",
"consumer_name": "John Doe",
"shop_id": 4894,
"shop_name": "Foodstuff Online",
"commercial_unit_id": 37020,
"commercial_unit_name": "Amsterdam",
"poi_id": 39544,
"poi_name": "Foodstuff Restaurant Amsterdam",
"payment_channel": "PIN",
"payment_brand": "VISA",
"transaction_status": "SETTLED",
"transaction_type": "PAYMENT",
"transaction_amount": {
"amount": 0.3,
"currency": "EUR"
},
"equens_transaction_id": "TDS81360567549317230",
"terminal_id": "77XVR0",
"payout_level": "POI",
"payout_reference": "Betaalpunt_77XVR0 20200609_1",
"omnikassa_contract_id": 1,
"merchant_name": "Foodstuff",
"refundable": false
}
]
}
You can initiate a refund with POST/transactions/{transactionId}/refunds
<https://api-sandbox.rabobank.nl/openapi/sandbox/omnikassa/merchant/transactions/22b36073-57a3-4c3d-9585-87f2e55275a5/refunds>
{
"refund_id": "cc094aeb-89f7-4123-b60b-ccf83a16320d",
"transaction_id": "22b36073-57a3-4c3d-9585-87f2e55275a5",
"created_at": "2020-01-01T13:00:00+01:00",
"refund_money": {
"amount": 230,
"currency": "EUR"
},
"vat_category": "HIGH",
"payment_brand": "IDEAL",
"status": "PENDING",
"description": "Customer request for refund"
}
]
}
You can query payout data with POST/payouts
POST <https://api-sandbox.rabobank.nl/openapi/sandbox/omnikassa/merchant/payouts>
{
"payouts": [
{
"payout_id": "a558927a-9fe0-4925-b371-ec59971d2811",
"payout_datetime": "2020-06-09T08:00:00+02:00",
"payout_reference": "Betaalpunt_77XVR0 20200609_1",
"payout_level": "POI",
"payout_amount": {
"amount": 0.5,
"currency": "EUR"
},
"payout_status": "SETTLED",
"payout_iban": "NL76RABO000000000",
"number_of_transactions": 2,
"entity_name": "77XVR0",
"contract_id": 1,
"shop_id": 4894,
"commercial_unit_id": 37020,
"poi_id": 39544,
"terminal_id": "77XVR0"
},
]
}
]
}
GET
You can retrieve a refund for a payment transaction with GET/transactions/{transactionId}/refunds/{refundId}
GET <https://api-sandbox.rabobank.nl/openapi/sandbox/omnikassa/merchant/transactions/22b36073-57a3-4c3d-9585-87f2e55275a5/refunds/926a0c88-aa9e-4897-8bc6-0c4f770cc8a5>
{
"refund_id": "926a0c88-aa9e-4897-8bc6-0c4f770cc8a5",
"refund_transaction_id": "4db87f7a-d287-443e-abf8-92500551aaa3",
"transaction_id": "22b36073-57a3-4c3d-9585-87f2e55275a5",
"created_at": "2020-01-01T13:00:00+01:00",
"updated_at": "2020-01-02T13:00:00+01:00",
"refund_money": {
"amount": 230,
"currency": "EUR"
},
"vat_category": "HIGH",
"payment_brand": "IDEAL",
"status": "SUCCEEDED",
"description": "Customer request for refund"
}
]
}
You can retrieve refundable details of a payment transaction with GET/transactions/{transactionId}/refundable-details
GET <https://api-sandbox.rabobank.nl/openapi/sandbox/omnikassa/merchant/transactions/22b36073-57a3-4c3d-9585-87f2e55275a5/refundable-details>
{
"transaction_id": "22b36073-57a3-4c3d-9585-87f2e55275a5",
"refundable_money": {
"amount": 230,
"currency": "EUR"
},
"expiry_datetime": "2020-06-01T13:00:00+02:00"
}
]
}
You can retrieve payout information details with GET/payouts/{payoutId}
GET <https://api-sandbox.rabobank.nl/openapi/sandbox/omnikassa/merchant/payouts/a558927a-9fe0-4925-b371-ec59971d2811>
{
"payout_id": "a558927a-9fe0-4925-b371-ec59971d2811",
"payout_datetime": "2020-06-09T08:00:00+02:00",
"payout_reference": "Betaalpunt_77XVR0 20200609_1",
"payout_level": "POI",
"payout_amount": {
"amount": 0.5,
"currency": "EUR"
},
"payout_status": "SETTLED",
"payout_iban": "NL76RABO000000000",
"number_of_transactions": 2,
"entity_name": "77XVR0",
"contract_id": 1,
"shop_id": 4894,
"commercial_unit_id": 37020,
"poi_id": 39544,
"terminal_id": "77XVR0",
"payments_amount": {
"amount": 0.5,
"currency": "EUR"
},
"refunds_amount": {
"amount": 0,
"currency": "EUR"
}
}
]
}
For more use case read: Additional use cases