Skip to content

docs(withdrawal): clarify beneficiary vs payment-instruction lifecycle#23

Open
diegopereira90 wants to merge 1 commit intomainfrom
docs/withdrawal-beneficiary-events
Open

docs(withdrawal): clarify beneficiary vs payment-instruction lifecycle#23
diegopereira90 wants to merge 1 commit intomainfrom
docs/withdrawal-beneficiary-events

Conversation

@diegopereira90
Copy link
Copy Markdown
Contributor

Description

Closes the last open item from Leone's docs review on the beneficiary scope: the withdrawal journey did not list the webhook events emitted while a payment instruction is reviewed, and it described the lifecycle as if it lived on the beneficiary itself.

Two corrections in the "Register a beneficiary" step:

1. Lifecycle correction

Before:

The beneficiary starts in PENDING_REVIEW status and transitions asynchronously to APPROVED or REJECTED after compliance review.

This was misleading. The beneficiary record itself has no status — it is created once and reused across destinations. The lifecycle (PENDING_REVIEW → APPROVED/REJECTED) lives on each payment instruction.

After:

The beneficiary record itself has no status — it is created once and reused across destinations. Each payment instruction is reviewed individually: it starts in PENDING_REVIEW on creation and transitions asynchronously to APPROVED or REJECTED. The first instruction on a new beneficiary triggers the full compliance review; instructions added later to the same beneficiary go through a reduced check.

The "reduced check" line communicates the reuse benefit without exposing the internal compliance rules.

2. Webhook events at this step

Mirrors what the "Submit the operation" step already does for OPERATION_*. Adds an explicit list of the three beneficiary webhook events so integrators know what to subscribe to:

  • BENEFICIARY_PAYMENT_INSTRUCTION_CREATED (fires immediately on creation)
  • BENEFICIARY_PAYMENT_INSTRUCTION_APPROVED / BENEFICIARY_PAYMENT_INSTRUCTION_REJECTED (one of these once review completes)

3. Step title

Renamed "Register a beneficiary (one time per destination)""Register a beneficiary and add a payment instruction". The original subtitle was misleading because one beneficiary can carry multiple payment instructions over time.

Coverage of Leone's review (beneficiary scope)

# Item Status
1 Eventos faltando em API reference ✅ Already covered — events/beneficiary/ has the three pages aligned with apis/fx-payment/openapi.yml.
2 Guides KYC/KYB ✅ Already covered — guides/kyc-kyb.mdx (#22).
3 Eventos emitidos a cada step em Guides This PR — withdrawal step 1 now lists the three BENEFICIARY_PAYMENT_INSTRUCTION_* events.
4 Double-check requests/responses ✅ Already covered — apis/fx-payment/openapi.yml CreateBeneficiaryRequest matches fx-payment's current DTO (holder.address required, no nationality, same shape).

Type of change

  • Documentation update (correcting a description + adding event names)
  • Bug fix
  • New feature
  • Breaking change

🤖 Generated with Claude Code

Two corrections to the "Register a beneficiary" step in the withdrawal
journey, addressing the open item from Leone's docs review:

1. The beneficiary record itself has no status. Status, review, and
   webhook events are tracked at the payment-instruction level.
   Re-word to make that explicit and to frame the beneficiary as a
   reusable record across destinations — the first instruction on a
   new beneficiary triggers the full compliance review, subsequent
   instructions on the same beneficiary go through a reduced check
   (without exposing the internal rules in detail).

2. List the webhook events emitted at this step:
   BENEFICIARY_PAYMENT_INSTRUCTION_CREATED, _APPROVED, _REJECTED — so
   integrators know what to subscribe to for the review outcome.
   Mirrors what the "Submit the operation" step already does for
   OPERATION_REQUESTED / _COMPLETED / _FAILED.

Step title also adjusted from "Register a beneficiary (one time per
destination)" — that subtitle was misleading since one beneficiary
can carry multiple payment instructions over time. New title:
"Register a beneficiary and add a payment instruction".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@mintlify
Copy link
Copy Markdown

mintlify Bot commented May 8, 2026

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
tracefinance 🟢 Ready View Preview May 8, 2026, 1:14 PM

💡 Tip: Enable Workflows to automatically generate PRs for you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant