Understand code values

Plain-English meanings and rules for every allowed short code and enum value.

Understand code values

Some JSON fields use a short code instead of a sentence. A code is an enum value: one value chosen from a fixed list. This page explains what each value means, where it is used, and whether it is currently accepted.

Codes are case-sensitive. Send CLRG, not clrg or Clearing. Reject a value that is absent from the documented list. Do not guess its meaning.

Know who chooses each value

Blinc sends the request. The institution validates the request and returns the response. Therefore,
most request codes are not values the institution chooses or replaces. The institution accepts a
supported value from Blinc or returns the documented rejection. The institution chooses only the
codes in its response.

There are no silent defaults. If a required field is missing, the institution must reject the
request; it must not insert a value. In the table below, standard value means the exact value used
for the normal documented flow. It does not mean "use this when the field is missing."

FieldWho sends itStandard value for the documented flowWhat the institution must do
SttlmMtdBlincCLRGAccept CLRG for the documented clearing flow. Accept another listed value only when onboarding explicitly enables it.
ClrChanlBlincRTNS for Debit Authorization, Credit Transfer, and ReverseValidate the value against the operation and the institution's onboarding configuration. Do not replace it.
ChrgBrBlincSLEV for Debit Authorization and Credit TransferValidate it against the charge amount and settlement agreement.
SeqTpBlincDebit Authorization: OOFF; Credit Transfer: nullValidate it against the operation. null is allowed only where the operation says the field is optional.
Frqcy.TpBlincAccount Linking example: MNTHValidate it against the customer consent. There is no universal frequency default.
PaymentMethodBlincNo universal value; it comes from the payment's initiating flowAccept only the listed value that Blinc supplied. DEFAULT means no more specific channel classification was available; it is not permission to omit the field.
CdtDbtIndBlincCredit Notification: CRDTReject DBIT on Credit Notification because that operation reports money entering the account.
Ntry.StsBlincCredit Notification: BOOKTreat PDNG as not yet booked; do not report it as a completed credit.
Authentication fieldsBlincDEVICE_LOCAL_AUTH, DEVICE_BIOMETRIC_STRONG, the hardware registered for the key, and CUSTOMERValidate the complete combination and the positive numeric key_id. Do not manufacture missing authentication evidence.
Payment response TxStsInstitutionSuccess: ACSC; business rejection: RJCTReturn ACSC only after the operation is committed. Return RJCT with a reason code when it is not.
Account Linking response statusInstitutionSuccess: ACTVReturn ACTV only after the account link has been created and can be used.
Account Unlinking response statusInstitutionSuccess: CANCReturn CANC only after the account link can no longer be used.
CurrencyBlincNGNValidate NGN against the account and every related amount. Do not infer currency when it is missing.

Payment method

PaymentMethod says how the customer or sending party started the payment.

ValueSimple meaningWhen to use it
DEFAULTBlinc did not receive a more specific initiation-channel classification for this payment.Accept only where the operation allows it. The canonical Credit Transfer example uses it. It does not mean that the JSON field may be omitted.
STATICQRThe customer scanned a QR code whose contents were prepared before this transaction.Use when the QR code does not contain a newly generated transaction amount and reference. Validate the amount and merchant details supplied through the payment flow.
DYNAMICQRThe customer scanned a QR code generated for this transaction.Use when the QR code contains transaction-specific values such as amount or reference.
TAP2PAYThe customer tapped a device or card-like credential at a supported terminal.Use for the agreed contactless tap flow. Terminal details must match the payment.
P2PA person-to-person or account-to-account flow without a merchant terminal.Use when the payment was initiated directly between parties. Merchant fields may be absent only where the operation allows it.

Never send an empty string or a numeric enum position. DEFAULT is a public string value only for an operation that explicitly allows the fallback described above.

Settlement method

SttlmMtd says how the participating institutions settle the payment.

ValueSimple meaningWhen to use it
CLRGSettlement happens through the named clearing system.Use when ClrSys and ClrChanl identify the agreed clearing route. This is the value used in the examples.
INDAThe institution receiving the instruction is responsible for settlement.Use only when the onboarding agreement assigns settlement to the instructed institution.
INGAThe institution sending the instruction is responsible for settlement.Use only when the onboarding agreement assigns settlement to the instructing institution.
COVESettlement uses a separate cover payment.Use only when a separately agreed cover-payment flow exists. Do not use it for the normal clearing example.

The operation must use the settlement method agreed during onboarding. An institution must not switch methods because another value is technically recognised.

For the documented flow, Blinc sends CLRG. The institution validates it; the institution does not
return a settlement-method value in the response.

Clearing channel

ClrChanl says which clearing route carries the instruction.

