Revoke a Mandate
On This Page
When you revoke a mandate, any pending direct debits linked to that mandate are canceled. No notifications are sent.
When you revoke a mandate with no pending direct debits, the
Bacs
scheme or the customer’s bank notifies you of any subsequent direct debit events.You can no longer send a direct debit request using the mandate ID after revoking a
mandate. Customer payments cannot be made against a revoked mandate.
You can revoke a mandate under these circumstances:
- The customer requests that you revoke the mandate.
- The customer closes their account with you.
- Mandate information is out of date.
Endpoints
Set the
apRevokeMandateService_run
field
to true
, and send the request to one of these
endpoints:Production:
https://ics2ws.ic3.com/commerce/1.x/transactionProcessor
Test:
https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor
Response Statuses
The revoke mandate service responds with one of these statuses in the
apRevokeMandateReply_status
field:- Failed: the revoke mandate request is not accepted.
- Revoked: the revoke mandate request is successfully processed.
The revoke mandate service also responds with a reason code in the
apRevokeMandateReply_reasonCode
field. For more
information about reason codes, see the Reason Codes for Bacs Direct Debits for the Simple Order API.Required Fields for Revoking a Mandate
- Set to.STL
- Set totrue.
- mandateID
- Set to.bacs
Optional Field for Revoking a Mandate
Test Triggers for Revoking a Mandate
In the
Cybersource
test environment, you can
simulate specific response messages that you receive from transaction requests by
including certain values in your transaction requests. The simulated environment enables
you to become familiar with the response messages and develop methods for error
handling.Your account must be configured for testing trigger
values. Contact your
Cybersource
account manager for more
details.Test Endpoint
For test transactions, send an API request to the test endpoint.
Test:
https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor
Trigger Values
To test, send a revoke mandate request, and set the
merchantReferenceCode
field to a value listed in the Trigger Value
column. The Cybersource
response status is returned in the apRevokeMandateReply_status
field.Cybersource Response Status | Trigger Value |
---|---|
Revoked | Any value except
TC84100-13 |
Failed | TC84100-13 |
Simple Order Example: Revoking a Mandate
Request
12345678<="urn:schemas-cybersource-com:transaction-data-1.214"> <merchantID>test-merchant</merchantID> <merchantReferenceCode>refnum-1234</merchantReferenceCode> <paymentScheme>bacs</paymentScheme> <mandateID>12345678912345</mandateID> <apPaymentType>STL</apPaymentType> <apRevokeMandateService run="true"/> </>
Response to a Successful Request
12345678910111213141516<:c="urn:schemas-cybersource-com:transaction-data-1.214"> <merchantReferenceCode>refnum-1234</merchantReferenceCode> <requestID>5235442454006004501064</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <apRevokeMandateReply> <reasonCode>100</reasonCode> <mandateID>mandate-3829202</mandateID> <status>REVOKED</status> <responseCode>00016</responseCode> <processorTransactionID>00142308609746028499</processorTransactionID> <dateSigned>20171212</dateSigned> <dateCreated>20171212</dateCreated> <dateRevoked>20190404</dateRevoked> </apRevokeMandateReply> </>