EPC API for calling Electrum (26.1.1)

The Electrum EPC API for calling Electrum is an asynchronous API that allows Corporate Clients to participate in various nationally regulated payment schemes This document describes the operations exposed by Electrum for partners to consume in order to initiate outbound or respond to inbound payments.

Download OpenAPI description
Overview
Languages
Servers
Payments API sandbox

https://example.com/path/payments/api/v1/

credit-transfer

Operations related to credit transfer transactions.

Operations

scheme-inquiry

Operations that are related to retrieving information from industry for a particular scheme.

Operations

request-to-pay

Operations which pertain to a request for payment from a creditor to a debtor

Operations

Schema

MandateInformation

Provides a reference to the direct debit mandate signed between the creditor and the debtor.

Note: This model is not relevant to the ZA_EFT scheme. Electrum will not process these fields for EFT payments (e.g. tracking days are not honoured for EFT).

mandateIdentificationstring<= 35 characters

Unique identification to unambiguously identify the mandate. This links the direct debit collection to the original mandate.

For DebiCheck, this field contains the scheme-assigned Mandate Reference Number which is the authoritative identifier for linking collections to mandates.

trackingDaysinteger[ 0 .. 99 ]

Specifies the number of days the direct debit instruction must be tracked. The debtor has this period to dispute the collection.

{ "mandateIdentification": "string", "trackingDays": 99 }

Amount

currencystring^[A-Z]{3}$required

A valid, active currency code as defined in ISO 4217 indicating the currency of the amount.

valuenumber(double)>= 0required

The payment amount in the denomination of the indicated currency, in the format '. with the number of minor units (fractional digits) compliant with the number of decimal places published in ISO 4217.

Currency CodeExampleValidNotes
USD10.0Represents 10 USD and no cents.
USD10.00
USD10.001US dollar does not support three decimal places.
JPY10.0Represents 10 Japanese Yen.
JPY10.1Japanese Yen does not support decimal places.
{ "currency": "string", "value": 0.1 }

TransactionAmounts

bankSettlementAmountobject(Amount)required
bankSettlementAmount.​currencystring^[A-Z]{3}$required

A valid, active currency code as defined in ISO 4217 indicating the currency of the amount.

bankSettlementAmount.​valuenumber(double)>= 0required

The payment amount in the denomination of the indicated currency, in the format '. with the number of minor units (fractional digits) compliant with the number of decimal places published in ISO 4217.

Currency CodeExampleValidNotes
USD10.0Represents 10 USD and no cents.
USD10.00
USD10.001US dollar does not support three decimal places.
JPY10.0Represents 10 Japanese Yen.
JPY10.1Japanese Yen does not support decimal places.
instructedAmountobject(Amount)
{ "bankSettlementAmount": { "currency": "string", "value": 0.1 }, "instructedAmount": { "currency": "string", "value": 0.1 } }

transactional

Operations

financial

Operations

identifier-determination

Operations

bulk

Operations

refund

Operations