requires_action, its
next_action tells you what the customer has to do: transfer to an
account, dial a USSD code, approve a debit at their bank, or give you
an OTP/PIN to submit.
A next action is its own object with an ID, a status and an expiry. An
activity can go through several in sequence (for example
input_pin → input_otp); activity.next_action is always the
current one, and List next actions returns
the history.
Attributes
string
Unique identifier,
uac.XXXX.YYYYYYYYYYYYYYYYYYYYYYYY. The
ugwo.activity.next_action.* webhooks identify themselves with it.object
The instruction.
action.type decides the remaining keys. See
Action types.enum
pending while the customer still has to act, fulfilled once done,
expired once it can no longer be completed. See Status.enum | null
Why the last input submission was
rejected:
invalid_input (wrong OTP/PIN; ask the customer again) or
unknown_error_try_again (temporary failure; resubmit). null if
the last submission succeeded or none has been made.string | null
When the action stops being usable, ISO-8601.
null if it doesn’t
expire. Show a countdown for bank transfers.string
ISO-8601 timestamp.
string
ISO-8601 timestamp.
Action types
- user_action
- open_url
- input_otp
- input_pin
- input_bvn
- input_birthday
Show the customer instructions. Used by
bank_transfer and
ussd. Nothing to submit; the activity completes when the
customer acts and the PSP confirms.string
user_actionstring
Display-ready sentence.
object
The same information as discrete fields, for your own UI. Keys
depend on the medium:
bank_transfer:bank_name,account_number,account_name,expires_atussd:ussd(the code to dial)
bank_transfer
ussd
Status
The Next action object