...but it is in the code
Well spotted tangent
I'm sure there was a reason for this behaviour but it does seem very odd!
All my calls to Stripe are in a dedicated module and this has now been modified to get around this issue. The headers are cloned to create a deep copy immediately before the API calls and therefore the original headers don't get clobbered. I've done this with all calls in case any future script makes multiple calls for any reason.
use HTTP::Tiny;
use Clone qw(clone);
my $http = HTTP::Tiny->new;
my $headers = {
'headers' => {
'Authorization' => 'Bearer ' . $Site::Variables::stripe_secret
+,
},
'agent' => 'Wayfinder/v3.0',
};
# for each API call
my $head = clone($headers);
my $response = $http->post_form($stripe_api_url, $payload, $head);