Back to Collection Items
var
begin
json.UpdateString('updates[0].giftCommitmentId','<SFDC_GIFT_COMMITMENT_ID>');json.UpdateString('updates[0].paymentInstrument.type','credit card');json.UpdateString('updates[0].paymentInstrument.accountHolderName','test donor 1');json.UpdateString('updates[0].paymentInstrument.expiryMonth','10');json.UpdateString('updates[0].paymentInstrument.expiryYear','2026');json.UpdateString('updates[0].paymentInstrument.last4','4585');json.UpdateString('updates[0].paymentInstrument.cardBrand','visa');json.UpdateString('updates[0].paymentInstrument.bankName','chase');json.UpdateString('updates[0].paymentInstrument.digitalWalletProvider','apple pay');json.UpdateString('updates[0].paymentInstrument.bankAccountHolderType','primary');json.UpdateString('updates[0].paymentInstrument.bankAccountType','checking');json.UpdateString('updates[0].paymentInstrument.bankAccountNumber','123456');json.UpdateString('updates[0].paymentInstrument.bankCode','HBUK');json.UpdateString('updates[0].paymentInstrument.gatewayName','stripe');json.UpdateString('updates[0].paymentInstrument.processorName','classy');json.UpdateString('updates[0].paymentInstrument.processorPaymentReference','string');json.UpdateString('updates[0].paymentInstrument.gatewayReference','string');json.UpdateString('updates[1].giftCommitmentId','<SFDC_GIFT_COMMITMENT_ID>');json.UpdateString('updates[1].paymentInstrument.type','credit card');json.UpdateString('updates[1].paymentInstrument.accountHolderName','test donor 2');json.UpdateString('updates[1].paymentInstrument.expiryMonth','10');json.UpdateString('updates[1].paymentInstrument.expiryYear','2026');json.UpdateString('updates[1].paymentInstrument.last4','4585');json.UpdateString('updates[1].paymentInstrument.cardBrand','visa');json.UpdateString('updates[1].paymentInstrument.bankName','chase');json.UpdateString('updates[1].paymentInstrument.digitalWalletProvider','apple pay');json.UpdateString('updates[1].paymentInstrument.bankAccountHolderType','primary');json.UpdateString('updates[1].paymentInstrument.bankAccountType','checking');json.UpdateString('updates[1].paymentInstrument.bankAccountNumber','123456');json.UpdateString('updates[1].paymentInstrument.bankCode','HBUK');json.UpdateString('updates[1].paymentInstrument.gatewayName','stripe');json.UpdateString('updates[1].paymentInstrument.processorName','test processor');json.UpdateString('updates[1].paymentInstrument.processorPaymentReference','string');json.UpdateString('updates[1].paymentInstrument.gatewayReference','string');http.AuthToken := '<access_token>';resp.GetBodySb(sbResponseBody.ControlInterface);jResp.LoadSb(sbResponseBody.ControlInterface);jResp.EmitCompact := 0;jResp.I := i;success := jResp.BoolOf('details[i].success');Href := jResp.StringOf('details[i].links.giftcommitment.href');Id := jResp.StringOf('details[i].links.giftcommitment.id');PaymentinstrumentHref := jResp.StringOf('details[i].links.paymentinstrument.href');PaymentinstrumentId := jResp.StringOf('details[i].links.paymentinstrument.id');i := i + 1;
Curl Command
curl -X POST
-H "Authorization: Bearer <access_token>"
-d '{
"updates": [
{
"giftCommitmentId": "<SFDC_GIFT_COMMITMENT_ID>",
"paymentInstrument": {
"type": "credit card",
"accountHolderName": "test donor 1",
"expiryMonth": "10",
"expiryYear": "2026",
"last4": "4585",
"cardBrand": "visa",
"bankName": "chase",
"digitalWalletProvider": "apple pay",
"bankAccountHolderType": "primary",
"bankAccountType": "checking",
"bankAccountNumber": "123456",
"bankCode": "HBUK",
"gatewayName": "stripe",
"processorName": "classy",
"processorPaymentReference": "string",
"gatewayReference": "string"
}
},
{
"giftCommitmentId": "<SFDC_GIFT_COMMITMENT_ID>",
"paymentInstrument": {
"type": "credit card",
"accountHolderName": "test donor 2",
"expiryMonth": "10",
"expiryYear": "2026",
"last4": "4585",
"cardBrand": "visa",
"bankName": "chase",
"digitalWalletProvider": "apple pay",
"bankAccountHolderType": "primary",
"bankAccountType": "checking",
"bankAccountNumber": "123456",
"bankCode": "HBUK",
"gatewayName": "stripe",
"processorName": "test processor",
"processorPaymentReference": "string",
"gatewayReference": "string"
}
}
]
}'
https://domain.com/services/data/v{{version}}/connect/fundraising/commitments/payment-updates
Postman Collection Item JSON
{
"name": "Update Commitment Payments",
"request": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"updates\": [\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor 1\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"classy\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n },\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor 2\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"test processor\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/connect/fundraising/commitments/payment-updates",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"connect",
"fundraising",
"commitments",
"payment-updates"
]
},
"description": "Update the future payment instrument metadata for active gift commitments.\n\n## Required Attributes:\n\n- giftCommitmentId\n \n- paymentInstrument.type"
},
"response": [
{
"name": "Status201-UpdateCommitmentSuccess",
"originalRequest": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"updates\": [\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor 1\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"classy\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n },\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor 2\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"test processor\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/connect/fundraising/commitments/payment-updates",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"connect",
"fundraising",
"commitments",
"payment-updates"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": ""
}
],
"cookie": [
],
"body": "{\n \"successes\": 2,\n \"failures\": 0,\n \"notProcessed\": 0,\n \"details\": [\n {\n \"success\": true,\n \"links\": {\n \"giftcommitment\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_GIFT_COMMITMENT_ID>\",\n \"id\": \"<SFDC_GIFT_COMMITMENT_ID>\"\n },\n \"paymentinstrument\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_PAYMENT_INSTRUMENT_ID>\",\n \"id\": \"<SFDC_PAYMENT_INSTRUMENT_ID>\"\n }\n }\n },\n {\n \"success\": true,\n \"links\": {\n \"giftcommitment\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_GIFT_COMMITMENT_ID>\",\n \"id\": \"<SFDC_GIFT_COMMITMENT_ID>\"\n },\n \"paymentinstrument\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_PAYMENT_INSTRUMENT_ID>\",\n \"id\": \"<SFDC_PAYMENT_INSTRUMENT_ID>\"\n }\n }\n }\n ]\n}"
},
{
"name": "Status200-UpdateCommitmentRequestValidationFailure",
"originalRequest": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"updates\": [\n {\n \"giftCommitmentId\": \"INVALID COMMITMENT ID\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor 1\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"classy\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n },\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor 2\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"test processor\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/connect/fundraising/commitments/payment-updates",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"connect",
"fundraising",
"commitments",
"payment-updates"
]
}
},
"status": "Created",
"code": 201,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": ""
}
],
"cookie": [
],
"body": "{\n \"successes\": 1,\n \"failures\": 1,\n \"notProcessed\": 0,\n \"details\": [\n {\n \"success\": false,\n \"errors\": {\n \"field\": \"id\",\n \"message\": \"<invalid id message>\"\n }\n },\n {\n \"success\": true,\n \"links\": {\n \"giftcommitment\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_GIFT_COMMITMENT_ID>\",\n \"id\": \"<SFDC_GIFT_COMMITMENT_ID>\"\n },\n \"paymentinstrument\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_PAYMENT_INSTRUMENT_ID>\",\n \"id\": \"<SFDC_PAYMENT_INSTRUMENT_ID>\"\n }\n }\n }\n ]\n}"
},
{
"name": "Status200-UpdateCommitmentDatabaseFailure",
"originalRequest": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"updates\": [\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"classy\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n },\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"google pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"test processor\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/connect/fundraising/commitments/payment-updates",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"connect",
"fundraising",
"commitments",
"payment-updates"
]
}
},
"status": "Created",
"code": 201,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": ""
}
],
"cookie": [
],
"body": "// This is a scenario where there is a validation rule on the Payment Instrument object requiring that the digitalWalletProvider cannot be \"Apple Pay\". One database error occurs for the 10.50 cover amount, causing the other two to be rolled back with success of false and no record links.\n{\n \"successes\": 0,\n \"failures\": 1,\n \"notProcessed\": 1,\n \"details\": [\n {\n \"success\": false,\n \"errors\": {\n \"message\": \"<validation_rule_error_message>\"\n }\n },\n {\n \"success\": false\n }\n ]\n}"
},
{
"name": "Status201-UpdateCommitmentExternalIds",
"originalRequest": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"updates\": [\n {\n \"giftCommitment\": {\n \"externalId\": {\n \"fieldName\": \"<EXTERNAL_ID_FIELD_NAME>\",\n \"fieldValue\": \"<EXTERNAL_ID_FIELD_VALUE>\"\n }\n },\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"david chavez\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"classy\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n },\n {\n \"giftCommitment\": {\n \"externalId\": {\n \"fieldName\": \"<EXTERNAL_ID_FIELD_NAME>\",\n \"fieldValue\": \"<EXTERNAL_ID_FIELD_VALUE>\"\n }\n },\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"luke smith\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"test processor\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/connect/fundraising/commitments/payment-updates",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"connect",
"fundraising",
"commitments",
"payment-updates"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": ""
}
],
"cookie": [
],
"body": "{\n \"successes\": 2,\n \"failures\": 0,\n \"notProcessed\": 0,\n \"details\": [\n {\n \"success\": true,\n \"links\": {\n \"giftcommitment\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_GIFT_COMMITMENT_ID>\",\n \"id\": \"<SFDC_GIFT_COMMITMENT_ID>\"\n },\n \"paymentinstrument\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_PAYMENT_INSTRUMENT_ID>\",\n \"id\": \"<SFDC_PAYMENT_INSTRUMENT_ID>\"\n }\n }\n },\n {\n \"success\": true,\n \"links\": {\n \"giftcommitment\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_GIFT_COMMITMENT_ID>\",\n \"id\": \"<SFDC_GIFT_COMMITMENT_ID>\"\n },\n \"paymentinstrument\": {\n \"href\": \"/services/data/vXX.X/sobjects/sObject/<SFDC_PAYMENT_INSTRUMENT_ID>\",\n \"id\": \"<SFDC_PAYMENT_INSTRUMENT_ID>\"\n }\n }\n }\n ]\n}"
},
{
"name": "Status400-BadRequestError",
"originalRequest": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"updates\": [\n {\n \"giftCommitmentId\": \"<SFDC_GIFT_COMMITMENT_ID>\",\n \"paymentInstrument\": {\n \"type\": \"credit card\",\n \"accountHolderName\": \"test donor\",\n \"expiryMonth\": \"10\",\n \"expiryYear\": \"2026\",\n \"last4\": \"4585\",\n \"cardBrand\": \"visa\",\n \"bankName\": \"chase\",\n \"digitalWalletProvider\": \"apple pay\",\n \"bankAccountHolderType\": \"primary\",\n \"bankAccountType\": \"checking\",\n \"bankAccountNumber\": \"123456\",\n \"bankCode\": \"HBUK\",\n \"gatewayName\": \"stripe\",\n \"processorName\": \"test processor\",\n \"processorPaymentReference\": \"string\",\n \"gatewayReference\": \"string\"\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/connect/fundraising/commitments/payment-updates",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"connect",
"fundraising",
"commitments",
"payment-updates"
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": ""
}
],
"cookie": [
],
"body": " // Even if the JSON request is valid, this is an example of a 400 error code that will be returned if duplicate matching rules are not active. Any non 200 error code would have a similar response structure.\n {\n \"errorCode\": \"UNKNOWN_EXCEPTION\",\n \"message\": \"Provide active duplicate matching rules on Account and Person Account for donor matching. -- industries.fundraisingops.connect.impl.validator.ValidatorUtil.validateMatchingMethod(ValidatorUtil.java:103)\"\n }"
}
]
}