We are currently looking at displaying the order level line items – Order Total, Item Total, Total Shipping, Total Tax (which are still passed as part of PaymentDetails).
For the above requirement we are passing all the required details in the SetExpressCheckoutReq.
Please let me know how can we achieve it.
As part of SetExpressCheckoutReq we are passing:
<ebl:PaymentDetails>
<ebl:OrderTotal currencyID="USD">359.94</ebl:OrderTotal>
<ebl:ItemTotal currencyID="USD">309.99</ebl:ItemTotal>
<ebl:ShippingTotal currencyID="USD">49.95</ebl:ShippingTotal>
<ebl:TaxTotal currencyID="USD">0.0</ebl:TaxTotal>
<ebl:OrderDescription>Order Total: 359.94</ebl:OrderDescription>
<ebl:PaymentAction>Order</ebl:PaymentAction>
</ebl:PaymentDetails>
2014-08-05T18:04:20Z
Success
aab008f9d690d
98.0
12194268
EC-4KY406765L816782W
You need to include the node, one for each item. Inside that are child elements for the item details like name, price, qty, etc. which you'll find in the PaymentDetailsItem Type Fields section of the SetExpressCheckout API reference.
Also, keep in mind that you'll need to include the same details in your DoExpressCheckoutPayment request in order for the line item details to show up in the final transaction details at PayPal.
Related
I am targeting the https://api.xero.com/api.xro/2.0/Invoices endpoint, specifying either no invoice or a specific invoice. In both cases I am not receiving the ItemCode, DiscountRate and DiscountAmount components of the LineItems array.
Is there a query string item that will force the missing components to appear? These "Elements for LineItems" components are supposed to be there, assuming I've read the documentation correctly.
I am getting Magento 2 order details by rest order API but the result is showing the same SKU in configured product order item that is creating an issue in SAP integration.
Anyone let me know how can we overwrite Magento 2 rest API code?
You should not need to “overwrite magento 2 rest API code” because what you described is perfectly normal and expected.
In Magento orders, each configurable product creates two sales order line items due to the way that configurable product data is structured in the catalog. One line corresponds to the “parent” catalog product, and one corresponds to the specific variant “child” (simple) product. Both records contain the same SKU value but their product IDs are different.
In order to get all information about the ordered item both of those records could be important, however if you can get by with just the data from the simple product then you could filter your REST request like below:
GET <host>/rest/V1/orders/items?
searchCriteria[filter_groups][0][filters][0][field]=order_id&
searchCriteria[filter_groups][0][filters][0][value]=1&
searchCriteria[filter_groups][1][filters][0][field]=product_type&
searchCriteria[filter_groups][1][filters][0][value]=simple
The PayPal csv report has a column called Item ID.
Other checkout implementations fill this column with a comma separated list of item IDs. How do I go about achieving this with the OmniPay PayPal library?
I'm already supplying the array of items using setItems, but this doesn't seem to have any bearing on that column.
For example: "90,91,84,83".
I'm starting to get the hang of NetSuite but this one has stumped me. I am looking for a way to update the line items on an order from a workflow in NetSuite. From what I can tell it doesn't seem to expose those fields, is there any way around this?
I have a saved search returning all of the transaction line items that I want modified, there is a field on the Sales Order Line Item called "Create Fulfillment Order". It shows up under saved searches as "Create Fulfillment Order Column", but when I add an action to a workflow to set the field value, the only fields that show up are Sales Order fields. Is there any way to access the Sales Order Column fields, since that's really what's being returned by my saved search anyways.
I've looked at the Sub Types defined in the workflow to see if there's one for Sales Order Item or anything but there's not, just Sales Order. Any help would be greatly appreciated, thanks in advance!
There's nothing built-in that will let you access transaction line items from a workflow. You'll need to use SuiteScript to create a custom workflow action. Then you can call that action from your workflow.
Consider the following invoice table with two entries, id 1 and 2:
id, item, date_paid
1, 'apple', ''
2, 'banana', ''
When a payment is made date_paid column needs to be updated.
What is a proper REST verb for this?
POST invoices/1/payments
or
PUT invoices/1/payments
I feel like POST is proper since I am "adding" a payment detail but then again internally I'm actually "updating" a DB row so PUT seems applicable also.
If I understand your example, you have an invoice that was created in your Invoice table at some point in the past. You're now updating said invoice to reflect that a payment was made. That's definitely an update and PUT is the correct verb. Presumably you might also have a Payment table with the actual payment details (amount, payer, etc.). If so, then that's where you would be adding a new payment record. That call would be a POST.