class MangoPay::Dispute
Public Class Methods
# File lib/mangopay/dispute.rb, line 11 def close(dispute_id, idempotency_key = nil) url = url(dispute_id) + "/close/" MangoPay.request(:put, url, {}, {}, idempotency_key) end
# File lib/mangopay/dispute.rb, line 142 def consult_url(document_id) "#{MangoPay.api_path}/dispute-documents/#{document_id}/consult" end
contested_funds
: Money hash see 'Contest' section @ docs.mangopay.com/api-references/disputes/disputes/
# File lib/mangopay/dispute.rb, line 18 def contest(dispute_id, contested_funds) url = url(dispute_id) + "/submit/" MangoPay.request(:put, url, {ContestedFunds: contested_funds}) end
params
: hash; see docs.mangopay.com/api-references/disputes/dispute-documents/
# File lib/mangopay/dispute.rb, line 75 def create_document(dispute_id, params, idempotency_key = nil) url = url(dispute_id) + "/documents/" MangoPay.request(:post, url, params, {}, idempotency_key) end
Creates temporary URLs where each page of a dispute document can be viewed.
@param document_id
ID of the document whose pages to consult @return Array of consults for viewing the dispute document's pages
# File lib/mangopay/dispute.rb, line 138 def create_document_consult(document_id) MangoPay.request(:get, consult_url(document_id), {}, {}) end
Adds the file page (attachment) to the given document.
See docs.mangopay.com/api-references/disputes/dispute-document-pages/ :
-
Document have to be in 'CREATED' Status
-
You can create as many pages as needed
-
Change Status to 'VALIDATION_ASKED' to submit dispute documents
The file_content_base64 param may be:
-
Base64 encoded file content
-
or nil: in this case pass the file path in the next param
# File lib/mangopay/dispute.rb, line 119 def create_document_page(dispute_id, document_id, file_content_base64, file_path = nil, idempotency_key = nil) if file_content_base64.nil? && !file_path.nil? bts = File.open(file_path, 'rb') { |f| f.read } file_content_base64 = Base64.encode64(bts) end # normally it returns 204 HTTP code on success begin url = url(dispute_id) + "/documents/#{document_id}/pages" MangoPay.request(:post, url, {'File' => file_content_base64}, {}, idempotency_key) rescue ResponseError => ex raise ex unless ex.code == '204' end end
params
: hash; see docs.mangopay.com/api-references/disputes/settlement-transfers/
# File lib/mangopay/dispute.rb, line 59 def create_settlement_transfer(repudiation_id, params, idempotency_key = nil) url = "#{MangoPay.api_path}/repudiations/#{repudiation_id}/settlementtransfer/" MangoPay.request(:post, url, params, {}, idempotency_key) end
# File lib/mangopay/dispute.rb, line 80 def fetch_document(document_id) url = "#{MangoPay.api_path}/dispute-documents/#{document_id}" MangoPay.request(:get, url) end
Fetches list of dispute documents:
-
for the particular dispute if
dispute_id
is provided (not nil) -
or for all disputes otherwise.
Optional filters
is a hash accepting following keys:
-
page
,per_page
,sort
: pagination and sorting params (seeMangoPay::HTTPCalls::Fetch::ClassMethods#fetch
) -
filters such as
Type
(e.g. 'REFUND_PROOF') andStatus
(e.g. 'VALIDATED') -
BeforeDate
(timestamp): filters documents with CreationDate before this date -
AfterDate
(timestamp): filters documents with CreationDate after this date
See docs.mangopay.com/api-references/disputes/dispute-documents/
# File lib/mangopay/dispute.rb, line 103 def fetch_documents(dispute_id = nil, filters = {}) url = (dispute_id) ? url(dispute_id) + "/documents/" : "#{MangoPay.api_path}/dispute-documents/" MangoPay.request(:get, url, {}, filters) end
# File lib/mangopay/dispute.rb, line 33 def fetch_for_user(user_id, filters = {}) url = "#{MangoPay.api_path}/users/#{user_id}/disputes" MangoPay.request(:get, url, {}, filters) end
# File lib/mangopay/dispute.rb, line 38 def fetch_for_wallet(wallet_id, filters = {}) url = "#{MangoPay.api_path}/wallets/#{wallet_id}/disputes" MangoPay.request(:get, url, {}, filters) end
# File lib/mangopay/dispute.rb, line 43 def fetch_pending_settlement(filters = {}) url = "#{MangoPay.api_path}/disputes/pendingsettlement" MangoPay.request(:get, url, {}, filters) end
see docs.mangopay.com/api-references/disputes/repudiations/
# File lib/mangopay/dispute.rb, line 53 def fetch_repudiation(repudiation_id, idempotency_key = nil) url = "#{MangoPay.api_path}/repudiations/#{repudiation_id}" MangoPay.request(:get, url, {}, {}, idempotency_key) end
see docs.mangopay.com/api-references/disputes/settlement-transfers/
# File lib/mangopay/dispute.rb, line 65 def fetch_settlement_transfer(transfer_id) url = "#{MangoPay.api_path}/settlements/#{transfer_id}" MangoPay.request(:get, url) end
# File lib/mangopay/dispute.rb, line 23 def resubmit(dispute_id) url = url(dispute_id) + "/submit/" MangoPay.request(:put, url) end
# File lib/mangopay/dispute.rb, line 28 def transactions(dispute_id, filters = {}) url = url(dispute_id) + "/transactions/" MangoPay.request(:get, url, {}, filters) end
params
: hash; see 'Edit' section @ docs.mangopay.com/api-references/disputes/dispute-documents/
# File lib/mangopay/dispute.rb, line 86 def update_document(dispute_id, document_id, params) url = url(dispute_id) + "/documents/#{document_id}" MangoPay.request(:put, url, params) end