Discussions
Set Pledge Source Code via REST API
5 months ago by Molivouth Boulom
How do we set the source code correctly when creating a pledge using the REST API?
When using the "api/ComboOrder" endpoint, the source code value set does not stick for pledges whereas it does for gifts.
For example:
{
"$type": "Asi.Soa.Commerce.DataContracts.ComboOrderData, Asi.Contracts",
"Order": {
"$type": "Asi.Soa.Commerce.DataContracts.OrderData, Asi.Contracts",
"Lines": {
"$type": "Asi.Soa.Commerce.DataContracts.OrderLineDataCollection, Asi.Contracts",
"$values": [
{
"$type": "Asi.Soa.Fundraising.DataContracts.GiftOrderLineData, Asi.Contracts",
"IsGiftAidExcluded": false,
"IsPledge": true,
"DoNotReceipt": false,
"InvoiceReferenceNumber": 0,
"PledgeWithPaymentInvolved": false,
"Item": {
"$type": "Asi.Soa.Fundraising.DataContracts.GiftItemData, Asi.Contracts",
"ItemId": "GEN"
},
"UnitPrice": {
"$type": "System.Nullable`1[[Asi.Soa.Core.DataContracts.MonetaryAmountData, Asi.Contracts]], mscorlib",
"Amount": 1.00,
"Currency": {
"$type": "Asi.Soa.Core.DataContracts.CurrencyData, Asi.Contracts",
"DecimalPositions": 2
}
},
"SourceCode": "List A"
}
]
},
"SoldToCustomerParty": {
"$type": "Asi.Soa.Commerce.DataContracts.CustomerPartyData, Asi.Contracts",
"Id": "28331"
}
},
"Payments": {
"$type": "Asi.Soa.Commerce.DataContracts.RemittanceDataCollection, Asi.Contracts",
"$values": [
{
"$type": "Asi.Soa.Commerce.DataContracts.RemittanceData, Asi.Contracts",
"PaymentToken": {
"$type": "Asi.Soa.Commerce.DataContracts.AutoPayAccountData, Asi.Contracts",
"PaymentMethodIsReadOnly": false
},
"PaymentMethod": {
"$type": "Asi.Soa.Commerce.DataContracts.PaymentMethodData, Asi.Contracts"
}
}
]
}
}
The end result shows a different source code: "BOOK" instead of "List A" in our example
Note: The source code value is set appropriately when creating gifts.
What are we missing?