Zoorya Pay Developers

Dashen Bank

POSThttps://sandbox.eclipse.et/eclipse-conductor/rest/v1/tenants/{tenantId}/organisations/{organisationId}/payments

Recent Requests

TimeStatusUser agent

Make a request to see history.

Charges the customer's Dashen Bank account. Your server sends their phone number, Dashen Bank sends a prompt to their phone, and the payment finishes when they approve it. The result arrives on your callbackUrl, and Get a payment confirms it.

  1. 1

    Log in first

    Call Log in with your API key: copy it in the merchant portal (Developer → API keys) and paste it. Keep headerValue and tenantId from the response.

  2. 2

    Then call this endpoint with the token

    Copy headerValue from the Log in response and paste it as the Authorization header of this call — it already starts with Bearer . Put tenantId in the URL, with your organisationId and destinationWalletId from the merchant portal.

Note:

The token works for about 15 minutes (expires in the login response). Reuse it for every payment until then; after that this call returns 401 — log in again.

Dashen Bank rejects an externalUniqueId longer than 10 characters.

In Try it: first run Log in with your API key. The token and tenantId are then filled in here for you. Fill in your other IDs, and use a phone or account you control — the prompt or SMS is real.

Headers#

Authorizationstringrequired
Set in Credentials →

Paste headerValue from Log in — the whole value, including Bearer .

Path#

tenantIdintegerrequired

Your tenant ID — returned as tenantId by Log in.

organisationIdintegerrequired

Your organisation ID — merchant portal → Profile → Company.

Body#

New externalUniqueId (max 10 characters)
…

Paste it into externalUniqueId in Try it. Click New ID before every new payment.

amountnumberrequiredDefaults to 2

Amount in ETB, at most 2 decimals.

currencystringrequiredDefaults to ETB

Always ETB.

typestringrequiredDefaults to DASHEN_TOP_UP

Must be DASHEN_TOP_UP for Dashen Bank.

externalUniqueIdstringrequired

Your own unique ID for this payment. Use a new one every time — letters and digits only, at least 6 characters. At most 10 characters. Get one from the New ID box above.

destinationWalletIdintegerrequired

The wallet that receives the money — merchant portal → avatar menu → Profile → Company → Wallet ID.

callbackUrlstring

Where the final result is POSTed — the same object as the response, with a final status.

descriptionstringDefaults to Order 1001

Up to 200 characters.

additionalFieldsobject[]required

The Dashen Bank fields. Each item is { "id": "…", "value": "…" }.

Response#

paymentIdinteger

Use it with Get a payment.

statusstring

PENDING until the customer approves.

Then wait for your callback and confirm with Get a payment. Deliver only when status is SUCCESSFUL.