Tiquo
Integrations OverviewAirtableAsanaSlackGoogle AnalyticsMetabaseMixpanelPendoSegmentTableau (PAT)ActiveCampaignBrevoEmarsys Core API (WSSE)EventbriteFacebookGoogle AdsHighLevelInstagramKlaviyoMailchimpMailgunMicrosoft AdsSendGridTwitter (v2)HubSpotNotionAcuity SchedulingAirtable (Personal Access Token)BasecampCal.com (v2)CalendlyClickUpCodaConfluence Data CenterExpensifyGoogle CalendarGoogle SheetHarvestLinearMicrosoft Power BIMicrosoft TeamsMindbodyMondayOpenAIPerplexityPingboardPivotal TrackerProductboardQuickbaseServiceM8ServiceNowTeamworkTickTickTimelyTodoistTrafftTrelloWrikefal.aixAIZendeskIntercomAircall (OAuth)DixaFreshDeskFreshserviceFrontPlainRingCentralZoho DeskBrazeDialpadGoogleMicrosoftOutlookPodiumSednaSharePoint OnlineTwilioWhatsApp BusinessZoho MailBambooHRADPDeelEmployment HeroGustoHibob Service UserNamelyOracle Fusion Cloud (HCM)PaychexPayfitPaylocityPersonioRipplingSAP SuccessFactorsSage HRTSheetsUKG ProUKG ReadyWorkdayZoho PeopleQuickBooksBuildiumExact OnlineFreshBooksIntuitNetSuitePennylaneSageSage IntacctTwinfieldUnanetWave AccountingXeroZoho BooksSalesforceAffinityAttioCopperFreshsalesGainsight CCInsightlyKustomerMedalliaPipedriveTwenty CRMZoomInfoApaleoMewsMicrosoft Business CentralOdooSAP ConcurZuoraAcceloCoupa CompassZoho InvoiceAnrokAvalaraDocuSignDropbox SignPandadocSignNowLinkedInSplitwiseTikTok AdsJotformQualtricsRefinerTypeformShopifyCin7 CoreGoogle MapsRingoverListrakRydooTalentLMSApple Business ManagerCrunchbaseRocketReachOcean.ioFreepikEnergy Performance Certificates (Gov.UK)JustworksGristSAP S/4HANA Cloud3CX8x8Adobe CommerceBirdCloudbedsConstant ContactBufferCustomer.ioCrispFreeAgentGreenhouseMeta Marketing APIMollienocrm.ioOomnitzaDigitsPylonSage 200ShopwareAnvilShippoEasyPostAltrataMicrosoft PeopleMicrosoft IntuneCloudTalkGoogle FormsMaximizerMicrosoft PlannerSalesmsgSellercloudTallyTimifyUpsalesCleverReachHeymarketMailjetPleoProvenExpertTelegramToggl TrackASSA ABLOY Vingcard VisionlineASSA ABLOY Vingcard VostioASSA ABLOY TESA HotelASSA ABLOY SMARTairSalto KSSalto Space OnlineDormakabaOmnitecHotekTT LockWebLockISEOKleverKeyAperioISONASHIDSouthcoThird MillenniumSTidAxis CommunicationsBooking.comExpediaHotels.comAirbnbGoogle HotelsTripadvisorAgodaHotelbedsTravelgateXHyperguestRoibosReconlineTraviaOpenGDS.comMG BedbankDidatravelHotelREZHRSHotelnetworkGetaroomWinkBookeasyVRBOInntopiaHookusbookusHipcampSpot2niteCamping VisionMinistry of VillasTrip.comTravelokaTiketMakeMyTripHoteripKlookeDreamsSzallasEmerging Travel GroupCheck24Bed-and-Breakfast.itWorld2Meet (W2M)Ctoutvert / SecureholidayDespegarPriceTravelRoombeastMitchell CorpHRS AustraliaResonlineHostelworldHostelhopTablet MichelinMr & Mrs SmithHopperHotel TonightPitchupMoveriiLocalOTAAlaricBooknpayCultbookingGuestTractionLevartWeSpeakMake.comZapierPricelabsPricepointRategenieElastic HotelRoom Price GenieTurbosuiteUber EatsDeliverooDoorDashBolt Food
API and AuthenticationCustomer API

