Sender information
Some merchant accounts must include the identity of the person who originated a payout. When your account has this requirement turned on, every payout you create through the API must include a sender block. This applies to all currencies, including NGN, and to all payment rails.
When it applies
This requirement is set by Technest for merchants that operate as money services or remittance businesses, in line with CBN rules for licensed operators. It is set per environment, so sandbox and live are independent, and it applies only to payouts created through the API. Payouts created from the dashboard are not affected.
You do not turn this on yourself. If your account is configured this way, your API calls are held to it. To ask whether your account should have this requirement, contact your Technest account manager.
What to send
Add a sender object to the payout body:
| Field | Required | Notes |
|---|---|---|
first_name | yes | Originator’s legal first name |
last_name | yes | Originator’s legal last name |
id_type | yes | One of Passport, Driver’s License, National-ID, Residence Card |
id_number | yes | Identity document number |
id_expiry | yes | Document expiry, DDMMYYYY |
date_of_birth | yes | DDMMYYYY |
country | yes | Originator’s country, ISO 3166-1 alpha-2 (two uppercase letters) |
An NGN payout that includes the sender block:
curl https://api.swappr.me/api/v1/payouts \
-H "Authorization: Bearer sk_test_..." \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"amount_minor": "500000",
"currency": "NGN",
"recipient": {
"account_number": "0690000032",
"bank_code": "044"
},
"sender": {
"first_name": "EMILY",
"last_name": "ASHWORTH",
"id_type": "Passport",
"id_number": "A1234567",
"id_expiry": "31122030",
"date_of_birth": "15081990",
"country": "GB"
},
"merchant_reference": "ORDER_001"
}'If it is missing
If your account requires sender information and any field above is missing or blank, the payout is rejected with 422 sender_info_required. The response includes a missing_fields array naming exactly which fields to add. Add them and retry.
Sender information vs sender_customer_id
These solve different problems. Do not confuse them.
- The
senderblock on this page is a compliance requirement about who originated the funds. It applies only when your account is configured to require sender information, it applies to every currency, and you satisfy it with the seven fields above. sender_customer_idis a routing field for foreign currencies (see Currencies), where each of your customers holds their own currency account. It identifies which account the funds leave from. It is never used for NGN. See International accounts.
A merchant can be subject to both, one, or neither.