Приемете плащане чрез Shopify API

В админ зоната на Shopify има бутон за всяка поръчка за „Приемане на плащане“. Има ли еквивалентно действие, което може да се извърши чрез API?


person alnorth29    schedule 22.08.2012    source източник


Отговори (2)


да Можете да създадете транзакция и да вземете сумата, която е била предварително разрешена.

 ShopifyAPI::Transaction.create({:order_id => order.id, :kind => 'capture'})
person David Lazar    schedule 22.08.2012
comment
Ето документацията за транзакции: api.shopify.com/transactions.html - person David Underwood; 23.08.2012

Да, уверете се, че оригиналната поръчка е създадена чрез приложния програмен интерфейс (API) и има състояние „предстоящо“, вид на транзакцията „упълномощаване“ и състояние на транзакцията „успешно“. След това, когато заснемете плащането, това само променя финансовото състояние. Не можете просто да промените стойността на финансовото състояние на поръчката, без да заснемете транзакцията.

Така че това е оригиналната заявка за създаване на поръчка с помощта на API:

POST /admin/orders.json

{
   "financial_status": "pending",
   "fulfillment_status": "fulfilled",
   "transactions": [{
      "amount": "21",
      "kind": "authorization",
      "gateway": "Gateway",
      "status": "success",
      "source_name": "My API"
   }]
}

И след това, за да заснемете транзакцията, направете следното:

POST /admin/orders/{order_id}/transactions.json

{
  "transaction": {
    "kind": "capture"
  }
}

Уверете се, че имате активирани разрешения за запис за поръчки на вашия API: https://redeeem.myshopify.com/admin/apps/private

person kaleazy    schedule 26.04.2018