rule_id. This links the transaction to the rule for analytics and automatically uses the rule's name and type in the transaction record. The rule must be active and not deleted.points.earned webhook event is fired after a successful credit, containing the customer_uid, points, rule_id, and ledger_id.Idempotency-Key header to prevent duplicate credits.curl --location --request POST '/points/credit' \
--header 'Idempotency-Key: credit-cust123-20260225-001' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"customer_uid": "cust_abc123def456",
"points": 50,
"rule_id": 42,
"narration": "Reward for purchase #12345",
"order_id": "order_98765"
}'{
"status": true,
"message": "Points credited successfully",
"data": {
"id": 1284,
"merchant_id": "merch_xyz789",
"customer_uid": "cust_abc123def456",
"amount": 50,
"transaction_type": "member_points_adjustment_credit",
"reference_id": "credit_a1b2c3d4-e5f6-7890",
"title": "Points Credit",
"narration": "Credited 50 points for purchase #12345",
"balance_after": 1550,
"created_at": "2026-02-20T14:30:00.000Z"
}
}