Payment Methods

List and save payment methods for the authenticated customer

Payment Methods

The payment-method endpoints let a customer list saved cards and direct-debit methods, create a Stripe SetupIntent, and persist the method after Stripe confirms it. All three operations require a linked customer profile.

These responses use top-level fields rather than the usual Customer API data envelope.

List Payment Methods

GET /payment-methods
curl "https://edge.tiquo.app/api/client/v1/payment-methods" \
  -H "Authorization: Bearer eyJhbGciOiJSUzI1NiJ9..."
{
  "success": true,
  "paymentMethods": [
    {
      "id": "pm_123",
      "kind": "card",
      "label": "Visa ending in 4242",
      "brand": "visa",
      "last4": "4242",
      "expMonth": 12,
      "expYear": 2029,
      "cardUseType": "personal",
      "isDefault": true
    }
  ]
}
FieldTypeDescription
idstringStripe payment-method ID or Tiquo saved-card identity
kindstring or omittedcard or direct_debit
labelstring or omittedDisplay-safe payment-method label
brandstring or omittedCard brand
last4string or omittedLast four card or account digits
expMonthinteger or omittedCard expiry month
expYearinteger or omittedCard expiry year
bankNamestring or omittedBank name for supported direct-debit methods
cardUseTypestring or omittedbusiness or personal for cards
isDefaultbooleanWhether this is the customer's default payment method

Start a Setup

POST /payment-methods/setup

The optional paymentMethodTypes array accepts card and direct_debit. When it is omitted or contains no supported value, the endpoint starts a card-only setup.

curl -X POST "https://edge.tiquo.app/api/client/v1/payment-methods/setup" \
  -H "Authorization: Bearer eyJhbGciOiJSUzI1NiJ9..." \
  -H "Content-Type: application/json" \
  -d '{"paymentMethodTypes":["card"]}'
{
  "success": true,
  "setupIntentId": "seti_123",
  "clientSecret": "seti_123_secret_..."
}

Use the clientSecret with Stripe's client SDK to collect and confirm the payment details. Tiquo does not receive raw card or bank-account details.

Finish a Setup

After Stripe reports that the SetupIntent succeeded, send its ID to:

POST /payment-methods/confirm
FieldTypeRequiredDescription
setupIntentIdstringYesSetupIntent created by /payment-methods/setup
cardUseTypestringNobusiness or personal; cards default to personal
setAsDefaultPaymentMethodbooleanNoMake this method the default. The first saved method becomes the default automatically.
curl -X POST "https://edge.tiquo.app/api/client/v1/payment-methods/confirm" \
  -H "Authorization: Bearer eyJhbGciOiJSUzI1NiJ9..." \
  -H "Content-Type: application/json" \
  -d '{
    "setupIntentId": "seti_123",
    "cardUseType": "personal",
    "setAsDefaultPaymentMethod": true
  }'
{
  "success": true,
  "paymentMethod": {
    "id": "pm_123",
    "kind": "card",
    "label": "Visa ending in 4242",
    "brand": "visa",
    "last4": "4242",
    "expMonth": 12,
    "expYear": 2029,
    "cardUseType": "personal",
    "isDefault": true
  }
}

The endpoint rejects a SetupIntent that is incomplete, belongs to another customer, or was not created by this customer payment-method flow.

Errors

StatusDescription
400The payment operation could not be completed or setupIntentId is missing or invalid
401Missing, invalid, or expired access token
403No customer profile is linked to the authenticated account
500Internal server error

Sur cette page