- 1. What the Withdraw System solves
- 2. Conditions for withdrawals
- 3. Submitting a request: interface and data
- 4. What happens when a request is created
- 5. The Withdraw Requests admin page
- 6. Approvals, rejections, and refunds
- 7. Notifications and transparency
- 8. Extending with hooks
- 9. Important: the theme does not transfer money
- 10. Best practices for safe operation
- Conclusion
1. What the Withdraw System solves
The Withdraw System provides a standardized process for authors to request Cash withdrawals, locks the balance immediately, records the request in the database, and allows admins to approve or reject transparently. This ensures accountability and a smooth user experience.
2. Conditions for withdrawals
- Author Mode must be enabled.
- Withdrawals must be enabled.
- User must have a valid author role (e.g.
authorormanga_author).
3. Submitting a request: interface and data
Authors open the Inkstone withdraw modal, enter an integer amount within the configured min/max range, and optionally add a Note. The Note field should specify the payment method (e.g. “Momo 09xxxxxxx”, “PayPal [email protected]”, “Bank ABC, Account 123…, Holder John Doe”) so admins can process payouts easily.
4. What happens when a request is created
- Balance lock: the requested Cash amount is deducted immediately from the author’s balance.
- Transaction log: a record is created for auditing and reconciliation.
- Pending entry: the request is stored with status pending.
- Admin notification: an inbox notification is sent to admins with a direct link to the Withdraw Requests admin page.
5. The Withdraw Requests admin page
Admins manage requests through the Withdraw Requests page inside Init Manga Settings:
- Pending table: lists requests waiting for review, including author details, amount, user note, and request time.
- Recently Processed table: shows approved or rejected requests with status, admin note, processor, and updated time.
Admins can Approve or Reject requests inline, optionally adding internal notes.
6. Approvals, rejections, and refunds
- Approval: request status is updated, the processor recorded, and the author is notified that the request has been approved.
- Rejection: the Cash is refunded automatically to the author’s account, a withdraw_reject_refund log is created, and the author is notified with the rejection reason.
7. Notifications and transparency
- Authors are notified when a request is submitted, and again when it is approved or rejected.
- All important steps are logged for full auditability and reconciliation.
8. Extending with hooks
The theme provides hooks so you can connect your own systems. When a request is successfully created, the following hook fires:
do_action(
'init_manga_withdraw_request_created',
$request_id,
$user_id,
$amount,
$user_note
);
Common use cases include:
- Sending custom email alerts to admins or accountants.
- Forwarding notifications to Slack, Telegram, or helpdesk systems.
- Automatically creating payout tickets in your workflow tool.
- Integrating with payment gateways for semi-automated payouts, if security and compliance allow.
9. Important: the theme does not transfer money
Init Manga does not handle actual money transfers. Reasons include:
- Different businesses use different payout methods (PayPal, bank transfers, e-wallets, local gateways).
- Payouts involve legal, compliance, and risk control (e.g. KYC/AML).
- Preventing false expectations that “the theme automatically pays authors.”
Therefore, payouts must be manually processed by admins using the payment details provided in the Note field, or automated by your own custom integrations via the provided hook.
10. Best practices for safe operation
- Clear payout policy: define frequency, methods, and required payment details.
- Standardize notes: require authors to always provide complete payout details in the Note.
- Regular audits: reconcile balances and logs monthly.
- Strict permissions: limit who can process requests and record the processor for traceability.
- Database backups: always back up withdrawal tables and logs before upgrades.
Conclusion
The Withdraw System in Init Manga provides a transparent and safe way for authors to request payouts. It covers request submission, balance locking, logging, notifications, and admin-side approval or rejection with refunds. Actual payouts are the responsibility of administrators, or can be automated using the init_manga_withdraw_request_created hook. This approach ensures flexibility, compliance, and adaptability across different business models.
Comments