You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add ChargeCardTokenAsync for charging a tokenized reusable card
Implements the previously-"Planned" card tokenization endpoint
(POST /api/v1/merchant/cards/charge-card-token) that had been parked since
the original scaffolding and never revisited while other clients got built
out. The response shape matches the existing Transaction model exactly -
TransactionCardDetails already had cardToken/reusable/supportsTokenization
fields from GetTransactionAsync, so no new response model was needed.
Also updates the README to drop the stale "early release (pre-1.0)" status
line and list everything actually shipped since it was last written.
Copy file name to clipboardExpand all lines: docs/COMPATIBILITY.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,7 +50,7 @@ Status legend:
50
50
|`IMonnifyCollectionsClient.GetPaycodeAsync`|`GET /api/v1/paycode/{paycodeReference}`|**Implemented**| Returns masked paycode; response omits `requestSuccessful` field (handled via nullable envelope) |
51
51
|`IMonnifyCollectionsClient.CancelPaycodeAsync`|`DELETE /api/v1/paycode/{paycodeReference}`|**Implemented**| Returns the cancelled paycode object; sandbox discovered undocumented `cancelDate` field |
52
52
|`IMonnifyCollectionsClient.GetUnmaskedPaycodeAsync`|`GET /api/v1/paycode/{paycodeReference}/authorize`|**Implemented**| Returns the unmasked paycode value (e.g. `04797046` instead of `******46`) |
|`IMonnifyCollectionsClient.ChargeCardTokenAsync`|`POST /api/v1/merchant/cards/charge-card-token`|**Implemented**|Charges a previously tokenized, reusable card in one call - no OTP/3DS follow-up. Response shape matches `Transaction` exactly (`cardDetails.cardToken`/`.reusable` already modeled there). Automatic retry disabled, same reasoning as `ChargeAsync` - directly debits a card. Not yet sandbox-verified end-to-end (needs a `reusable: true` card token from a prior successful charge, which the sandbox BIN issue on `ChargeAsync` currently blocks)|
54
54
|*(Collections — Payment Links)*| N/A | Out of scope | Dashboard-only feature, no API |
|`IMonnifyDisbursementsClient.AuthorizeSingleTransferAsync`|`POST /api/v2/disbursements/single/validate-otp`|**Implemented**| For a transfer with status `PENDING_AUTHORIZATION`|
0 commit comments