Update a Mandate
On This Page
Updating a mandate enables you to change the customer information in a pre-existing
mandate. All possible variables of a customer's information that can be updated are
listed in the optional fields list. See Optional Fields for Updating a Mandate.
Updates to existing mandates are limited to this information:
- Customer's country:billTo_country
- Customer's first name:billTo_firstName
- Customer's last name:billTo_lastName
- Customer's street address:billTo_street1
To make any other changes to a mandate, you must revoke the existing
mandate and create a new mandate with the new information. See Revoke a Mandate.
After the update mandate status becomes active, you can submit a direct debit with the
same mandate ID as the original mandate.
Endpoints
Set the
apUpdateMandateService_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 update mandate service responds with one of these statuses in the
apUpdateMandateReply_status
field:- Active: the update mandate request is accepted and processed.
- Failed: the update mandate request is not accepted.
The update mandate service also responds with a reason code in the
apUpdateMandateReply_reasonCode
field. For more
information about reason codes, see the Reason Codes for Bacs Direct Debits for the Simple Order API.Required Fields for Updating a Mandate
These are the minimum required fields to update a mandate. To update specific variables
of a customer's information, use one or more fields from the optional fields list. See
Optional Fields for Updating a Mandate.
- Set to.STL
- Set totrue.
- mandateID
- Set to.bacs
Optional Fields for Updating a Mandate
Test Triggers for Updating 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 an update mandate request, and set the
merchantReferenceCode
field to a value listed in the
Trigger Value column. The Cybersource
response status is returned in
the apUpdateMandateReply_status
field.Cybersource Response Status | Trigger Value |
---|---|
Pending | Any value except
TC86000-1 |
Failed | TC86000-1 |
Simple Order Example: Updating a Mandate
Request
This example request includes optional fields to update the customer's first name, last
name, and country.
12345678910111213<="urn:schemas-cybersource-com:transaction-data-1.214"> <merchantID>test-merchant</merchantID> <merchantReferenceCode>refnum-1234</merchantReferenceCode> <paymentScheme>bacs</paymentScheme> <mandateID>12345678912345</mandateID> <billTo> <firstName>John</firstName> <lastName>Smith</lastName> <country>UK</country> </billTo> <apPaymentType>STL</apPaymentType> <apUpdateMandateService run="true"/> </>
Response to a Successful Request
1234567891011121314<:c="urn:schemas-cybersource-com:transaction-data-1.214"> <merchantReferenceCode>refnum-1234</merchantReferenceCode> <requestID>5235439239636004301064</requestID> <decision>PENDING</decision> <reasonCode>100</reasonCode> <apUpdateMandateReply> <reasonCode>100</reasonCode> <mandateID>mandate-3829202</mandateID> <status>ACTIVE</status> <responseCode>00001</responseCode> <processorTransactionID>26025864-9558-487a-bf83-da960b1bacfb </processorTransactionID> </apUpdateMandateReply> </>