ValueSimple meaningWhen to use it
RTGSReal-time gross settlement. Each payment settles separately.Use only for an agreed gross-settlement route.
RTNSReal-time net settlement. Payments are processed in real time and settled on a net basis.Use for the agreed real-time net route shown in the examples.
MPNSMass-payment net settlement. A group of payments is settled on a net basis.Use only for an agreed batch or mass-payment route.
BOOKBook transfer inside one institution or ledger arrangement.Use only when no external clearing movement is required and the onboarding agreement permits it.

ClrSys.Prtry names the clearing system. The examples use BLINC. This value identifies the agreed system; it is not a free-form description.

Core Switch currently sends RTNS for Debit Authorization, Credit Transfer, and Reverse. The
institution validates that value; it does not choose or replace the clearing channel. RTGS,
MPNS, and BOOK remain recognised meanings but are used only if a later onboarding agreement and
the sending implementation explicitly select them.

Charge bearer

ChrgBr says who bears transaction charges.

ValueSimple meaningRequired relationship
CREDThe creditor or beneficiary bears the charges.The credited amount and charge details must show the deduction correctly.
DEBTThe debtor or sender bears the charges.The debit and charge records must show that the sender pays the charge.
SHARCharges are shared between the parties.Charge records must explain each party's part.
SLEVCharges follow the rules of the selected service level.Use only when the service-level agreement defines the charge treatment. This is the value used in the examples.

Core Switch currently sends SLEV for Debit Authorization and Credit Transfer. The institution
validates the supplied value and does not substitute another charge bearer.

Account link sequence type

SeqTp describes whether the debit authorization is one-off or recurring.

ValueSimple meaningRule
FRSTFirst collection in a repeating series.Accept once at the start of a recurring account link.
RCURA normal repeating collection.Use only when a separately agreed recurring-collection flow exists.
FNALFinal collection in a repeating series.Do not accept another recurring collection after the final one.
OOFFOne collection only.The account link must not be used for another collection after success.

Debit Authorization uses OOFF for the agreed one-off authorization flow. Credit Transfer uses
null because collection sequencing does not apply. Do not turn a missing required value into
OOFF; reject it.

Account link frequency

Frqcy.Tp describes how often an account link expects collections.

ValueSimple meaning
ADHONo fixed schedule. A collection occurs only when separately requested and allowed.
DAILDaily.
WEEKWeekly.
MNTHMonthly.
YEARYearly.

Frequency does not by itself authorise a debit. The active account link, amount rules, date range, customer approval, and duplicate checks still apply.

The Account Linking example uses MNTH, but frequency comes from the customer's recorded consent.
There is no universal value the institution should assume.

Payment result status

The response status describes the business result. HTTP 200 does not replace it.

ValueSimple meaningIs the action final?
RCVDThe instruction was received but has not passed later checks.No.
ACTCBasic technical checks passed.No.
ACFCFunds checks passed.No, unless a separate operation rule says otherwise.
ACSPSettlement is in progress.No.
ACWCAccepted with a documented change.Only where the operation explicitly allows the change.
ACSCAccepted and recorded or settled as required by the operation.Yes for the documented success flows.
ACCCAccepted and credited to the creditor.Yes when the operation specifically uses this status.
PDNGMore processing is required.No. Reconcile or wait for a later result.
PARTOnly part of the instruction was accepted.Not supported for full-only operations such as Reverse.
ACWPAccepted without posting to the account.Not a completed debit or credit. Use only when explicitly agreed.
RJCTRejected. Read the reason code and explanation.Yes. No financial action must be reported as completed.
CANCCancelled.Yes for the cancelled instruction or account link.
BLCKBlocked from processing.Yes until the blocking condition is resolved through the agreed process.

Operation pages state which statuses they allow. Do not return a technically known status where the operation permits only ACSC or RJCT.

For the current payment-operation responses, the institution returns ACSC after a completed
business action and RJCT when the action did not complete. No other status is a default.

Account-link status

ValueSimple meaning
ACTVThe account link is active and may be used when every other debit check passes.
CANCThe account link was cancelled and must reject later debits.
SUSPThe account link is temporarily unavailable.
PNDGThe link is not yet final. Do not treat it as active.
EXPIThe account link passed its end date or expiry rule.
COMPThe account link completed its permitted use, such as a completed one-off account link.

For a successful Account Linking response, the institution returns ACTV. For a successful Account
Unlinking response, it returns CANC. Do not return ACTV merely because the HTTP call succeeded.

Notification entry values

FieldValueSimple meaning
CdtDbtIndCRDTThe ledger entry adds money to the account. Credit Notification requires this value.
CdtDbtIndDBITThe ledger entry removes money. It is not accepted by Credit Notification.
StsBOOKThe credit entry is booked in the ledger.
StsPDNGThe credit entry is still pending. Do not report it as booked.

Credit Notification's documented completed-credit request uses CdtDbtInd: CRDT and Sts: BOOK.
Blinc sends both values. The institution validates them and does not convert PDNG to BOOK.

Authentication values

These fields describe the authentication already performed for Debit Authorization. They do not tell an institution how to authenticate a customer during Account Linking.

