public void Test_Idempotency_DisputesRepudiationCreateSettlement() { string key = DateTime.Now.Ticks.ToString(); Sort sort = new Sort(); sort.AddField("CreationDate", SortDirection.desc); var clientDisputes = Api.Disputes.GetAll(new Pagination(1, 100), null, sort); if (clientDisputes == null || clientDisputes.Count == 0) { Assert.Fail("INITIALIZATION FAILURE - cannot test disputes"); } DisputeDTO dispute = clientDisputes.FirstOrDefault(x => x.Status == DisputeStatus.CLOSED && x.DisputeType == DisputeType.NOT_CONTESTABLE); if (dispute == null) { Assert.Fail( "Cannot test creating settlement transfer because there's no closed disputes in the disputes list."); } string repudiationId = Api.Disputes.GetTransactions(dispute.Id, new Pagination(1, 1), null)[0].Id; var repudiation = Api.Disputes.GetRepudiation(repudiationId); SettlementTransferPostDTO post = new SettlementTransferPostDTO(repudiation.AuthorId, new Money { Currency = CurrencyIso.EUR, Amount = 1 }, new Money { Currency = CurrencyIso.EUR, Amount = 0 }); Api.Disputes.CreateSettlementTransfer(key, post, repudiationId); var result = Api.Idempotency.Get(key); Assert.IsInstanceOf <SettlementDTO>(result.Resource); }
public void Test_CreateSettlementTransfer() { DisputeDTO dispute = _clientDisputes.FirstOrDefault(x => x.Status == DisputeStatus.CLOSED && x.DisputeType == DisputeType.NOT_CONTESTABLE); RepudiationDTO repudiation = null; SettlementDTO result = null; if (dispute == null) { Assert.Fail("Cannot test creating settlement transfer because there's no closed disputes in the disputes list."); } try { string repudiationId = Api.Disputes.GetTransactions(dispute.Id, new Pagination(1, 1), null)[0].Id; repudiation = Api.Disputes.GetRepudiation(repudiationId); SettlementTransferPostDTO post = new SettlementTransferPostDTO(repudiation.AuthorId, new Money { Currency = CurrencyIso.EUR, Amount = 1 }, new Money { Currency = CurrencyIso.EUR, Amount = 0 }); result = Api.Disputes.CreateSettlementTransfer(post, repudiationId); } catch (Exception ex) { Assert.Fail(ex.Message); } Assert.IsNotNull(result); }
public async Task Test_GetSettlementTransfer() { DisputeDTO dispute = _clientDisputes.FirstOrDefault(x => x.Status == DisputeStatus.CLOSED && x.DisputeType.HasValue && x.DisputeType.Value == DisputeType.NOT_CONTESTABLE); RepudiationDTO repudiation = null; SettlementDTO transfer = null; if (dispute == null) { Assert.Fail("Cannot test getting settlement transfer because there's no closed and not contestable disputes in the disputes list."); } try { var temp = await Api.Disputes.GetTransactions(dispute.Id, new Pagination(1, 1), null); string repudiationId = temp[0].Id; repudiation = await Api.Disputes.GetRepudiation(repudiationId); SettlementTransferPostDTO post = new SettlementTransferPostDTO(repudiation.AuthorId, new Money { Currency = CurrencyIso.EUR, Amount = 1 }, new Money { Currency = CurrencyIso.EUR, Amount = 0 }); transfer = await Api.Disputes.CreateSettlementTransfer(post, repudiationId); } catch (Exception ex) { Assert.Fail(ex.Message); } Assert.IsNotNull(transfer); SettlementDTO result = null; try { result = await Api.Disputes.GetSettlementTransfer(transfer.Id); } catch (Exception ex) { Assert.Fail(ex.Message); } Assert.IsNotNull(result); Assert.IsInstanceOf <SettlementDTO>(result); Assert.IsNotNull(result.RepudiationId); Assert.AreEqual(result.RepudiationId, repudiation.Id); }
/// <summary>Creates settlement transfer.</summary> /// <param name="idempotencyKey">Idempotency key for this request.</param> /// <param name="settlementTransfer">Settlement transfer.</param> /// <param name="repudiationId">Repudiation identifier.</param> /// <returns>Transfer settlement instance returned from API.</returns> public SettlementDTO CreateSettlementTransfer(String idempotencyKey, SettlementTransferPostDTO settlementTransfer, String repudiationId) { return(this.CreateObject <SettlementDTO, SettlementTransferPostDTO>(idempotencyKey, MethodKey.DisputesRepudiationCreateSettlement, settlementTransfer, repudiationId)); }
/// <summary>Creates settlement transfer.</summary> /// <param name="settlementTransfer">Settlement transfer.</param> /// <param name="repudiationId">Repudiation identifier.</param> /// <returns>Transfer settlement instance returned from API.</returns> public SettlementDTO CreateSettlementTransfer(SettlementTransferPostDTO settlementTransfer, String repudiationId) { return(CreateSettlementTransfer(null, settlementTransfer, repudiationId)); }
/// <summary>Creates settlement transfer.</summary> /// <param name="settlementTransfer">Settlement transfer.</param> /// <param name="repudiationId">Repudiation identifier.</param> /// <returns>Transfer settlement instance returned from API.</returns> public async Task <SettlementDTO> CreateSettlementTransfer(SettlementTransferPostDTO settlementTransfer, String repudiationId) { return(await CreateSettlementTransfer(null, settlementTransfer, repudiationId)); }
/// <summary>Creates settlement transfer.</summary> /// <param name="idempotencyKey">Idempotency key for this request.</param> /// <param name="settlementTransfer">Settlement transfer.</param> /// <param name="repudiationId">Repudiation identifier.</param> /// <returns>Transfer settlement instance returned from API.</returns> public async Task <SettlementDTO> CreateSettlementTransferAsync(String idempotencyKey, SettlementTransferPostDTO settlementTransfer, String repudiationId) { return(await this.CreateObjectAsync <SettlementDTO, SettlementTransferPostDTO>(idempotencyKey, MethodKey.DisputesRepudiationCreateSettlement, settlementTransfer, repudiationId)); }