Authentication context

ValueSimple meaningCurrent support
DEVICE_LOCAL_AUTHThe registered customer device made the authentication decision locally.Accepted.
PROXIMITY_BIOMETRICAuthentication used a nearby biometric interaction.Reserved; reject for the current flow.
DELEGATEDAnother party performed authentication for the customer.Reserved; reject for the current flow.

Authentication type

ValueSimple meaningCurrent support
DEVICE_BIOMETRIC_STRONGThe registered device completed its strong biometric check.Accepted for the documented conformance example.
DEVICE_PINThe registered device completed its device PIN check.Accept only when explicitly enabled for the institution and consistent with the registered authenticator.

Authentication hardware

ValueSimple meaning
SECURE_ENCLAVEThe authenticator key is protected by the device's secure enclave.
STRONGBOXThe authenticator key is protected by Android StrongBox hardware.
TRUSTED_EXECUTION_ENVIRONMENTThe authenticator key is protected by a trusted execution environment.

Authentication actor

ValueSimple meaningCurrent support
CUSTOMERThe account owner or customer performed the authentication.Required for the documented device-local flow.
DELEGATEAnother person or service acted for the customer.Reserved; reject for the current flow.

Missing, numeric, empty, Unknown, DEFAULT, or unrecognised authentication values must be rejected. The values must also form one consistent combination.

The complete standard combination is:

{
  "auth_context": "DEVICE_LOCAL_AUTH",
  "auth_type": "DEVICE_BIOMETRIC_STRONG",
  "auth_binding": {
    "hardware": "SECURE_ENCLAVE",
    "key_id": 42
  },
  "auth_actor": "CUSTOMER"
}

42 is an example only. Blinc sends the positive numeric database ID of the customer's registered
authenticator. The institution must look up that exact ID; it must never substitute 42, 0, or a
locally invented value.

Cancellation and Reverse reasons

ValueSimple meaning
CUSTThe customer requested the cancellation or Reverse.
DUPLThe original instruction or account link was duplicated.
TECHA technical problem requires the action.
FRADFraud is suspected. Apply the institution's higher-risk controls.

Blinc sends the reason in the request. The Account Unlinking example uses CUST; the Reverse example
uses TECH. Neither is a silent default. Validate the reason that was actually supplied.

Remittance adjustment reasons

AdjstmntAmtAndRsn.Rsn explains why an invoice or referred-document amount changed. Blinc sends it
only when structured remittance contains an adjustment.

ValueSimple meaningWhen it is valid
COMMCommission was added or deducted.The adjustment amount represents an agreed commission.
COSTA cost or expense changed the amount.The supporting transaction or agreement identifies that cost.
DISCA discount reduced the amount due.The referenced document permits the discount.
EARLAn early-payment allowance reduced the amount.The payment met the documented early-payment condition.
PENFA penalty or fee changed the amount.The referenced agreement permits that penalty or fee.
TAXTax changed the amount.The tax treatment and amount can be reconciled.
ADJSAnother documented adjustment applies.Use only when none of the more specific listed reasons fits; explain it in AddtlInf.
CRENA credit note reduced the amount due.The referenced credit note exists and reconciles with the adjustment.

There is no default adjustment reason. If there is no adjustment, omit the optional adjustment
object or send null as required by the operation schema.

Credit Notification is the one exception: its RmtInf.Strd.RfrdDocAmt.AdjstmntAmtAndRsn is
required, not optional, and Rsn must always equal PAYMENT_FACILITATOR; none of the codes
above apply there. It carries FeeBreakdown.PaymentFacilitatorShare (amount, currency, and
institution identity), never a discount or invoice adjustment. A zero payment-facilitator share
must still be sent explicitly with Rsn set to PAYMENT_FACILITATOR, not omitted. See
Credit Notification.

Identifier schemes

ValueSimple meaning
NUBANThe value is a Nigerian Uniform Bank Account Number.
BVNThe value is a Bank Verification Number. Treat it as sensitive identity data.
BLINCThe value is an identifier assigned or recognised within the Blinc contract, such as a creditor identifier or clearing-system name.
OTHRNo more specific documented category code applies. It does not permit an undocumented value in another field.

Currency

The current examples use NGN, Nigerian naira. Send currency as a three-letter uppercase code. The value must match the account, instructed amount, settlement amount, charges, and original transaction where those fields apply. Never send DEFAULT or a numeric enum position.

For the current contract, NGN is the only documented currency value. Blinc sends it and the
institution validates it. A missing currency must be rejected; it must not be silently set to NGN.

Rejection reason codes

The rejection codes used by this contract, including MD01, RC01, AG01, DUPL, NOOR, AM09, and AM11, are explained in Return clear errors and handle repeated deliveries. That page tells the institution when to return each code; the institution does not call or retry a Blinc operation endpoint.

Next

Build the first operation in the customer journey: Account Linking.


Did this page help you?